From b9bd6fb3976684fdfc39dd77b15d231aa4fd352d Mon Sep 17 00:00:00 2001 From: David Majnemer Date: Sat, 1 Nov 2014 05:42:23 +0000 Subject: CodeGen: Virtual dtor thunks shouldn't have this marked as 'returned' The ARM ABI virtual destructor thunks cannot be marked as 'returned' because they return undef. llvm-svn: 221042 --- clang/lib/CodeGen/CodeGenModule.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'clang/lib/CodeGen/CodeGenModule.h') diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h index a3bbada6109..c5ee57f8d68 100644 --- a/clang/lib/CodeGen/CodeGenModule.h +++ b/clang/lib/CodeGen/CodeGenModule.h @@ -1088,10 +1088,10 @@ public: void addReplacement(StringRef Name, llvm::Constant *C); private: - llvm::Constant * GetOrCreateLLVMFunction(StringRef MangledName, llvm::Type *Ty, GlobalDecl D, bool ForVTable, bool DontDefer = false, + bool IsThunk = false, llvm::AttributeSet ExtraAttrs = llvm::AttributeSet()); llvm::Constant *GetOrCreateLLVMGlobal(StringRef MangledName, @@ -1101,9 +1101,8 @@ private: void setNonAliasAttributes(const Decl *D, llvm::GlobalObject *GO); /// Set function attributes for a function declaration. - void SetFunctionAttributes(GlobalDecl GD, - llvm::Function *F, - bool IsIncompleteFunction); + void SetFunctionAttributes(GlobalDecl GD, llvm::Function *F, + bool IsIncompleteFunction, bool IsThunk); void EmitGlobalDefinition(GlobalDecl D, llvm::GlobalValue *GV = nullptr); -- cgit v1.2.3