[llvm-bugs] [Bug 26191] Info from .cfi directives should by default go into .debug_frame, not .eh_frame section

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Jan 19 06:33:16 PST 2016


https://llvm.org/bugs/show_bug.cgi?id=26191

Bart Jacobs <bart.jacobs at cs.kuleuven.be> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID

--- Comment #7 from Bart Jacobs <bart.jacobs at cs.kuleuven.be> ---
I think I figured out why people say the x86_64 ABI requires .eh_frame. The
main reason is: being able to get a correct backtrace, even in the absence of
debug symbols, is considered important for diagnosis and monitoring. Putting
the info in the .debug_frame section means it is only there in debug builds,
and it gets stripped when stripping debug info. That is considered undesirable.

I can appreciate that.

Still, I wish the use case of generating a backtrace were separated from the
use case of exception handling. In particular, I wish the Objective-C runtime
(through libunwind) did not interpret the presence of .eh_frame in my OCaml
binary as an invitation to walk into my OCaml stack frames (and crash on the
incorrect unwind info). I wish it were possible to mark frames as
"exception-safe" or not and to have the Objective-C runtime not walk into
frames not marked as exception-safe. But that's a separate request, I guess. So
I'm marking this as resolved.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160119/a666a4ca/attachment.html>


More information about the llvm-bugs mailing list