aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2013-07-04 00:26:30 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2013-07-04 00:26:30 +0000
commitc93822901aef17aaf8bb1303f27b47025fd1d582 (patch)
treed10880574ee192b55521a558b84b33c9d86fe2f0 /include/llvm
parent62204220e1dc2dc21256adf765728ae257b33eac (diff)
downloadexternal_llvm-c93822901aef17aaf8bb1303f27b47025fd1d582.zip
external_llvm-c93822901aef17aaf8bb1303f27b47025fd1d582.tar.gz
external_llvm-c93822901aef17aaf8bb1303f27b47025fd1d582.tar.bz2
Revert r185595-185596 which broke buildbots.
Revert "Simplify landing pad lowering." Revert "Remove the EXCEPTIONADDR, EHSELECTION, and LSDAADDR ISD opcodes." git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185600 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r--include/llvm/CodeGen/FunctionLoweringInfo.h5
-rw-r--r--include/llvm/CodeGen/ISDOpcodes.h12
2 files changed, 12 insertions, 5 deletions
diff --git a/include/llvm/CodeGen/FunctionLoweringInfo.h b/include/llvm/CodeGen/FunctionLoweringInfo.h
index 50d320f..f1d8155 100644
--- a/include/llvm/CodeGen/FunctionLoweringInfo.h
+++ b/include/llvm/CodeGen/FunctionLoweringInfo.h
@@ -115,11 +115,6 @@ public:
/// there's no other convenient place for it to live right now.
std::vector<std::pair<MachineInstr*, unsigned> > PHINodesToUpdate;
- /// If the current MBB is a landing pad, the exception pointer and exception
- /// selector registers are copied into these virtual registers by
- /// SelectionDAGISel::PrepareEHLandingPad().
- unsigned ExceptionPointerVirtReg, ExceptionSelectorVirtReg;
-
explicit FunctionLoweringInfo(const TargetMachine &TM) : TM(TM) {}
/// set - Initialize this FunctionLoweringInfo with the given Function
diff --git a/include/llvm/CodeGen/ISDOpcodes.h b/include/llvm/CodeGen/ISDOpcodes.h
index ce52b46..0fd211b 100644
--- a/include/llvm/CodeGen/ISDOpcodes.h
+++ b/include/llvm/CodeGen/ISDOpcodes.h
@@ -77,6 +77,18 @@ namespace ISD {
/// adjustment during unwind.
FRAME_TO_ARGS_OFFSET,
+ /// RESULT, OUTCHAIN = EXCEPTIONADDR(INCHAIN) - This node represents the
+ /// address of the exception block on entry to an landing pad block.
+ EXCEPTIONADDR,
+
+ /// RESULT, OUTCHAIN = LSDAADDR(INCHAIN) - This node represents the
+ /// address of the Language Specific Data Area for the enclosing function.
+ LSDAADDR,
+
+ /// RESULT, OUTCHAIN = EHSELECTION(INCHAIN, EXCEPTION) - This node
+ /// represents the selection index of the exception thrown.
+ EHSELECTION,
+
/// OUTCHAIN = EH_RETURN(INCHAIN, OFFSET, HANDLER) - This node represents
/// 'eh_return' gcc dwarf builtin, which is used to return from
/// exception. The general meaning is: adjust stack by OFFSET and pass