From 7e34a308ff8d9270d2654ce0e8ed9e1600676afb Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Fri, 2 Feb 2018 17:17:39 +0000 Subject: Start setting dso_local in clang. This starts adding dso_local to clang. The hope is to eventually have TargetMachine::shouldAssumeDsoLocal go away. My objective for now is to move enough of it to clang to remove the need for the TargetMachine one to handle PIE copy relocations and -fno-plt. With that it should then be easy to implement a -fno-copy-reloc in clang. This patch just adds the cases where we assume a symbol to be local based on the file being compiled for an executable or a shared library. llvm-svn: 324107 --- clang/lib/CodeGen/CodeGenModule.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'clang/lib/CodeGen/CodeGenModule.h') diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h index 42e9e1be316..3ae041e8d5e 100644 --- a/clang/lib/CodeGen/CodeGenModule.h +++ b/clang/lib/CodeGen/CodeGenModule.h @@ -722,6 +722,12 @@ public: void setGlobalVisibility(llvm::GlobalValue *GV, const NamedDecl *D, ForDefinition_t IsForDefinition) const; + void setDSOLocal(llvm::GlobalValue *GV, const NamedDecl *D, + ForDefinition_t IsForDefinition) const; + + void setGVProperties(llvm::GlobalValue *GV, const NamedDecl *D, + ForDefinition_t IsForDefinition) const; + /// Set the TLS mode for the given LLVM GlobalValue for the thread-local /// variable declaration D. void setTLSMode(llvm::GlobalValue *GV, const VarDecl &D) const; -- cgit v1.2.3