Bug 14433

Summary: [tree-ssa] ICE, seg fault
Product: gcc Reporter: Erik Schnetter <schnetter>
Component: targetAssignee: Not yet assigned to anyone <unassigned>
Status: RESOLVED FIXED    
Severity: normal CC: gcc-bugs, reichelt
Priority: P2 Keywords: ice-on-valid-code
Version: tree-ssa   
Target Milestone: tree-ssa   
Host: i686-pc-linux-gnu Target: i686-pc-linux-gnu
Build: i686-pc-linux-gnu Known to work: 3.4.0 4.0.0
Known to fail: Last reconfirmed: 2004-03-05 10:36:07
Attachments: failing source code

Description Erik Schnetter 2004-03-04 16:30:36 UTC
When compiling the attached C code with optimisation, I get an ICE: 
 
$ /home/eschnett/gcc-3.5-tree-ssa/bin/gcc -v 
Reading specs 
from /home/eschnett/gcc-3.5-tree-ssa/lib/gcc/i686-pc-linux-gnu/3.5-tree-ssa/specs 
Configured with: ../gcc/configure --prefix=/home/eschnett/gcc-3.5-tree-ssa 
--enable-languages=c,c++,f95 
Thread model: posix 
gcc version 3.5-tree-ssa 20040304 (merged 20040227) 
 
$ /home/eschnett/gcc-3.5-tree-ssa/bin/gcc -DCARPET_INT -DCARPET_REAL 
-DCARPET_COMPLEX -march=pentium3 -malign-double -m128bit-long-double -g3 
-gdwarf-2 -O3 -funroll-loops -Wall -Wpointer-arith -Wbad-function-cast 
-Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-declarations 
simpleexcision.i -c 
In file included 
from /home/eschnett/Calpha/Cactus/configs/einstein-gfortran/build/BAM_Elliptic/simpleexcision.c:8: 
/home/eschnett/Calpha/Cactus/arrangements/AEIThorns/BAM_Elliptic/src/bbmg.h:44: 
warning: function declaration isn't a prototype 
/home/eschnett/Calpha/Cactus/configs/einstein-gfortran/build/BAM_Elliptic/simpleexcision.c: 
In function `iniboundmask': 
/home/eschnett/Calpha/Cactus/configs/einstein-gfortran/build/BAM_Elliptic/simpleexcision.c:63: 
internal compiler error: Segmentation fault
Comment 1 Erik Schnetter 2004-03-04 16:56:55 UTC
Created attachment 5859 [details]
failing source code
Comment 2 Volker Reichelt 2004-03-05 10:36:06 UTC
Reduced testcase that segfaults when compiled with "-O2 -march=i686"

=========================
int i;

void foo(int *p)
{
  i=0;
  if (*p) i=1;
}
=========================
Comment 3 Andrew Pinski 2004-03-05 15:19:54 UTC
This is almost definitely a RTL problem.
Comment 4 Volker Reichelt 2004-03-12 09:36:28 UTC
The problem disappeared today.