Add low level support for generating invoke instead of calls.
- No functionality change.
llvm-svn: 65325
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h
index 8bda453..b3d6a32 100644
--- a/clang/lib/CodeGen/CodeGenFunction.h
+++ b/clang/lib/CodeGen/CodeGenFunction.h
@@ -190,6 +190,10 @@
/// statement range in current switch instruction.
llvm::BasicBlock *CaseRangeBlock;
+ /// InvokeDest - This is the nearest exception target for calls
+ /// which can unwind, when exceptions are being used.
+ llvm::BasicBlock *InvokeDest;
+
// VLASizeMap - This keeps track of the associated size for each VLA type.
// FIXME: Maybe this could be a stack of maps that is pushed/popped as we
// enter/leave scopes.
@@ -233,6 +237,13 @@
ASTContext &getContext() const;
CGDebugInfo *getDebugInfo() { return DebugInfo; }
+ llvm::BasicBlock *getInvokeDest() { return InvokeDest; }
+ void setInvokeDest(llvm::BasicBlock *B) { InvokeDest = B; }
+
+ //===--------------------------------------------------------------------===//
+ // Objective-C
+ //===--------------------------------------------------------------------===//
+
void GenerateObjCMethod(const ObjCMethodDecl *OMD);
void StartObjCMethod(const ObjCMethodDecl *MD,