Does the current code generate all the prologue cfi directives? Epilogue too? The last time I checked, it did not (especially for epilogues).
Fully asynch prologue/epilogue is one of the things that we need for OpenVMS and will be doing that work. We're also looking at using the compact format instead of the CFI form (at least for routine bodies). clang's driver already recognizes "-fasynchronous-unwind-tables" today and maps that to "-munwind-tables" and probably should be switched to setting your new "always-need-cfi" or simply change your name. Either way, I think there is an interaction between them. From the code in Clang.cpp // This is a coarse approximation of what llvm-gcc actually does, both // -fasynchronous-unwind-tables and -fnon-call-exceptions interact in more // complicated ways. On 9/24/19 11:54 AM, Eric Christopher wrote: > That said, prior art in gcc in this area: > > -fasynchronous-unwind-tables > > Generate unwind table in DWARF format, if supported by target machine. > The table is exact at each instruction boundary, so it can be used for > stack unwinding from asynchronous events (such as debugger or garbage > collector). > > -eric > > On Tue, Sep 24, 2019 at 8:43 AM Keith Walker via Phabricator > <revi...@reviews.llvm.org> wrote: >> keith.walker.arm added a comment. >> >> I feel that using a -g option make more sense. >> >> Maybe -gdwarf-frame, or -gdwarf-frame-always might be more user friendly as >> it relates more to the DWARF section created rather than the section content. >> >> >> Repository: >> rG LLVM Github Monorepo >> >> CHANGES SINCE LAST ACTION >> https://reviews.llvm.org/D67216/new/ >> >> https://reviews.llvm.org/D67216 >> >> >> _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits