llvm.org GIT mirror llvm / 0392724
[AMDGPU] gfx908 target Differential Revision: https://reviews.llvm.org/D64429 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365525 91177308-0d34-0410-b5e6-96231b3b80d8 Stanislav Mekhanoshin a month ago
17 changed file(s) with 148 addition(s) and 7 deletion(s). Raw diff Collapse all Expand all
206206 names.
207207 ``gfx906`` ``amdgcn`` dGPU - xnack - Radeon Instinct MI50
208208 [off] - Radeon Instinct MI60
209 ``gfx908`` ``amdgcn`` dGPU - xnack *TBA*
210 [off]
211 sram-ecc
212 [on]
209213 ``gfx909`` ``amdgcn`` APU - xnack *TBA* (Raven Ridge 2)
210214 [on]
211215 .. TODO
673677 ``EF_AMDGPU_MACH_AMDGCN_GFX902`` 0x02d ``gfx902``
674678 ``EF_AMDGPU_MACH_AMDGCN_GFX904`` 0x02e ``gfx904``
675679 ``EF_AMDGPU_MACH_AMDGCN_GFX906`` 0x02f ``gfx906``
676 *reserved* 0x030 Reserved.
680 ``EF_AMDGPU_MACH_AMDGCN_GFX908`` 0x030 ``gfx908``
677681 ``EF_AMDGPU_MACH_AMDGCN_GFX909`` 0x031 ``gfx909``
678682 *reserved* 0x032 Reserved.
679683 ``EF_AMDGPU_MACH_AMDGCN_GFX1010`` 0x033 ``gfx1010``
701701 EF_AMDGPU_MACH_AMDGCN_GFX902 = 0x02d,
702702 EF_AMDGPU_MACH_AMDGCN_GFX904 = 0x02e,
703703 EF_AMDGPU_MACH_AMDGCN_GFX906 = 0x02f,
704 EF_AMDGPU_MACH_AMDGCN_GFX908 = 0x030,
704705 EF_AMDGPU_MACH_AMDGCN_GFX909 = 0x031,
705706 // AMDGCN GFX10.
706707 EF_AMDGPU_MACH_AMDGCN_GFX1010 = 0x033,
120120 GK_GFX902 = 61,
121121 GK_GFX904 = 62,
122122 GK_GFX906 = 63,
123 GK_GFX908 = 64,
123124 GK_GFX909 = 65,
124125
125126 GK_GFX1010 = 71,
409409 BCaseMask(EF_AMDGPU_MACH_AMDGCN_GFX902, EF_AMDGPU_MACH);
410410 BCaseMask(EF_AMDGPU_MACH_AMDGCN_GFX904, EF_AMDGPU_MACH);
411411 BCaseMask(EF_AMDGPU_MACH_AMDGCN_GFX906, EF_AMDGPU_MACH);
412 BCaseMask(EF_AMDGPU_MACH_AMDGCN_GFX908, EF_AMDGPU_MACH);
412413 BCaseMask(EF_AMDGPU_MACH_AMDGCN_GFX909, EF_AMDGPU_MACH);
413414 BCaseMask(EF_AMDGPU_MACH_AMDGCN_GFX1010, EF_AMDGPU_MACH);
414415 BCaseMask(EF_AMDGPU_MACH_AMDGCN_GFX1011, EF_AMDGPU_MACH);
6161
6262 // This table should be sorted by the value of GPUKind
6363 // Don't bother listing the implicitly true features
64 constexpr GPUInfo AMDGCNGPUs[36] = {
64 constexpr GPUInfo AMDGCNGPUs[37] = {
6565 // Name Canonical Kind Features
6666 // Name
6767 {{"gfx600"}, {"gfx600"}, GK_GFX600, FEATURE_FAST_FMA_F32},
9696 {{"gfx902"}, {"gfx902"}, GK_GFX902, FEATURE_FAST_FMA_F32|FEATURE_FAST_DENORMAL_F32},
9797 {{"gfx904"}, {"gfx904"}, GK_GFX904, FEATURE_FAST_FMA_F32|FEATURE_FAST_DENORMAL_F32},
9898 {{"gfx906"}, {"gfx906"}, GK_GFX906, FEATURE_FAST_FMA_F32|FEATURE_FAST_DENORMAL_F32},
99 {{"gfx908"}, {"gfx908"}, GK_GFX908, FEATURE_FAST_FMA_F32|FEATURE_FAST_DENORMAL_F32},
99100 {{"gfx909"}, {"gfx909"}, GK_GFX909, FEATURE_FAST_FMA_F32|FEATURE_FAST_DENORMAL_F32},
100101 {{"gfx1010"}, {"gfx1010"}, GK_GFX1010, FEATURE_FAST_FMA_F32|FEATURE_FAST_DENORMAL_F32},
101102 {{"gfx1011"}, {"gfx1011"}, GK_GFX1011, FEATURE_FAST_FMA_F32|FEATURE_FAST_DENORMAL_F32},
196197 case GK_GFX902: return {9, 0, 2};
197198 case GK_GFX904: return {9, 0, 4};
198199 case GK_GFX906: return {9, 0, 6};
200 case GK_GFX908: return {9, 0, 8};
199201 case GK_GFX909: return {9, 0, 9};
200202 case GK_GFX1010: return {10, 1, 0};
201203 case GK_GFX1011: return {10, 1, 1};
383383 "Has v_dot2_f32_f16, v_dot2_i32_i16, v_dot2_u32_u16, v_dot4_u32_u8, v_dot8_u32_u4 instructions"
384384 >;
385385
386 def FeatureDot3Insts : SubtargetFeature<"dot3-insts",
387 "HasDot3Insts",
388 "true",
389 "Has v_dot8c_i32_i4 instruction"
390 >;
391
392 def FeatureDot4Insts : SubtargetFeature<"dot4-insts",
393 "HasDot4Insts",
394 "true",
395 "Has v_dot2c_i32_i16 instruction"
396 >;
397
386398 def FeatureDot5Insts : SubtargetFeature<"dot5-insts",
387399 "HasDot5Insts",
388400 "true",
393405 "HasDot6Insts",
394406 "true",
395407 "Has v_dot4c_i32_i8 instruction"
408 >;
409
410 def FeatureMAIInsts : SubtargetFeature<"mai-insts",
411 "HasMAIInsts",
412 "true",
413 "Has mAI instructions"
414 >;
415
416 def FeaturePkFmacF16Inst : SubtargetFeature<"pk-fmac-f16-inst",
417 "HasPkFmacF16Inst",
418 "true",
419 "Has v_pk_fmac_f16 instruction"
420 >;
421
422 def FeatureAtomicFaddInsts : SubtargetFeature<"atomic-fadd-insts",
423 "HasAtomicFaddInsts",
424 "true",
425 "Has buffer_atomic_add_f32, buffer_atomic_pk_add_f16, global_atomic_add_f32, "
426 "global_atomic_pk_add_f16 instructions"
396427 >;
397428
398429 def FeatureDoesNotSupportSRAMECC : SubtargetFeature<"no-sram-ecc-support",
752783 FeatureDot1Insts,
753784 FeatureDot2Insts,
754785 FeatureDoesNotSupportXNACK,
786 FeatureCodeObjectV3]>;
787
788 def FeatureISAVersion9_0_8 : FeatureSet<
789 [FeatureGFX9,
790 HalfRate64Ops,
791 FeatureFmaMixInsts,
792 FeatureLDSBankCount32,
793 FeatureDLInsts,
794 FeatureDot1Insts,
795 FeatureDot2Insts,
796 FeatureDot3Insts,
797 FeatureDot4Insts,
798 FeatureDot5Insts,
799 FeatureDot6Insts,
800 FeatureMAIInsts,
801 FeaturePkFmacF16Inst,
802 FeatureAtomicFaddInsts,
803 FeatureSRAMECC,
755804 FeatureCodeObjectV3]>;
756805
757806 def FeatureISAVersion9_0_9 : FeatureSet<
10681117 def HasDot2Insts : Predicate<"Subtarget->hasDot2Insts()">,
10691118 AssemblerPredicate<"FeatureDot2Insts">;
10701119
1120 def HasDot3Insts : Predicate<"Subtarget->hasDot3Insts()">,
1121 AssemblerPredicate<"FeatureDot3Insts">;
1122
1123 def HasDot4Insts : Predicate<"Subtarget->hasDot4Insts()">,
1124 AssemblerPredicate<"FeatureDot4Insts">;
1125
10711126 def HasDot5Insts : Predicate<"Subtarget->hasDot5Insts()">,
10721127 AssemblerPredicate<"FeatureDot5Insts">;
10731128
10741129 def HasDot6Insts : Predicate<"Subtarget->hasDot6Insts()">,
10751130 AssemblerPredicate<"FeatureDot6Insts">;
1131
1132 def HasMAIInsts : Predicate<"Subtarget->hasMAIInsts()">,
1133 AssemblerPredicate<"FeatureMAIInsts">;
1134
1135 def HasPkFmacF16Inst : Predicate<"Subtarget->hasPkFmacF16Inst()">,
1136 AssemblerPredicate<"FeaturePkFmacF16Inst">;
1137
1138 def HasAtomicFaddInsts : Predicate<"Subtarget->hasAtomicFaddInsts()">,
1139 AssemblerPredicate<"FeatureAtomicFaddInsts">;
10761140
10771141 def HasOffset3fBug : Predicate<"!Subtarget->hasOffset3fBug()">,
10781142 AssemblerPredicate<"FeatureOffset3fBug">;
233233 HasDLInsts(false),
234234 HasDot1Insts(false),
235235 HasDot2Insts(false),
236 HasDot3Insts(false),
237 HasDot4Insts(false),
236238 HasDot5Insts(false),
237239 HasDot6Insts(false),
240 HasMAIInsts(false),
241 HasPkFmacF16Inst(false),
242 HasAtomicFaddInsts(false),
238243 EnableSRAMECC(false),
239244 DoesNotSupportSRAMECC(false),
240245 HasNoSdstCMPX(false),
336336 bool HasDLInsts;
337337 bool HasDot1Insts;
338338 bool HasDot2Insts;
339 bool HasDot3Insts;
340 bool HasDot4Insts;
339341 bool HasDot5Insts;
340342 bool HasDot6Insts;
343 bool HasMAIInsts;
344 bool HasPkFmacF16Inst;
345 bool HasAtomicFaddInsts;
341346 bool EnableSRAMECC;
342347 bool DoesNotSupportSRAMECC;
343348 bool HasNoSdstCMPX;
778783 return HasDot2Insts;
779784 }
780785
786 bool hasDot3Insts() const {
787 return HasDot3Insts;
788 }
789
790 bool hasDot4Insts() const {
791 return HasDot4Insts;
792 }
793
781794 bool hasDot5Insts() const {
782795 return HasDot5Insts;
783796 }
784797
785798 bool hasDot6Insts() const {
786799 return HasDot6Insts;
800 }
801
802 bool hasMAIInsts() const {
803 return HasMAIInsts;
804 }
805
806 bool hasPkFmacF16Inst() const {
807 return HasPkFmacF16Inst;
808 }
809
810 bool hasAtomicFaddInsts() const {
811 return HasAtomicFaddInsts;
787812 }
788813
789814 bool isSRAMECCEnabled() const {
159159 FeatureISAVersion9_0_6.Features
160160 >;
161161
162 def : ProcessorModel<"gfx908", SIQuarterSpeedModel,
163 FeatureISAVersion9_0_8.Features
164 >;
165
162166 def : ProcessorModel<"gfx909", SIQuarterSpeedModel,
163167 FeatureISAVersion9_0_9.Features
164168 >;
9090 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX902: AK = GK_GFX902; break;
9191 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX904: AK = GK_GFX904; break;
9292 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX906: AK = GK_GFX906; break;
93 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX908: AK = GK_GFX908; break;
9394 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX909: AK = GK_GFX909; break;
9495 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1010: AK = GK_GFX1010; break;
9596 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1011: AK = GK_GFX1011; break;
140141 case GK_GFX902: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX902;
141142 case GK_GFX904: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX904;
142143 case GK_GFX906: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX906;
144 case GK_GFX908: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX908;
143145 case GK_GFX909: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX909;
144146 case GK_GFX1010: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1010;
145147 case GK_GFX1011: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1011;
4545 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx902 < %s | llvm-readobj -file-headers - | FileCheck --check-prefixes=ALL,ARCH-GCN,GFX902 %s
4646 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx904 < %s | llvm-readobj -file-headers - | FileCheck --check-prefixes=ALL,ARCH-GCN,GFX904 %s
4747 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx906 < %s | llvm-readobj -file-headers - | FileCheck --check-prefixes=ALL,ARCH-GCN,GFX906 %s
48 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx908 < %s | llvm-readobj -file-headers - | FileCheck --check-prefixes=ALL,ARCH-GCN,GFX908 %s
4849 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx909 < %s | llvm-readobj -file-headers - | FileCheck --check-prefixes=ALL,ARCH-GCN,GFX909 %s
4950 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx1010 < %s | llvm-readobj -file-headers - | FileCheck --check-prefixes=ALL,ARCH-GCN,GFX1010 %s
5051 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx1011 < %s | llvm-readobj -file-headers - | FileCheck --check-prefixes=ALL,ARCH-GCN,GFX1011 %s
8889 ; GFX902-NEXT: EF_AMDGPU_XNACK (0x100)
8990 ; GFX904: EF_AMDGPU_MACH_AMDGCN_GFX904 (0x2E)
9091 ; GFX906: EF_AMDGPU_MACH_AMDGCN_GFX906 (0x2F)
92 ; GFX908: EF_AMDGPU_MACH_AMDGCN_GFX908 (0x30)
93 ; GFX908-NEXT: EF_AMDGPU_SRAM_ECC (0x200)
9194 ; GFX909: EF_AMDGPU_MACH_AMDGCN_GFX909 (0x31)
9295 ; GFX1010: EF_AMDGPU_MACH_AMDGCN_GFX1010 (0x33)
9396 ; GFX1011: EF_AMDGPU_MACH_AMDGCN_GFX1011 (0x34)
55 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx906 -mattr=-sram-ecc < %s | llvm-readobj --file-headers - | FileCheck --check-prefixes=NO-SRAM-ECC-GFX906 %s
66 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx906 -mattr=+sram-ecc < %s | llvm-readobj --file-headers - | FileCheck --check-prefixes=SRAM-ECC-GFX906 %s
77 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx906 -mattr=+sram-ecc,+xnack < %s | llvm-readobj --file-headers - | FileCheck --check-prefixes=SRAM-ECC-XNACK-GFX906 %s
8
9 ; RUN: llc -filetype=obj -march=amdgcn -mcpu=gfx908 < %s | llvm-readobj -file-headers - | FileCheck --check-prefix=SRAM-ECC-GFX908 %s
810
911 ; NO-SRAM-ECC-GFX902: Flags [
1012 ; NO-SRAM-ECC-GFX902-NEXT: EF_AMDGPU_MACH_AMDGCN_GFX902 (0x2D)
3234 ; SRAM-ECC-XNACK-GFX906-NEXT: EF_AMDGPU_XNACK (0x100)
3335 ; SRAM-ECC-XNACK-GFX906-NEXT: ]
3436
37 ; SRAM-ECC-GFX908: Flags [ (0x230)
38 ; SRAM-ECC-GFX908: EF_AMDGPU_MACH_AMDGCN_GFX908 (0x30)
39 ; SRAM-ECC-GFX908: EF_AMDGPU_SRAM_ECC (0x200)
40 ; SRAM-ECC-GFX908: ]
41
3542 define amdgpu_kernel void @elf_header() {
3643 ret void
3744 }
2222 ; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=gfx902 -mattr=-code-object-v3 | FileCheck --check-prefix=HSA --check-prefix=HSA-GFX902 %s
2323 ; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=gfx904 -mattr=-code-object-v3 | FileCheck --check-prefix=HSA --check-prefix=HSA-GFX904 %s
2424 ; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=gfx906 -mattr=-code-object-v3 | FileCheck --check-prefix=HSA --check-prefix=HSA-GFX906 %s
25 ; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=gfx908 -mattr=-code-object-v3 | FileCheck --check-prefix=HSA --check-prefix=HSA-GFX908 %s
2526 ; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=gfx909 -mattr=-code-object-v3 | FileCheck --check-prefix=HSA --check-prefix=HSA-GFX909 %s
2627 ; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=gfx1010 -mattr=-code-object-v3 | FileCheck --check-prefix=HSA --check-prefix=HSA-GFX1010 %s
2728 ; RUN: llc < %s -mtriple=amdgcn--amdhsa -mcpu=gfx1011 -mattr=-code-object-v3 | FileCheck --check-prefix=HSA --check-prefix=HSA-GFX1011 %s
4344 ; HSA-GFX902: .hsa_code_object_isa 9,0,2,"AMD","AMDGPU"
4445 ; HSA-GFX904: .hsa_code_object_isa 9,0,4,"AMD","AMDGPU"
4546 ; HSA-GFX906: .hsa_code_object_isa 9,0,6,"AMD","AMDGPU"
47 ; HSA-GFX908: .hsa_code_object_isa 9,0,8,"AMD","AMDGPU"
4648 ; HSA-GFX909: .hsa_code_object_isa 9,0,9,"AMD","AMDGPU"
4749 ; HSA-GFX1010: .hsa_code_object_isa 10,1,0,"AMD","AMDGPU"
4850 ; HSA-GFX1011: .hsa_code_object_isa 10,1,1,"AMD","AMDGPU"
0 // RUN: llvm-mc -arch=amdgcn -mcpu=gfx906 -show-encoding %s | FileCheck %s
1 // RUN: llvm-mc -arch=amdgcn -mcpu=gfx908 -show-encoding %s | FileCheck %s
12
23 //
34 // VOP2 Instructions.
0 # RUN: llvm-mc -arch=amdgcn -mcpu=gfx906 -disassemble -show-encoding < %s | FileCheck %s
1 # RUN: llvm-mc -arch=amdgcn -mcpu=gfx908 -disassemble -show-encoding < %s | FileCheck %s
12
23 # CHECK: v_fmac_f32_e32 v5, v1, v2 ; encoding: [0x01,0x05,0x0a,0x76]
34 0x01,0x05,0x0a,0x76
9191 # RUN: llvm-readobj -S --file-headers %t.o.31 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX906 %s
9292 # RUN: obj2yaml %t.o.31 | FileCheck --check-prefixes=YAML-GFX906 %s
9393 # RUN: yaml2obj -docnum=32 %s > %t.o.32
94 # RUN: llvm-readobj -S --file-headers %t.o.32 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX909 %s
95 # RUN: obj2yaml %t.o.32 | FileCheck --check-prefixes=YAML-GFX909 %s
94 # RUN: llvm-readobj -s -file-headers %t.o.32 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX908 %s
95 # RUN: obj2yaml %t.o.32 | FileCheck --check-prefixes=YAML-GFX908 %s
9696 # RUN: yaml2obj -docnum=33 %s > %t.o.33
97 # RUN: llvm-readobj -s -file-headers %t.o.33 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX1010 %s
98 # RUN: obj2yaml %t.o.33 | FileCheck --check-prefixes=YAML-GFX1010 %s
97 # RUN: llvm-readobj -s -file-headers %t.o.33 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX909 %s
98 # RUN: obj2yaml %t.o.33 | FileCheck --check-prefixes=YAML-GFX909 %s
99 # RUN: yaml2obj -docnum=34 %s > %t.o.34
100 # RUN: llvm-readobj -s -file-headers %t.o.34 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX1010 %s
101 # RUN: obj2yaml %t.o.34 | FileCheck --check-prefixes=YAML-GFX1010 %s
99102
100103 # ELF-ALL: Flags [
101104 # ELF-R600: EF_AMDGPU_MACH_R600_R600 (0x1)
129132 # ELF-GFX902: EF_AMDGPU_MACH_AMDGCN_GFX902 (0x2D)
130133 # ELF-GFX904: EF_AMDGPU_MACH_AMDGCN_GFX904 (0x2E)
131134 # ELF-GFX906: EF_AMDGPU_MACH_AMDGCN_GFX906 (0x2F)
135 # ELF-GFX908: EF_AMDGPU_MACH_AMDGCN_GFX908 (0x30)
132136 # ELF-GFX909: EF_AMDGPU_MACH_AMDGCN_GFX909 (0x31)
133137 # ELF-GFX1010: EF_AMDGPU_MACH_AMDGCN_GFX1010 (0x33)
134138 # ELF-ALL: ]
164168 # YAML-GFX902: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX902 ]
165169 # YAML-GFX904: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX904 ]
166170 # YAML-GFX906: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX906 ]
171 # YAML-GFX908: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX908 ]
167172 # YAML-GFX909: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX909 ]
168173 # YAML-GFX1010: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX1010 ]
169174
516521 OSABI: ELFOSABI_NONE
517522 Type: ET_REL
518523 Machine: EM_AMDGPU
524 Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX908 ]
525 ...
526
527 # Doc33
528 --- !ELF
529 FileHeader:
530 Class: ELFCLASS64
531 Data: ELFDATA2LSB
532 OSABI: ELFOSABI_NONE
533 Type: ET_REL
534 Machine: EM_AMDGPU
519535 Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX909 ]
520536 ...
521537
522 # Doc33
538 # Doc34
523539 --- !ELF
524540 FileHeader:
525541 Class: ELFCLASS64
529545 Machine: EM_AMDGPU
530546 Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX1010 ]
531547 ...
548
12931293 LLVM_READOBJ_ENUM_ENT(ELF, EF_AMDGPU_MACH_AMDGCN_GFX902),
12941294 LLVM_READOBJ_ENUM_ENT(ELF, EF_AMDGPU_MACH_AMDGCN_GFX904),
12951295 LLVM_READOBJ_ENUM_ENT(ELF, EF_AMDGPU_MACH_AMDGCN_GFX906),
1296 LLVM_READOBJ_ENUM_ENT(ELF, EF_AMDGPU_MACH_AMDGCN_GFX908),
12961297 LLVM_READOBJ_ENUM_ENT(ELF, EF_AMDGPU_MACH_AMDGCN_GFX909),
12971298 LLVM_READOBJ_ENUM_ENT(ELF, EF_AMDGPU_MACH_AMDGCN_GFX1010),
12981299 LLVM_READOBJ_ENUM_ENT(ELF, EF_AMDGPU_MACH_AMDGCN_GFX1011),