diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2015-12-15 22:39:36 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2015-12-15 22:39:36 +0000 |
commit | 29dd05e92fec48d1548d5f982a4a5494facdac84 (patch) | |
tree | 74801794ab8fa3a8d485a8bda320e6ddd9db66e5 /llvm/lib/Target/AMDGPU | |
parent | 1fbae3b76a3dbb463d37953140b02efa6f94d93c (diff) | |
download | bcm5719-llvm-29dd05e92fec48d1548d5f982a4a5494facdac84.tar.gz bcm5719-llvm-29dd05e92fec48d1548d5f982a4a5494facdac84.zip |
AMDGPU/SI: Emit constant variables in the .hsatext section when targeting HSA
Reviewers: arsenm
Subscribers: arsenm, llvm-commits
Differential Revision: http://reviews.llvm.org/D15426
llvm-svn: 255689
Diffstat (limited to 'llvm/lib/Target/AMDGPU')
-rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp | 8 | ||||
-rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp | 5 |
2 files changed, 7 insertions, 6 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp b/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp index b4403432f3f..0b7477db2f3 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp @@ -126,8 +126,12 @@ static bool isModuleLinkage(const GlobalValue *GV) { void AMDGPUAsmPrinter::EmitGlobalVariable(const GlobalVariable *GV) { - if (TM.getTargetTriple().getOS() != Triple::AMDHSA || - GV->isDeclaration()) { + if (TM.getTargetTriple().getOS() != Triple::AMDHSA) { + AsmPrinter::EmitGlobalVariable(GV); + return; + } + + if (GV->isDeclaration() || GV->getLinkage() == GlobalValue::PrivateLinkage) { AsmPrinter::EmitGlobalVariable(GV); return; } diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp index 48bb2641e07..e050f21091b 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp @@ -83,8 +83,5 @@ MCSection *AMDGPUHSATargetObjectFile::SelectSectionForGlobal( return DataGlobalProgramSection; } - if (Kind.isReadOnly() && AMDGPU::isReadOnlySegment(GV)) - return RodataReadonlyAgentSection; - - return TargetLoweringObjectFileELF::SelectSectionForGlobal(GV, Kind, Mang, TM); + return AMDGPUTargetObjectFile::SelectSectionForGlobal(GV, Kind, Mang, TM); } |