summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>2018-10-15 20:37:47 +0000
committerKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>2018-10-15 20:37:47 +0000
commit94dfcc2eb2668fcd1129f33cb7df68b20a95b14e (patch)
tree566801e9266f4cc4d4ac451200a4da1583ee7d3d /llvm/lib
parent831a1336ff3bba00c04451e464b75cce7e999552 (diff)
downloadbcm5719-llvm-94dfcc2eb2668fcd1129f33cb7df68b20a95b14e.tar.gz
bcm5719-llvm-94dfcc2eb2668fcd1129f33cb7df68b20a95b14e.zip
AMDGPU: Generate .amdgcn_target for object code v3
Differential Revision: https://reviews.llvm.org/D53221 llvm-svn: 344552
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp b/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
index 7e6a406b1e3..7448dd71004 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
@@ -116,9 +116,16 @@ AMDGPUTargetStreamer* AMDGPUAsmPrinter::getTargetStreamer() const {
}
void AMDGPUAsmPrinter::EmitStartOfAsmFile(Module &M) {
- if (IsaInfo::hasCodeObjectV3(getSTI()) &&
- TM.getTargetTriple().getOS() == Triple::AMDHSA)
- return;
+ if (IsaInfo::hasCodeObjectV3(getSTI())) {
+ std::string ExpectedTarget;
+ raw_string_ostream ExpectedTargetOS(ExpectedTarget);
+ IsaInfo::streamIsaVersion(getSTI(), ExpectedTargetOS);
+
+ getTargetStreamer()->EmitDirectiveAMDGCNTarget(ExpectedTarget);
+
+ if (TM.getTargetTriple().getOS() == Triple::AMDHSA)
+ return;
+ }
if (TM.getTargetTriple().getOS() != Triple::AMDHSA &&
TM.getTargetTriple().getOS() != Triple::AMDPAL)
OpenPOWER on IntegriCloud