Lines Matching full:elf

20 #include "llvm/BinaryFormat/ELF.h"
58 case ELF::EF_AMDGPU_MACH_R600_R600: AK = GK_R600; break;
59 case ELF::EF_AMDGPU_MACH_R600_R630: AK = GK_R630; break;
60 case ELF::EF_AMDGPU_MACH_R600_RS880: AK = GK_RS880; break;
61 case ELF::EF_AMDGPU_MACH_R600_RV670: AK = GK_RV670; break;
62 case ELF::EF_AMDGPU_MACH_R600_RV710: AK = GK_RV710; break;
63 case ELF::EF_AMDGPU_MACH_R600_RV730: AK = GK_RV730; break;
64 case ELF::EF_AMDGPU_MACH_R600_RV770: AK = GK_RV770; break;
65 case ELF::EF_AMDGPU_MACH_R600_CEDAR: AK = GK_CEDAR; break;
66 case ELF::EF_AMDGPU_MACH_R600_CYPRESS: AK = GK_CYPRESS; break;
67 case ELF::EF_AMDGPU_MACH_R600_JUNIPER: AK = GK_JUNIPER; break;
68 case ELF::EF_AMDGPU_MACH_R600_REDWOOD: AK = GK_REDWOOD; break;
69 case ELF::EF_AMDGPU_MACH_R600_SUMO: AK = GK_SUMO; break;
70 case ELF::EF_AMDGPU_MACH_R600_BARTS: AK = GK_BARTS; break;
71 case ELF::EF_AMDGPU_MACH_R600_CAICOS: AK = GK_CAICOS; break;
72 case ELF::EF_AMDGPU_MACH_R600_CAYMAN: AK = GK_CAYMAN; break;
73 case ELF::EF_AMDGPU_MACH_R600_TURKS: AK = GK_TURKS; break;
74 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX600: AK = GK_GFX600; break;
75 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX601: AK = GK_GFX601; break;
76 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX602: AK = GK_GFX602; break;
77 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX700: AK = GK_GFX700; break;
78 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX701: AK = GK_GFX701; break;
79 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX702: AK = GK_GFX702; break;
80 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX703: AK = GK_GFX703; break;
81 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX704: AK = GK_GFX704; break;
82 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX705: AK = GK_GFX705; break;
83 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX801: AK = GK_GFX801; break;
84 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX802: AK = GK_GFX802; break;
85 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX803: AK = GK_GFX803; break;
86 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX805: AK = GK_GFX805; break;
87 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX810: AK = GK_GFX810; break;
88 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX900: AK = GK_GFX900; break;
89 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX902: AK = GK_GFX902; break;
90 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX904: AK = GK_GFX904; break;
91 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX906: AK = GK_GFX906; break;
92 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX908: AK = GK_GFX908; break;
93 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX909: AK = GK_GFX909; break;
94 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX90A: AK = GK_GFX90A; break;
95 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX90C: AK = GK_GFX90C; break;
96 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX940: AK = GK_GFX940; break;
97 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX941: AK = GK_GFX941; break;
98 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX942: AK = GK_GFX942; break;
99 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX950: AK = GK_GFX950; break;
100 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1010: AK = GK_GFX1010; break;
101 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1011: AK = GK_GFX1011; break;
102 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1012: AK = GK_GFX1012; break;
103 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1013: AK = GK_GFX1013; break;
104 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1030: AK = GK_GFX1030; break;
105 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1031: AK = GK_GFX1031; break;
106 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1032: AK = GK_GFX1032; break;
107 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1033: AK = GK_GFX1033; break;
108 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1034: AK = GK_GFX1034; break;
109 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1035: AK = GK_GFX1035; break;
110 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1036: AK = GK_GFX1036; break;
111 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1100: AK = GK_GFX1100; break;
112 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1101: AK = GK_GFX1101; break;
113 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1102: AK = GK_GFX1102; break;
114 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1103: AK = GK_GFX1103; break;
115 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1150: AK = GK_GFX1150; break;
116 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1151: AK = GK_GFX1151; break;
117 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1152: AK = GK_GFX1152; break;
118 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1153: AK = GK_GFX1153; break;
119 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1200: AK = GK_GFX1200; break;
120 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX1201: AK = GK_GFX1201; break;
121 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX9_GENERIC: AK = GK_GFX9_GENERIC; break;
122 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX9_4_GENERIC: AK = GK_GFX9_4_GENERIC; break;
123 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_1_GENERIC: AK = GK_GFX10_1_GENERIC; break;
124 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_3_GENERIC: AK = GK_GFX10_3_GENERIC; break;
125 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX11_GENERIC: AK = GK_GFX11_GENERIC; break;
126 case ELF::EF_AMDGPU_MACH_AMDGCN_GFX12_GENERIC: AK = GK_GFX12_GENERIC; break;
127 case ELF::EF_AMDGPU_MACH_NONE: AK = GK_NONE; break;
145 case GK_R600: return ELF::EF_AMDGPU_MACH_R600_R600;
146 case GK_R630: return ELF::EF_AMDGPU_MACH_R600_R630;
147 case GK_RS880: return ELF::EF_AMDGPU_MACH_R600_RS880;
148 case GK_RV670: return ELF::EF_AMDGPU_MACH_R600_RV670;
149 case GK_RV710: return ELF::EF_AMDGPU_MACH_R600_RV710;
150 case GK_RV730: return ELF::EF_AMDGPU_MACH_R600_RV730;
151 case GK_RV770: return ELF::EF_AMDGPU_MACH_R600_RV770;
152 case GK_CEDAR: return ELF::EF_AMDGPU_MACH_R600_CEDAR;
153 case GK_CYPRESS: return ELF::EF_AMDGPU_MACH_R600_CYPRESS;
154 case GK_JUNIPER: return ELF::EF_AMDGPU_MACH_R600_JUNIPER;
155 case GK_REDWOOD: return ELF::EF_AMDGPU_MACH_R600_REDWOOD;
156 case GK_SUMO: return ELF::EF_AMDGPU_MACH_R600_SUMO;
157 case GK_BARTS: return ELF::EF_AMDGPU_MACH_R600_BARTS;
158 case GK_CAICOS: return ELF::EF_AMDGPU_MACH_R600_CAICOS;
159 case GK_CAYMAN: return ELF::EF_AMDGPU_MACH_R600_CAYMAN;
160 case GK_TURKS: return ELF::EF_AMDGPU_MACH_R600_TURKS;
161 case GK_GFX600: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX600;
162 case GK_GFX601: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX601;
163 case GK_GFX602: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX602;
164 case GK_GFX700: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX700;
165 case GK_GFX701: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX701;
166 case GK_GFX702: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX702;
167 case GK_GFX703: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX703;
168 case GK_GFX704: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX704;
169 case GK_GFX705: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX705;
170 case GK_GFX801: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX801;
171 case GK_GFX802: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX802;
172 case GK_GFX803: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX803;
173 case GK_GFX805: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX805;
174 case GK_GFX810: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX810;
175 case GK_GFX900: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX900;
176 case GK_GFX902: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX902;
177 case GK_GFX904: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX904;
178 case GK_GFX906: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX906;
179 case GK_GFX908: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX908;
180 case GK_GFX909: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX909;
181 case GK_GFX90A: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX90A;
182 case GK_GFX90C: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX90C;
183 case GK_GFX940: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX940;
184 case GK_GFX941: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX941;
185 case GK_GFX942: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX942;
186 case GK_GFX950: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX950;
187 case GK_GFX1010: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1010;
188 case GK_GFX1011: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1011;
189 case GK_GFX1012: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1012;
190 case GK_GFX1013: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1013;
191 case GK_GFX1030: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1030;
192 case GK_GFX1031: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1031;
193 case GK_GFX1032: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1032;
194 case GK_GFX1033: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1033;
195 case GK_GFX1034: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1034;
196 case GK_GFX1035: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1035;
197 case GK_GFX1036: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1036;
198 case GK_GFX1100: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1100;
199 case GK_GFX1101: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1101;
200 case GK_GFX1102: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1102;
201 case GK_GFX1103: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1103;
202 case GK_GFX1150: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1150;
203 case GK_GFX1151: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1151;
204 case GK_GFX1152: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1152;
205 case GK_GFX1153: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1153;
206 case GK_GFX1200: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1200;
207 case GK_GFX1201: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX1201;
208 case GK_GFX9_GENERIC: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX9_GENERIC;
209 case GK_GFX9_4_GENERIC: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX9_4_GENERIC;
210 case GK_GFX10_1_GENERIC: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_1_GENERIC;
211 case GK_GFX10_3_GENERIC: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_3_GENERIC;
212 case GK_GFX11_GENERIC: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX11_GENERIC;
213 case GK_GFX12_GENERIC: return ELF::EF_AMDGPU_MACH_AMDGCN_GFX12_GENERIC;
214 case GK_NONE: return ELF::EF_AMDGPU_MACH_NONE;
267 case ELF::STT_AMDGPU_HSA_KERNEL:
676 NoteFlags = ELF::SHF_ALLOC;
680 Context.getELFSection(ElfNote::SectionName, ELF::SHT_NOTE, NoteFlags));
761 EFlagsV3 |= ELF::EF_AMDGPU_FEATURE_XNACK_V3;
764 EFlagsV3 |= ELF::EF_AMDGPU_FEATURE_SRAMECC_V3;
778 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_XNACK_UNSUPPORTED_V4;
781 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_XNACK_ANY_V4;
784 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_XNACK_OFF_V4;
787 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_XNACK_ON_V4;
793 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_SRAMECC_UNSUPPORTED_V4;
796 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_SRAMECC_ANY_V4;
799 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_SRAMECC_OFF_V4;
802 EFlagsV4 |= ELF::EF_AMDGPU_FEATURE_SRAMECC_ON_V4;
840 if (Version > ELF::EF_AMDGPU_GENERIC_VERSION_MAX)
843 " - no ELF flag can represent this version!");
844 Flags |= (Version << ELF::EF_AMDGPU_GENERIC_VERSION_OFFSET);
869 SymbolELF->setType(ELF::STT_OBJECT);
872 SymbolELF->setBinding(ELF::STB_GLOBAL);
879 SymbolELF->setIndex(ELF::SHN_AMDGPU_LDS);
893 EmitNote(ElfNote::NoteNameV2, DescSZ, ELF::NT_AMD_HSA_ISA_NAME,
920 EmitNote(ElfNote::NoteNameV3, DescSZ, ELF::NT_AMDGPU_METADATA,
974 KernelDescriptorSymbol->setType(ELF::STT_OBJECT);
980 if (KernelCodeSymbol->getVisibility() == ELF::STV_DEFAULT)
981 KernelCodeSymbol->setVisibility(ELF::STV_PROTECTED);