7b06b7357aa5a7cbdd769edbf6edb10fa055ea09 |
|
27-May-2011 |
Charles Davis <cdavis@mines.edu> |
Add a parameter to the Win64 EH section getters to get a section with a suffix (e.g. .xdata$myfunc). The suffix part isn't implemented yet, but I'll get to it in the next patch. Fix up all callers of the affected functions. Make them pass said suffix to the function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
c4cbf9b6aa95cf861a5a80bfccf615ff5c53e4ef |
|
27-May-2011 |
Charles Davis <cdavis@mines.edu> |
Start keeping track of where the various unwind instructions are in the prolog. Use them to calculate the offset inside the prolog. Emit this value when emitting the unwind codes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132177 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
3185f5c35322cbd10040ab20f265042d477efe62 |
|
22-May-2011 |
Charles Davis <cdavis@mines.edu> |
Make the COFF streamer emit unwind info when processing a .seh_handlerdata directive. Implement emission of Win64 EH unwind info. Pull in <cassert> in MCWin64EH.h so it can use the assert() macro. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131832 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
321fe74b2d40d7762175fbd3054fda00b5e70833 |
|
21-May-2011 |
Charles Davis <cdavis@mines.edu> |
A handler for a function in the Win64 EH scheme can be both an unwind handler and an exception handler. Handle that case. Also, add an 'Emitted' member to the MCWin64EHUnwindInfo struct. It will be needed later. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131791 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
61558aaf4f924fd44fd2f275fcb7ab7199ede304 |
|
19-May-2011 |
Charles Davis <cdavis@mines.edu> |
Implement the EndProlog Win64 EH method on the base MCStreamer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131679 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
c3b162857a587c9877e903f038471b882b213232 |
|
19-May-2011 |
Charles Davis <cdavis@mines.edu> |
Implement the Win64 EH prolog instruction methods on the base MCStreamer. I had to change the API slightly to avoid overloading issues. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
440596ffe5bb77a202acb36d5eadd158976ff39a |
|
19-May-2011 |
Charles Davis <cdavis@mines.edu> |
Turns out GAS does have Win64 EH directives. (It also supports WinCE EH.) Make ours compatible with GAS. In retrospect, I should have emailed binutils about this earlier. Thanks to Kai Tietz for pointing out that GAS already had SEH directives. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131652 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
91d9a1c0f7c598d51c50f80bc9e8dfc1494f78c1 |
|
19-May-2011 |
Charles Davis <cdavis@mines.edu> |
Implement the StartChained and EndChained Win64 EH methods on MCStreamer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131629 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
fa89218a438c0fcafb40775bdc04dbe95c59fba3 |
|
19-May-2011 |
Charles Davis <cdavis@mines.edu> |
Fix build issues with headers, which I discovered by actually using them. Also, convert all the inline functions on UnwindInfo into methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|
f0542c07f7be612c5177243049dc23d24bde8852 |
|
19-May-2011 |
Charles Davis <cdavis@mines.edu> |
Add a header patterned after MCDwarf.h for supporting Win64 exception handling under MC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131593 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/MC/MCWin64EH.h
|