Any libunwind experts n da house?

Jacob Carlborg via Digitalmars-d digitalmars-d at puremagic.com
Tue Sep 23 12:57:43 PDT 2014


On 2014-09-23 20:31, Walter Bright wrote:

> One goal is to have dmd use the g++ exception handling mechanism.

That would be cool. It's useful for Objective-C on x86-64 as well.

> But googling how that works, I find dead links, specs that are 15 years old
> accompanied by vague comments about it being "extended" and "look at the
> g++ source code", etc.
>
> Are there any actual docs about how it works for x86? Or is it the usual
> "take apart the output of g++ and figure it out" that I usually wind up
> doing :-( ?

 From the LLVM docs [1]:

A more complete description of the Itanium ABI exception handling 
runtime support of can be found at Itanium C++ ABI: Exception Handling 
[2]. A description of the exception frame format can be found at 
Exception Frames [3], with details of the DWARF 4 specification at DWARF 
4 Standard [4]. A description for the C++ exception table formats can be 
found at Exception Handling Tables [5].

[1] 
http://llvm.org/docs/ExceptionHandling.html#itanium-abi-zero-cost-exception-handling

[2] http://mentorembedded.github.com/cxx-abi/abi-eh.html

[3] 
http://refspecs.linuxfoundation.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/ehframechpt.html

[4] http://dwarfstd.org/Dwarf4Std.php

[5] http://mentorembedded.github.com/cxx-abi/exceptions.pdf

-- 
/Jacob Carlborg


More information about the Digitalmars-d mailing list