diff options
author | Konstantin Zhuravlyov <kzhuravl_dev@outlook.com> | 2016-10-20 18:22:36 +0000 |
---|---|---|
committer | Konstantin Zhuravlyov <kzhuravl_dev@outlook.com> | 2016-10-20 18:22:36 +0000 |
commit | 521e5ef4ceb2f2cf67e44b2dc0442a6c9ca880fb (patch) | |
tree | 6ce1b4ccb4bacf1a66086d1d3fbdbd054f2495f2 /llvm/lib | |
parent | 08326b6256b9d98d317ba8fc86678f7703480a14 (diff) | |
download | bcm5719-llvm-521e5ef4ceb2f2cf67e44b2dc0442a6c9ca880fb.tar.gz bcm5719-llvm-521e5ef4ceb2f2cf67e44b2dc0442a6c9ca880fb.zip |
[AMDGPU] Make note record name a static const member of target streamer
Differential Revision: https://reviews.llvm.org/D25746
llvm-svn: 284760
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp | 27 | ||||
-rw-r--r-- | llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h | 1 |
2 files changed, 15 insertions, 13 deletions
diff --git a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp index c8938648b0e..fe0d10ab797 100644 --- a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp +++ b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp @@ -86,6 +86,8 @@ void AMDGPUTargetAsmStreamer::EmitAMDGPUHsaProgramScopeGlobal( // AMDGPUTargetELFStreamer //===----------------------------------------------------------------------===// +const char *AMDGPUTargetELFStreamer::NoteName = "AMD"; + AMDGPUTargetELFStreamer::AMDGPUTargetELFStreamer(MCStreamer &S) : AMDGPUTargetStreamer(S), Streamer(S) { } @@ -100,15 +102,14 @@ AMDGPUTargetELFStreamer::EmitDirectiveHSACodeObjectVersion(uint32_t Major, MCSectionELF *Note = OS.getContext().getELFSection(".note", ELF::SHT_NOTE, ELF::SHF_ALLOC); - unsigned NameSZ = 4; - OS.PushSection(); OS.SwitchSection(Note); - OS.EmitIntValue(NameSZ, 4); // namesz - OS.EmitIntValue(8, 4); // descz - OS.EmitIntValue(NT_AMDGPU_HSA_CODE_OBJECT_VERSION, 4); // type - OS.EmitBytes(StringRef("AMD", NameSZ)); // name - OS.EmitIntValue(Major, 4); // desc + OS.EmitIntValue(strlen(NoteName) + 1, 4); // namesz + OS.EmitIntValue(8, 4); // descz + OS.EmitIntValue(NT_AMDGPU_HSA_CODE_OBJECT_VERSION, 4); // type + OS.EmitBytes(StringRef(NoteName, strlen(NoteName) + 1)); // name + OS.EmitValueToAlignment(4); + OS.EmitIntValue(Major, 4); // desc OS.EmitIntValue(Minor, 4); OS.EmitValueToAlignment(4); OS.PopSection(); @@ -124,7 +125,6 @@ AMDGPUTargetELFStreamer::EmitDirectiveHSACodeObjectISA(uint32_t Major, MCSectionELF *Note = OS.getContext().getELFSection(".note", ELF::SHT_NOTE, ELF::SHF_ALLOC); - unsigned NameSZ = 4; uint16_t VendorNameSize = VendorName.size() + 1; uint16_t ArchNameSize = ArchName.size() + 1; unsigned DescSZ = sizeof(VendorNameSize) + sizeof(ArchNameSize) + @@ -133,11 +133,12 @@ AMDGPUTargetELFStreamer::EmitDirectiveHSACodeObjectISA(uint32_t Major, OS.PushSection(); OS.SwitchSection(Note); - OS.EmitIntValue(NameSZ, 4); // namesz - OS.EmitIntValue(DescSZ, 4); // descsz - OS.EmitIntValue(NT_AMDGPU_HSA_ISA, 4); // type - OS.EmitBytes(StringRef("AMD", 4)); // name - OS.EmitIntValue(VendorNameSize, 2); // desc + OS.EmitIntValue(strlen(NoteName) + 1, 4); // namesz + OS.EmitIntValue(DescSZ, 4); // descsz + OS.EmitIntValue(NT_AMDGPU_HSA_ISA, 4); // type + OS.EmitBytes(StringRef(NoteName, strlen(NoteName) + 1)); // name + OS.EmitValueToAlignment(4); + OS.EmitIntValue(VendorNameSize, 2); // desc OS.EmitIntValue(ArchNameSize, 2); OS.EmitIntValue(Major, 4); OS.EmitIntValue(Minor, 4); diff --git a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h index b3d59e8f396..809400d2fe7 100644 --- a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h +++ b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h @@ -71,6 +71,7 @@ class AMDGPUTargetELFStreamer : public AMDGPUTargetStreamer { NT_AMDGPU_HSA_HLDEBUG_TARGET = 102 }; + static const char *NoteName; MCStreamer &Streamer; public: |