This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/30562] [4.3 Regression] remove unused variable is removing a referenced variable (in STORED_SYMS or LOADED_SYMS)
- From: "pthaugen at us dot ibm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 20 Mar 2007 15:31:36 -0000
- Subject: [Bug tree-optimization/30562] [4.3 Regression] remove unused variable is removing a referenced variable (in STORED_SYMS or LOADED_SYMS)
- References: <bug-30562-9596@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #9 from pthaugen at us dot ibm dot com 2007-03-20 15:31 -------
Looks like I can reproduce with mainline using -O2 -ftree-loop-linear when
building galgel benchmark from cpu2000.
(My FORTRAN skills are lacking, so couldn't whittle down to a single testcase,
but got close)
178.galgel/run> /home/pthaugen/install/gcc/trunk/bin/gfortran -c -m64
-ffixed-form -O2 -ftree-loop-linear modules.f90
178.galgel/run> /home/pthaugen/install/gcc/trunk/bin/gfortran -c -m64
-ffixed-form -O2 -ftree-loop-linear sysnsL.f90
sysnsL.f90: In function #sysnsl#:
sysnsL.f90:6: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
(gdb) run
Starting program:
/home/pthaugen/install/gcc/trunk/libexec/gcc/powerpc64-linux/4.3.0/f951
sysnsL.f90 -quiet -dumpbase sysnsL.f90 -m64 -auxbase sysnsL -O2 -version
-ffixed-form -ftree-loop-linear -fintrinsic-modules-path
/home/pthaugen/install/gcc/trunk/lib/gcc/powerpc64-linux/4.3.0/finclude -o
sysnsL.s
GNU F95 version 4.3.0 20070314 (experimental) (powerpc64-linux)
compiled by GNU C version 4.1.0 (SUSE Linux).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Program received signal SIGSEGV, Segmentation fault.
remove_referenced_var (var=<value optimized out>)
at /home/pthaugen/src/gcc/trunk/gcc/gcc/tree-dfa.c:771
771 ggc_free (*loc);
(gdb) bt 5
#0 remove_referenced_var (var=<value optimized out>)
at /home/pthaugen/src/gcc/trunk/gcc/gcc/tree-dfa.c:771
#1 0x103d1238 in remove_unused_locals ()
at /home/pthaugen/src/gcc/trunk/gcc/gcc/tree-ssa-live.c:518
#2 0x1026f204 in execute_function_todo (data=<value optimized out>)
at /home/pthaugen/src/gcc/trunk/gcc/gcc/passes.c:865
#3 0x1026ee44 in do_per_function (callback=0x1026efe0 <execute_function_todo>,
data=0x21)
at /home/pthaugen/src/gcc/trunk/gcc/gcc/passes.c:757
#4 0x1026ef4c in execute_todo (flags=33) at
/home/pthaugen/src/gcc/trunk/gcc/gcc/passes.c:935
(More stack frames follow...)
--
pthaugen at us dot ibm dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |pthaugen at us dot ibm dot
| |com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30562