On Thu, Feb 11, 2010 at 11:25 AM, Christian BRUEL
<christian.bruel@st.com> wrote:
A label referenced in the exception table is not dead and should not be
deleted when jumps are merged, This patch just prevents this.
Looks like this would slow down the compiler for all targets, just to
make things work on the very few targets that still use the archaic
dbr-sched pass in reorg... Please, no.
OK, I agree. And this implementation was rather other shot and naive.
On the other hand this impacts the sparc, frv, fr30, cris, iq2000, picochip,
arc, pa, mips and h83200, that have define_delay and use the dbr sched.
What about just marking the label as PRESERVED_P as attached ? that solves
the problem more generally and guards against any dangerous call to
delete_insn.
Are you sure you are attacking this problem from the right angle? It
seems to me that a problem like this would have been noticed long ago
if the problem is that the label is not marked PRESERVED_P. More
likely, the problem is in reorg.c itself,