aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CodeGenFunction.h
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-02-10 05:52:02 +0000
committerAnders Carlsson <andersca@mac.com>2009-02-10 05:52:02 +0000
commite4b6d342c29d5cb9d311756100df1603810fa892 (patch)
tree68bc60fb94758a64604e0a42db5ded00e1406269 /lib/CodeGen/CodeGenFunction.h
parent3f34d80d0c4d7d3350b3eed3b80a9333663bb283 (diff)
Start removing the old Obj-C EH stack now that the cleanup stack is used instead.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64203 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CodeGenFunction.h')
-rw-r--r--lib/CodeGen/CodeGenFunction.h31
1 files changed, 3 insertions, 28 deletions
diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h
index 3f1e99599f..8047b4cb9c 100644
--- a/lib/CodeGen/CodeGenFunction.h
+++ b/lib/CodeGen/CodeGenFunction.h
@@ -205,39 +205,14 @@ private:
/// LabelMap - This keeps track of the LLVM basic block for each C label.
llvm::DenseMap<const LabelStmt*, llvm::BasicBlock*> LabelMap;
- /// BreakContinuePush - Note a new break and continue level. This must be
- /// called at the stack depth of the continue block. In particular, this must
- /// not be called after the controlling condition has possibly started a vla.
- void BreakContinuePush(llvm::BasicBlock *bb, llvm::BasicBlock *cb) {
- BreakContinueStack.push_back(BreakContinue(bb, cb, StackDepth,
- StackDepth,
- ObjCEHStack.size()));
- }
- void BreakContinuePush(llvm::BasicBlock *bb, llvm::BasicBlock *cb,
- llvm::Value *bsd, llvm::Value *csd) {
- BreakContinueStack.push_back(BreakContinue(bb, cb, bsd, csd,
- ObjCEHStack.size()));
- }
-
- /// BreakContinuePop - Note end of previous break and continue level.
- void BreakContinuePop() {
- BreakContinueStack.pop_back();
- }
-
// BreakContinueStack - This keeps track of where break and continue
- // statements should jump to, as well as the depth of the stack and the size
- // of the eh stack.
+ // statements should jump to.
struct BreakContinue {
- BreakContinue(llvm::BasicBlock *bb, llvm::BasicBlock *cb,
- llvm::Value *bsd, llvm::Value *csd, size_t ehss)
- : BreakBlock(bb), ContinueBlock(cb), SaveBreakStackDepth(bsd),
- SaveContinueStackDepth(csd), EHStackSize(ehss) {}
+ BreakContinue(llvm::BasicBlock *bb, llvm::BasicBlock *cb)
+ : BreakBlock(bb), ContinueBlock(cb) {}
llvm::BasicBlock *BreakBlock;
llvm::BasicBlock *ContinueBlock;
- llvm::Value *SaveBreakStackDepth;
- llvm::Value *SaveContinueStackDepth;
- size_t EHStackSize;
};
llvm::SmallVector<BreakContinue, 8> BreakContinueStack;