------- Comment #2 from danglin at gcc dot gnu dot org 2007-10-27 15:51 -------
I think this regression was caused by this change:
2007-10-26 Daniel Jacobowitz <[EMAIL PROTECTED]>
* reorg.c (emit_delay_sequence): Move insn locator from the
first insn to the sequence.
It's the only change that appears relevant and the address of xyzzy is
loaded in the delay slot of the call to fnptr:
{
int xyzzy;
fnptr (&xyzzy);
}
foo:
.PROC
.CALLINFO FRAME=64,CALLS,SAVE_RP
.ENTRY
; basic block 2
stw %r2,-20(%r30)
.LCFI0:
ldo 64(%r30),%r30
.LCFI1:
; /home/dave/gcc-4.3/gcc/gcc/testsuite/gcc.dg/debug/debug-6.c:29
.loc 1 29 0
bl fnptr,%r2
ldo -56(%r30),%r26
; /home/dave/gcc-4.3/gcc/gcc/testsuite/gcc.dg/debug/debug-6.c:38
.loc 1 38 0
ldw -84(%r30),%r2
bv %r0(%r2)
ldo -64(%r30),%r30
.EXIT
.PROCEND
--
danglin at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |drow at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33921