This is the mail archive of the
mailing list for the GCC project.
[Bug target/25176] FAIL: Array_3 -O3 execution - bytecode->native test
- From: "amodra at bigpond dot net dot au" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 30 Nov 2005 13:07:51 -0000
- Subject: [Bug target/25176] FAIL: Array_3 -O3 execution - bytecode->native test
- References: <email@example.com/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from amodra at bigpond dot net dot au 2005-11-30 13:07 -------
I had a little play at implementing unwinder info for the epilogue. It's easy
to arrange for a "DW_CFA_def_cfa_offset: 0" to be emitted on the stack restore.
However, often the function exit isn't emitted last. Many functions have
blocks of code emitted to higher addresses past the exit. So you need to emit
further dwarf2 info specifying the stack offset in these blocks.
It probably wouldn't be hard to teach dwarf2out how to handle this, by tracking
NOTE_INSN_EPILOGUE_BEG and any following NOTE_INSN_BASIC_BLOCK, but I'm
wondering whether it is worth the increase in .eh_frame size..