GNU Fortran fails on powerpc-linux with "-O2 -ftree-loop-linear" with an ICE
for this testcase, minimized from swim.f in SPEC CPU2000:

      SUBROUTINE BUG
      INTEGER I, J, M
      REAL V
      COMMON  A(100,100), B(100,100), M, V
      DO 200 I = 1, M
        DO 100 J = 1, M
          V = V + A(I,J)
 100    CONTINUE
        B(I,I) = B(I,I) * I
 200  CONTINUE
      STOP
      END

The output is:

elm3b11% /opt/gcc-nightly/trunk/bin/gfortran -c -O2 -ftree-loop-linear bug.f
bug.f: In function ‘bug’:
bug.f:1: internal compiler error: in execute_todo, at passes.c:714
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

A regression hunt identified this patch:

    http://gcc.gnu.org/viewcvs?view=rev&rev=113862

    r113862 | spop | 2006-05-17 14:25:59 +0000 (Wed, 17 May 2006)

The same patch also introduces memory exhaustion failures when compiling equake
or ammp from SPEC CPU2000 on powerpc64-linux with "-O2 -ftree-loop-linear" and
either -m32 or -m64, and for applu with those options and -m64.  I don't have a
minimized testcase for any of those.


-- 
           Summary: ICE in execute_todo with -O2 -ftree-loop-linear
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: janis at gcc dot gnu dot org
GCC target triplet: powerpc-linux


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

Reply via email to