This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Question on Dwarf2 unwind info and optimized code
- From: Jim Wilson <wilson at specifix dot com>
- To: Christophe LYON <christophe dot lyon at st dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 24 Oct 2005 17:00:53 -0700
- Subject: Re: Question on Dwarf2 unwind info and optimized code
- References: <435D0B8B.3020403@st.com>
Christophe LYON wrote:
I have been look at the Dwarf2 frame info generated by GCC, and how it
works.
From what I can see, only the register saves are recorded, and not the
restores. Why?
The frame info is primarily used for C++ EH stack unwinding. Since you
can't throw a C++ exception in an epilogue, epilogue frame info isn't
needed for this, and was never implemented for most targets. Which is a
shame.
There is a PR for this, PR 18749, for the x86-64 target. The lack of
epilogue unwind info shows up if you run the libunwind testsuite.
Otherwise, it is really hard to find an example where the missing unwind
info is a problem.
--
Jim Wilson, GNU Tools Support, http://www.specifix.com