On Saturday, 4 August 2012 at 23:35:30 UTC, Hans W. Uhlig wrote:
On Saturday, 4 August 2012 at 16:11:45 UTC, Jacob Carlborg
wrote:
On 2012-08-04 17:20, Kagamin wrote:
Dwarf2 exceptions work in clang+gcc on win32. It would be
SOME exception
handling (and quite interesting, I'd say).
This post recently appeared on the Clang mailing list:
"Hi,
I have just been made aware that GCC 4.7.2 and later will use
SEH by default on Win64:
http://gcc.gnu.org/ml/gcc-patches/2012-07/msg00512.html
I would like to inquire as to possibility of this being
implemented in Clang/LLVM. As this type of exception handling
is much closer to the classic Dwarf model currently used, I
hope it won't be too difficult to implement this in Clang?
Remember that Win64 EH is broken right now, so any improvement
is the right improvement ;-)
For 32-bit dw2 eh already works well, and in light of the
misty Borland patents will probably remain the only option for
a while.
Thanks!
Ruben
PS: please also reply to my email address, as I'm not
subscribed to cfe-dev"
Charles Davis did a lot of work on Win64 SEH support in LLVM,
check commits r131652-r132880.
It's not finished yet. All the stuff for assembly code that uses
Win64 EH is done, but not the code-gen-side stuff (cf.
Win64Exception class in CodeGen). I was about to finish it, but
then real life happened :). This would have allowed us to use
DW2-style EH on Win64, but it still would have been problematic
for VC++ EH.
Kai Tietz was interested in finishing it, so I emailed him what
I
have. I assume he's been working on it--he recently submitted a
patch to fix the permissions on .pdata/.xdata sections that I
got
wrong :). I've CC'd him as well so we can see what he has for
us.
Chip
It sounds like this should be targetable from ldc now.
http://www.nynaeve.net/?p=113