This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/23320] New: ICE in in base_addr_differ_p, at tree-data-ref.c:430


This is blocking the GCC in SPEC2000 from building on SUSE's AMD64 test boxes. 
 
=================================================== 
extern int foo (unsigned short *x); 
 
static int __attribute__((noinline)) 
foo2 (x, sc) 
     unsigned short *x; 
     int sc; 
{ 
  return foo (x); 
} 
 
void 
euifrac (unsigned short *x, unsigned int *i, unsigned short *frac) 
{ 
  unsigned int ll; 
  unsigned short xi[(6 +3)]; 
  int j, k; 
 
  foo (xi); 
  k = (int) xi[1] - ((0x3fff) - 1); 
  if (k > 32) 
    { 
      *i = ~(0L); 
      foo (xi); 
    } 
  else if (k > 16) 
    { 
      j = k - ((k >> 4) << 4); 
      foo2 (xi, j); 
      ll = xi[2]; 
      k -= j; 
      do 
        { 
          int i; 
          register unsigned short *p; 
          register unsigned short *x = xi; 
 
          p = x + 2; 
          x += 2 + 1; 
 
          for (i = 2; i < (6 +3) - 1; i++) 
            *p++ = *x++; 
 
          *p = 0; 
 
          ll = (ll << 16) | xi[2]; 
        } 
      while ((k -= 16) > 0); 
      *i = ll; 
    } 
 
  foo (xi); 
  foo2 (xi, *frac); 
} 
=================================================== 
 
$ ./cc1 -O3 -ftree-loop-linear t.c 
 foo2 euifrac 
Analyzing compilation unitPerforming intraprocedural optimizations 
Assembling functions: 
 foo2 euifrac 
t.c: In function 'euifrac': 
t.c:13: internal compiler error: in base_addr_differ_p, at tree-data-ref.c:430 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See <URL:http://gcc.gnu.org/bugs.html> for instructions. 
$ ./cc1 --version 
GNU C version 4.1.0 20050810 (experimental) (x86_64-unknown-linux-gnu) 
        compiled by GNU C version 3.3.4 (pre 3.3.5 20040809). 
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 
$

-- 
           Summary: ICE in in base_addr_differ_p, at tree-data-ref.c:430
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P2
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: steven at gcc dot gnu dot org
                CC: dberlin at gcc dot gnu dot org,gcc-bugs at gcc dot gnu
                    dot org


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]