summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86FastISel.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2008-10-14 23:54:11 +0000
committerDan Gohman <gohman@apple.com>2008-10-14 23:54:11 +0000
commite7ced7455894cbe7f42496be731951aa5cc65e17 (patch)
treefd47fb0622703296f235113dbed00550606b44e7 /llvm/lib/Target/X86/X86FastISel.cpp
parent0f8155ae4e2cb08bf52c94fec1c73393c16bc708 (diff)
downloadbcm5719-llvm-e7ced7455894cbe7f42496be731951aa5cc65e17.tar.gz
bcm5719-llvm-e7ced7455894cbe7f42496be731951aa5cc65e17.zip
FastISel support for exception-handling constructs.
- Move the EH landing-pad code and adjust it so that it works with FastISel as well as with SDISel. - Add FastISel support for @llvm.eh.exception and @llvm.eh.selector. llvm-svn: 57539
Diffstat (limited to 'llvm/lib/Target/X86/X86FastISel.cpp')
-rw-r--r--llvm/lib/Target/X86/X86FastISel.cpp24
1 files changed, 20 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86FastISel.cpp b/llvm/lib/Target/X86/X86FastISel.cpp
index 2ce78eccef0..d734db56c8a 100644
--- a/llvm/lib/Target/X86/X86FastISel.cpp
+++ b/llvm/lib/Target/X86/X86FastISel.cpp
@@ -52,8 +52,16 @@ public:
MachineModuleInfo *mmi,
DenseMap<const Value *, unsigned> &vm,
DenseMap<const BasicBlock *, MachineBasicBlock *> &bm,
- DenseMap<const AllocaInst *, int> &am)
- : FastISel(mf, mmi, vm, bm, am) {
+ DenseMap<const AllocaInst *, int> &am
+#ifndef NDEBUG
+ , SmallSet<Instruction*, 8> &cil
+#endif
+ )
+ : FastISel(mf, mmi, vm, bm, am
+#ifndef NDEBUG
+ , cil
+#endif
+ ) {
Subtarget = &TM.getSubtarget<X86Subtarget>();
StackPtr = Subtarget->is64Bit() ? X86::RSP : X86::ESP;
X86ScalarSSEf64 = Subtarget->hasSSE2();
@@ -1391,7 +1399,15 @@ namespace llvm {
MachineModuleInfo *mmi,
DenseMap<const Value *, unsigned> &vm,
DenseMap<const BasicBlock *, MachineBasicBlock *> &bm,
- DenseMap<const AllocaInst *, int> &am) {
- return new X86FastISel(mf, mmi, vm, bm, am);
+ DenseMap<const AllocaInst *, int> &am
+#ifndef NDEBUG
+ , SmallSet<Instruction*, 8> &cil
+#endif
+ ) {
+ return new X86FastISel(mf, mmi, vm, bm, am
+#ifndef NDEBUG
+ , cil
+#endif
+ );
}
}
OpenPOWER on IntegriCloud