Hi,

the following yields an ICE with 4.0.1, 4.0.2 and a recent 4.1 branch (but in a
different location) if compiled at -O3. Compiles at -O2 and at -O3 with gcc
3.3.4:

---------------------------------------
static float rgam;
extern void *jmp(void *);

void drotmg(float d1) {
void *labels[] = { &&L170, &&L180, 0 };

  for(;;) {
    goto *jmp(labels);

    if (d1 <= rgam)
      goto L170;

L170:
    if (d1 <= rgam)
      goto L170;
  }

L180:
  goto L170;
}
---------------------------------------


-- 
           Summary: [Regression 4.0/4.1] ICE : in compensate_edge, at reg-
                    stack.c:2795
           Product: gcc
           Version: 4.0.1
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: jv244 at cam dot ac dot uk
  GCC host triplet: Linux-i686


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

Reply via email to