Charles Davis
2012-Aug-04 21:15 UTC
[LLVMdev] [cfe-dev] GCC 4.7.2 will have Win64 SEH (by default)
+LLVMdev On Aug 4, 2012, at 9:45 AM, João Matos wrote:> Charles Davis did a lot of work on Win64 SEH support in LLVM, check commits r131652-r132880. > > As I haven't tested it yet, what exactly is broken?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> > On Sat, Aug 4, 2012 at 2:46 PM, Ruben Van Boxem <vanboxem.ruben at gmail.com> wrote: > 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 ;-) > > -- > João Matos > _______________________________________________ > cfe-dev mailing list > cfe-dev at cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120804/db7873ed/attachment.html>
João Matos
2012-Aug-04 21:31 UTC
[LLVMdev] [cfe-dev] GCC 4.7.2 will have Win64 SEH (by default)
Thanks for the update. I've also been researching Windows-specific EH myself, though I have not yet done any specific work on LLVM / Clang. I assume that to be compatible with VC++ EH we need to use the same language-specific EH handler that is located in the MS runtime library. After the LLVM work done, it should be doable to wire that up in Clang. For anyone who is interested on the low level details, I found a series of posts on the topic by Nynaeve to be really helpful. You can find it at: http://www.nynaeve.net/?p=113 On Sat, Aug 4, 2012 at 10:15 PM, Charles Davis <cdavis at mymail.mines.edu>wrote:> +LLVMdev > > On Aug 4, 2012, at 9:45 AM, João Matos wrote: > > Charles Davis did a lot of work on Win64 SEH support in LLVM, check > commits r131652-r132880. > > As I haven't tested it yet, what exactly is broken? > > 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 > > > On Sat, Aug 4, 2012 at 2:46 PM, Ruben Van Boxem <vanboxem.ruben at gmail.com>wrote: > >> 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 ;-) >> > > -- > João Matos > _______________________________________________ > cfe-dev mailing list > cfe-dev at cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev > > >-- João Matos -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120804/4d001114/attachment.html>
Reasonably Related Threads
- [LLVMdev] Detail question about how to implement Win64 SEH
- [LLVMdev] Detail question about how to implement Win64 SEH
- repost (passive FTP server in DMZ and shorewall 1.4.2)
- [LLVMdev] Implement implicit TLS on Windows - need advice
- [LLVMdev] [PATCH] Seh exceptions on Win64