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 rtl-optimization/17513] New: ICE: verify_flow_info failed after gcse


$ gcc --version 
gcc (GCC) 4.0.0 20040915 (experimental)  
Copyright (C) 2004 Free Software Foundation, Inc. 
This is free software; see the source for copying conditions.  There is NO 
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
 
$ cat t.c 
typedef unsigned char uint8; 
typedef unsigned int uint32; 
 
uint32 marker = 0; 
uint8 *buff = 0; 
uint32 bsize = 0; 
 
extern int foo (void); 
 
uint32 
bar (void) 
{ 
  int len, d; 
 
  for (;;) 
    { 
      if (foo () == 0) 
        return (0); 
 
      switch (marker) 
        { 
        case 0xfe: 
          { 
            len |= (*buff++); 
            bsize -= 2; 
 
            while (len > 0) 
              { 
                d = *buff++; 
                len--; 
              } 
          } 
          break; 
        default: 
          break; 
        } 
    } 
} 
 
$ gcc -O2 t.c 
t.c: In function `bar': 
t.c:38: error: Wrong amount of branch edges after unconditional jump 0 
t.c:38: internal compiler error: verify_flow_info failed 
 
Happens on at least amd64

-- 
           Summary: ICE: verify_flow_info failed after gcse
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P2
         Component: rtl-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=17513


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