[Bug optimization/15344] New: ICE in loop-iv.c when unswitching loops

steven at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun May 9 14:49:00 GMT 2004


This probably happens on mainline too, but I only tried tree-ssa. 
 
======================================== 
typedef union tree_node *tree; 
 
struct vec_t { tree a[10]; }; 
 
union tree_node { struct vec_t vec; }; 
 
static void 
bug (tree accesses, int n_bases) 
{ 
  int i; 
 
  for (i = 0; i < n_bases; i++) 
    { 
      tree access = accesses ? accesses->vec.a[i] : (tree) ((void *)0); 
 
      bar (); 
 
      if (access) 
        foo (); 
    } 
} 
======================================== 
 
$ ./cc1 -O -funswitch-loops test.i 
 bug 
 
test.i: In function `bug': 
test.i:21: internal compiler error: in canon_condition, at loop-iv.c:1413 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

-- 
           Summary: ICE in loop-iv.c when unswitching loops
           Product: gcc
           Version: tree-ssa
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code, RTL
          Severity: critical
          Priority: P2
         Component: optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: steven at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15344



More information about the Gcc-bugs mailing list