]> granicus.if.org Git - clang/commit
Start setting dso_local in clang.
authorRafael Espindola <rafael.espindola@gmail.com>
Fri, 2 Feb 2018 17:17:39 +0000 (17:17 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Fri, 2 Feb 2018 17:17:39 +0000 (17:17 +0000)
commitbfe30614ffaf5e094974474c76afdc8baebcb02f
tree82f8f656dc014d96db3d48e2653f3ad167a475c0
parentb1dff4f2e3e7fee4c31322bf652fd583a775796b
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@324107 91177308-0d34-0410-b5e6-96231b3b80d8
22 files changed:
lib/CodeGen/CGDecl.cpp
lib/CodeGen/CGVTT.cpp
lib/CodeGen/CGVTables.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeGenModule.h
lib/CodeGen/ItaniumCXXABI.cpp
test/CodeGen/dso-local-executable.c [new file with mode: 0644]
test/CodeGen/mbackchain-2.c
test/CodeGen/mbackchain-3.c
test/CodeGen/mips-vector-return.c
test/CodeGen/split-stacks.c
test/CodeGenCXX/debug-info-static-member.cpp
test/CodeGenCXX/debug-info-template.cpp
test/CodeGenCXX/dso-local-executable.cpp [new file with mode: 0644]
test/CodeGenCXX/float16-declarations.cpp
test/CodeGenCXX/split-stacks.cpp
test/Driver/lanai-unknown-unknown.cpp
test/Driver/le32-unknown-nacl.cpp
test/Driver/le64-unknown-unknown.cpp
test/Driver/riscv32-toolchain.c
test/Driver/riscv64-toolchain.c
test/Frontend/ast-codegen.c