On Fri, Apr 22, 2005 at 10:26:25AM -0400, Kazu Hirata wrote: > Hi Rainer and Steve, > > > | 4.1.0 20050419 (experimental) (i386-pc-solaris2.10) GCC error: | > > | in set_value_range, at tree-vrp.c:124 | > > | Error detected at sem_intr.adb:437:1 | > > There seem to be several ways to get to this ICE. set_value_range is > used in many places in tree-vrp.c. I'll try to take a look at these > in the next few days. >
I attached a cutdown test case of cher2k.f for your use with this bug. I don't know if you fortran or not, but I can assure that this minimum test case is a very common Fortran construct. One other thing to keep in mind, this only happens with -O2. -- Steve
SUBROUTINE CHER2K(N, BETA, C, LDC) INTEGER I, J, N, LDC REAL BETA COMPLEX C(LDC,*), ZERO PARAMETER (ZERO = (0.0E+0, 0.0E+0)) IF (BETA .EQ. REAL(ZERO)) THEN DO 20, J = 1, N DO 10, I = 1, J C(I,J) = ZERO 10 CONTINUE 20 CONTINUE ELSE DO 40, J = 1, N DO 30, I = 1, J - 1 C(I,J) = BETA * C(I,J) 30 CONTINUE 40 CONTINUE END IF END