[RS6000] PR 40473, parameter debug location lists

David Edelsohn dje.gcc@gmail.com
Mon Sep 21 16:10:00 GMT 2009


> This patch fixes a problem with debug location lists for function
> parameters.  When using the powerpc -mno-sched-epilog option, the
> lists don't cover the prologue.  -mno-sched-epilog stops function
> prologue scheduling as well as epilogue, and does so by emitting the
> function prologue/epilogue very late in the compilation process.  The
> prologue insns so emitted are located before the "start of function"
> as seen by the rest of the compiler, which confuses variable
> tracking.  The fix is to simply emit the prologue instructions after
> the correct label.

Alan,

If the call to final() is changed to emit_insn_before_noloc(), then
the instructions no longer are emitted and instead are generated as
part of the function, which means they are scheduled.  Your patch
seems to make the -mno-sched-prolog flag useless.

-mno-sched-prolog is an alias for -mno-sched-epilog.  Is there a
continuing need to allow the prologue and epilogue not to be
scheduled?

David



More information about the Gcc-patches mailing list