[Bug tree-optimization/55006] New: [4.8 Regression] aermod.f90 is miscompiled with '-m64 -O2 -funroll-loops' after revision 192526
dominiq at lps dot ens.fr
gcc-bugzilla@gcc.gnu.org
Sun Oct 21 12:12:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55006
Bug #: 55006
Summary: [4.8 Regression] aermod.f90 is miscompiled with '-m64
-O2 -funroll-loops' after revision 192526
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: dominiq@lps.ens.fr
CC: hubicka@gcc.gnu.org, steven@gcc.gnu.org
The polyhedron test aermod.f90 is miscompiled with '-m64 -O2 -funroll-loops'
after revision 192526
Author: steven
Date: Wed Oct 17 06:15:38 2012 UTC (4 days, 5 hours ago)
Changed paths: 3
Log Message:
* df-problems.c (df_kill_notes): Split up in two functions.
(df_remove_dead_and_unused_notes): New function, first half of
df_kill notes to remove all REG_DEAD and REG_UNUSED notes.
(df_remove_dead_eq_notes): New function, second half of df_kill_notes
to remove REG_EQUAL and REG_EQUIV notes referring to dead registers.
(df_note_bb_compute): Call df_remove_dead_and_unused_notes instead
of df_kill_notes. Call df_remove_dead_eq_notes after processing insn.
* web.c (web): Re-add DF_RD_PRUNE_DEAD_DEFS;
The executable aborts with the following backtrace
...
F indicates top of profile (=1) or below (=0)
+Now Processing Data For Day No. 1 of 1999
Program received signal SIGSEGV, Segmentation fault.
wake_sig (x=46.0831375, xd=104.343887, xold=44.0807877, turbz=<value optimized
out>, turby=<value optimized out>, szold=Cannot access memory at address 0x8
) at aermod.f90:38204
38204 SZ = SZOLD + DELX*TURBZ
(gdb) bt
#0 wake_sig (x=46.0831375, xd=104.343887, xold=44.0807877, turbz=<value
optimized out>, turby=<value optimized out>, szold=Cannot access memory at
address 0x8
) at aermod.f90:38204
#1 0x000000010003302c in wake_dfsn (ldbhr=.FALSE., xi=40.076088,
szi=0.596251428, syi=0.618943393, z=7.06923056) at aermod.f90:36900
#2 0x000000010003852a in numrise (ldbhr=.FALSE., h=5, reff=<value optimized
out>, texit=262.600189, wexit=<value optimized out>, ntr=50, xtr=...,
ytr=..., ztr=..., rtr=..., linwake=.TRUE., numwake=0) at aermod.f90:35360
#3 0x000000010003b3d6 in prmdelh (xarg=30.6145649, l_inwake=.TRUE.) at
aermod.f90:39784
#4 0x000000010003cc64 in prmcalc (xbrec=<value optimized out>, ybrec=<value
optimized out>) at aermod.f90:6786
#5 0x00000001000572b2 in pcalc () at aermod.f90:6282
#6 0x000000010005905b in calc () at aermod.f90:5761
#7 0x0000000100079868 in hrloop () at aermod.f90:2596
#8 0x00000001000e7367 in aermod () at aermod.f90:2194
#9 0x00000001000f864f in main (argc=<value optimized out>, argv=<value
optimized out>) at aermod.f90:2038
#10 0x00000001000016e4 in start ()
The two subroutines which are miscompiled are wake_dfsn and wake_dfsn2, see the
attached compressed archive for testing it.
More information about the Gcc-bugs
mailing list