aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CGVTables.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-12-09 04:29:47 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-12-09 04:29:47 +0000
commit94abb8ffedef9a2550626b71b11d131ed19dcb6c (patch)
tree2aa1bf72be620001385d94f19b2572222b3153ab /clang/lib/CodeGen/CGVTables.cpp
parent048f90cc04a4914d6427cde22b3d185f344e8ca5 (diff)
downloadllvm-94abb8ffedef9a2550626b71b11d131ed19dcb6c.zip
llvm-94abb8ffedef9a2550626b71b11d131ed19dcb6c.tar.gz
llvm-94abb8ffedef9a2550626b71b11d131ed19dcb6c.tar.bz2
Avoid adding some decls to DeferredDeclsToEmit.
Before this patch GetOrCreateLLVMFunction would add a decl to DeferredDeclsToEmit even when it was being called by the function trying to emit that decl. llvm-svn: 196753
Diffstat (limited to 'clang/lib/CodeGen/CGVTables.cpp')
-rw-r--r--clang/lib/CodeGen/CGVTables.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGVTables.cpp b/clang/lib/CodeGen/CGVTables.cpp
index 81648cbe..894e81c 100644
--- a/clang/lib/CodeGen/CGVTables.cpp
+++ b/clang/lib/CodeGen/CGVTables.cpp
@@ -54,7 +54,8 @@ llvm::Constant *CodeGenModule::GetAddrOfThunk(GlobalDecl GD,
Out.flush();
llvm::Type *Ty = getTypes().GetFunctionTypeForVTable(GD);
- return GetOrCreateLLVMFunction(Name, Ty, GD, /*ForVTable=*/true);
+ return GetOrCreateLLVMFunction(Name, Ty, GD, /*ForVTable=*/true,
+ /*DontDefer*/ true);
}
static void setThunkVisibility(CodeGenModule &CGM, const CXXMethodDecl *MD,