Classify functions by EH personality type rather than using the triple
authorReid Kleckner <reid@kleckner.net>
Fri, 23 Jan 2015 18:49:01 +0000 (18:49 +0000)
committerReid Kleckner <reid@kleckner.net>
Fri, 23 Jan 2015 18:49:01 +0000 (18:49 +0000)
commit26ba4c13a7200010d91e9e0a04ec2de11480d5fc
treedb12c8324a08741fcc8447f8d098ad556b150cb6
parent7e97e25bfc927a90e4aa4d8de6fa7082acfd6fc9
Classify functions by EH personality type rather than using the triple

This mostly reverts commit r222062 and replaces it with a new enum. At
some point this enum will grow at least for other MSVC EH personalities.

Also beefs up the way we were sniffing the personality function.
Previously we would emit the Itanium LSDA despite using
__C_specific_handler.

Reviewers: majnemer

Differential Revision: http://reviews.llvm.org/D6987

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226920 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/MachineModuleInfo.h
include/llvm/MC/MCAsmInfo.h
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/CodeGen/AsmPrinter/DwarfCFIException.cpp
lib/CodeGen/AsmPrinter/EHStreamer.cpp
lib/CodeGen/AsmPrinter/Win64Exception.cpp
lib/CodeGen/MachineModuleInfo.cpp
lib/CodeGen/Passes.cpp
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
test/CodeGen/X86/seh-finally.ll [new file with mode: 0755]