[llvm-dev] x86-64 unwind additions

John Reagan via llvm-dev llvm-dev at lists.llvm.org
Thu Dec 14 07:22:33 PST 2017


Hi all,

We're at the point in our port of OpenVMS to x86-64 that we're working
on the unwind code.  The current ABI and the current codebase doesn't
have enough support for true asynchronous unwinding from any point (most
notably in the prologue/epilogue) in the code that OpenVMS needs.  We're
working on a set of changes to the compact unwind information to handle
the additional cases (and some clearly OpenVMS-specific needs that
others won't care about).

We've noted that gcc seems to generate better asynchronous unwind info
and has the companion -fasynchronous-unwind-tables.  clang just maps it
to -funwind-tables.

We've also noted that Reid and company have nicely added
Analysis/EHPersonalities.h along with a "isAsynchronousEHPersonality"
function for MSVC personality routines.

I'll post an RFC in January to get some feedback, but wanted to know if
others have out-of-tree unwind changes in this area.  Perhaps they might
be helpful to us.

John




More information about the llvm-dev mailing list