aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CodeGenFunction.h
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-02-07 21:37:21 +0000
committerAnders Carlsson <andersca@mac.com>2009-02-07 21:37:21 +0000
commit273558fbd891a0872e620e0d3d109b92c1160d72 (patch)
tree792d82f2afad76ba4991e7f424b69ec3bb1ab77b /lib/CodeGen/CodeGenFunction.h
parent190d00e1396214c77539c7095756b9ea38160463 (diff)
Split the exception object out into its own stack.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64032 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CodeGenFunction.h')
-rw-r--r--lib/CodeGen/CodeGenFunction.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h
index ce32a45a5d..9d8d3a3f4a 100644
--- a/lib/CodeGen/CodeGenFunction.h
+++ b/lib/CodeGen/CodeGenFunction.h
@@ -97,7 +97,7 @@ public:
struct ObjCEHEntry {
ObjCEHEntry(llvm::BasicBlock *fb, llvm::SwitchInst *fs, llvm::Value *dc)
: FinallyBlock(fb), FinallySwitch(fs),
- DestCode(dc), Exception(0) {}
+ DestCode(dc) {}
/// Entry point to the finally block.
llvm::BasicBlock *FinallyBlock;
@@ -109,12 +109,12 @@ public:
/// Variable holding the code for the destination of a jump
/// through the @finally block.
llvm::Value *DestCode;
-
- /// The exception object being handled, during IR generation for a
- /// @catch block.
- llvm::Value *Exception;
};
+ /// ObjCEHValueStack - Stack of exception objects being handled,
+ /// during IR generation for a @catch block.
+ llvm::SmallVector<llvm::Value*, 8> ObjCEHValueStack;
+
typedef llvm::SmallVector<ObjCEHEntry*, 8> ObjCEHStackType;
ObjCEHStackType ObjCEHStack;