diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2013-12-09 04:29:47 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2013-12-09 04:29:47 +0000 |
commit | 94abb8ffedef9a2550626b71b11d131ed19dcb6c (patch) | |
tree | 2aa1bf72be620001385d94f19b2572222b3153ab /clang/lib/CodeGen/CGVTables.cpp | |
parent | 048f90cc04a4914d6427cde22b3d185f344e8ca5 (diff) | |
download | llvm-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.cpp | 3 |
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, |