OSDN Git Service

AMDGPU/NFC: Move AMDGPU specific note types to ELF.h
authorKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Thu, 12 Oct 2017 18:59:54 +0000 (18:59 +0000)
committerKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Thu, 12 Oct 2017 18:59:54 +0000 (18:59 +0000)
Differential Revision: https://reviews.llvm.org/D38747

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315608 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/BinaryFormat/ELF.h
lib/Target/AMDGPU/AMDGPUPTNote.h
lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h

index 5a0cf2c..99d8135 100644 (file)
@@ -1369,6 +1369,14 @@ enum {
   NT_GNU_GOLD_VERSION = 4,
 };
 
+// AMDGPU specific notes.
+enum {
+  // Note types with values between 0 and 9 (inclusive) are reserved.
+  NT_AMD_AMDGPU_HSA_METADATA = 10,
+  NT_AMD_AMDGPU_ISA = 11,
+  NT_AMD_AMDGPU_PAL_METADATA = 12
+};
+
 enum {
   GNU_ABI_TAG_LINUX = 0,
   GNU_ABI_TAG_HURD = 1,
index de274df..b50a2eb 100644 (file)
@@ -25,7 +25,7 @@ const char SectionName[] = ".note";
 
 const char NoteName[] = "AMD";
 
-// TODO: Move this enum to include/llvm/Support so it can be used in tools?
+// TODO: Remove this file once we drop code object v2.
 enum NoteType{
     NT_AMDGPU_HSA_RESERVED_0 = 0,
     NT_AMDGPU_HSA_CODE_OBJECT_VERSION = 1,
@@ -37,9 +37,6 @@ enum NoteType{
     NT_AMDGPU_HSA_RESERVED_7 = 7,
     NT_AMDGPU_HSA_RESERVED_8 = 8,
     NT_AMDGPU_HSA_RESERVED_9 = 9,
-    NT_AMDGPU_HSA_CODE_OBJECT_METADATA = 10,
-    NT_AMD_AMDGPU_ISA = 11,
-    NT_AMDGPU_PAL_METADATA = 12,
     NT_AMDGPU_HSA_HLDEBUG_DEBUG = 101,
     NT_AMDGPU_HSA_HLDEBUG_TARGET = 102
 };
index 24a5f1c..4d4fdf6 100644 (file)
@@ -128,7 +128,7 @@ MCELFStreamer &AMDGPUTargetELFStreamer::getStreamer() {
 }
 
 void AMDGPUTargetELFStreamer::EmitAMDGPUNote(
-    const MCExpr *DescSZ, ElfNote::NoteType Type,
+    const MCExpr *DescSZ, unsigned NoteType,
     function_ref<void(MCELFStreamer &)> EmitDesc) {
   auto &S = getStreamer();
   auto &Context = S.getContext();
@@ -140,7 +140,7 @@ void AMDGPUTargetELFStreamer::EmitAMDGPUNote(
     ElfNote::SectionName, ELF::SHT_NOTE, ELF::SHF_ALLOC));
   S.EmitIntValue(NameSZ, 4);                                  // namesz
   S.EmitValue(DescSZ, 4);                                     // descz
-  S.EmitIntValue(Type, 4);                                    // type
+  S.EmitIntValue(NoteType, 4);                                // type
   S.EmitBytes(StringRef(ElfNote::NoteName, NameSZ));          // name
   S.EmitValueToAlignment(4, 0, 1, 0);                         // padding 0
   EmitDesc(S);                                                // desc
@@ -225,7 +225,7 @@ bool AMDGPUTargetELFStreamer::EmitHSAMetadata(
 
   EmitAMDGPUNote(
     DescSZ,
-    ElfNote::NT_AMDGPU_HSA_CODE_OBJECT_METADATA,
+    ELF::NT_AMD_AMDGPU_HSA_METADATA,
     [&](MCELFStreamer &OS) {
       OS.EmitLabel(DescBegin);
       OS.EmitBytes(HSAMetadataString);
@@ -239,7 +239,7 @@ bool AMDGPUTargetELFStreamer::EmitPALMetadata(
     const PALMD::Metadata &PALMetadata) {
   EmitAMDGPUNote(
     MCConstantExpr::create(PALMetadata.size() * sizeof(uint32_t), getContext()),
-    ElfNote::NT_AMDGPU_PAL_METADATA,
+    ELF::NT_AMD_AMDGPU_PAL_METADATA,
     [&](MCELFStreamer &OS){
       for (auto I : PALMetadata)
         OS.EmitIntValue(I, sizeof(uint32_t));
index d923d67..7791f0d 100644 (file)
@@ -78,8 +78,7 @@ public:
 class AMDGPUTargetELFStreamer final : public AMDGPUTargetStreamer {
   MCStreamer &Streamer;
 
-  void EmitAMDGPUNote(const MCExpr *DescSize,
-                      AMDGPU::ElfNote::NoteType Type,
+  void EmitAMDGPUNote(const MCExpr *DescSize, unsigned NoteType,
                       function_ref<void(MCELFStreamer &)> EmitDesc);
 
 public: