Lines Matching refs:ArchSpec
25 static bool cores_match(const ArchSpec::Core core1, const ArchSpec::Core core2,
36 ArchSpec::Core core;
44 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_generic,
46 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv4,
48 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv4t,
50 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv5,
52 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv5e,
54 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv5t,
56 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv6,
58 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv6m,
60 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7,
62 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7l,
64 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7f,
66 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7s,
68 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7k,
70 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7m,
72 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7em,
74 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_xscale,
76 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumb,
78 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv4t,
80 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv5,
82 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv5e,
84 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv6,
86 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv6m,
88 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7,
90 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7f,
92 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7s,
94 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7k,
96 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7m,
98 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7em,
101 ArchSpec::eCore_arm_arm64, "arm64"},
103 ArchSpec::eCore_arm_armv8, "armv8"},
104 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv8l,
107 ArchSpec::eCore_arm_arm64e, "arm64e"},
109 ArchSpec::eCore_arm_arm64_32, "arm64_32"},
111 ArchSpec::eCore_arm_aarch64, "aarch64"},
114 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32,
116 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r2,
118 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r3,
120 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r5,
122 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r6,
124 {eByteOrderLittle, 4, 2, 4, llvm::Triple::mipsel, ArchSpec::eCore_mips32el,
127 ArchSpec::eCore_mips32r2el, "mipsr2el"},
129 ArchSpec::eCore_mips32r3el, "mipsr3el"},
131 ArchSpec::eCore_mips32r5el, "mipsr5el"},
133 ArchSpec::eCore_mips32r6el, "mipsr6el"},
136 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64,
138 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r2,
140 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r3,
142 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r5,
144 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r6,
147 ArchSpec::eCore_mips64el, "mips64el"},
149 ArchSpec::eCore_mips64r2el, "mips64r2el"},
151 ArchSpec::eCore_mips64r3el, "mips64r3el"},
153 ArchSpec::eCore_mips64r5el, "mips64r5el"},
155 ArchSpec::eCore_mips64r6el, "mips64r6el"},
158 {eByteOrderLittle, 2, 2, 4, llvm::Triple::msp430, ArchSpec::eCore_msp430,
161 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_generic,
163 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc601,
165 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc602,
167 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc603,
169 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc603e,
171 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc603ev,
173 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc604,
175 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc604e,
177 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc620,
179 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc750,
181 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc7400,
183 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc7450,
185 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc970,
189 ArchSpec::eCore_ppc64le_generic, "powerpc64le"},
190 {eByteOrderBig, 8, 4, 4, llvm::Triple::ppc64, ArchSpec::eCore_ppc64_generic,
193 ArchSpec::eCore_ppc64_ppc970_64, "ppc970-64"},
196 ArchSpec::eCore_s390x_generic, "s390x"},
199 ArchSpec::eCore_sparc_generic, "sparc"},
201 ArchSpec::eCore_sparc9_generic, "sparcv9"},
203 {eByteOrderLittle, 4, 1, 15, llvm::Triple::x86, ArchSpec::eCore_x86_32_i386,
205 {eByteOrderLittle, 4, 1, 15, llvm::Triple::x86, ArchSpec::eCore_x86_32_i486,
208 ArchSpec::eCore_x86_32_i486sx, "i486sx"},
209 {eByteOrderLittle, 4, 1, 15, llvm::Triple::x86, ArchSpec::eCore_x86_32_i686,
213 ArchSpec::eCore_x86_64_x86_64, "x86_64"},
215 ArchSpec::eCore_x86_64_x86_64h, "x86_64h"},
217 ArchSpec::eCore_hexagon_generic, "hexagon"},
219 ArchSpec::eCore_hexagon_hexagonv4, "hexagonv4"},
221 ArchSpec::eCore_hexagon_hexagonv5, "hexagonv5"},
223 {eByteOrderLittle, 4, 2, 4, llvm::Triple::riscv32, ArchSpec::eCore_riscv32,
225 {eByteOrderLittle, 8, 2, 4, llvm::Triple::riscv64, ArchSpec::eCore_riscv64,
229 ArchSpec::eCore_loongarch32, "loongarch32"},
231 ArchSpec::eCore_loongarch64, "loongarch64"},
234 ArchSpec::eCore_uknownMach32, "unknown-mach-32"},
236 ArchSpec::eCore_uknownMach64, "unknown-mach-64"},
237 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arc, ArchSpec::eCore_arc, "arc"},
239 {eByteOrderLittle, 2, 2, 4, llvm::Triple::avr, ArchSpec::eCore_avr, "avr"},
241 {eByteOrderLittle, 4, 1, 4, llvm::Triple::wasm32, ArchSpec::eCore_wasm32,
249 ArchSpec::kNumCores,
253 ArchSpec::Core core;
267 void ArchSpec::ListSupportedArchNames(StringList &list) { in ListSupportedArchNames()
272 void ArchSpec::AutoComplete(CompletionRequest &request) { in AutoComplete()
288 …{ArchSpec::eCore_arm_generic, llvm::MachO::CPU_TYPE_ARM, CPU_ANY, …
289 …{ArchSpec::eCore_arm_generic, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_A…
290 …{ArchSpec::eCore_arm_armv4, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
291 …{ArchSpec::eCore_arm_armv4t, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
292 …{ArchSpec::eCore_arm_armv6, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
293 …{ArchSpec::eCore_arm_armv6m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
294 …{ArchSpec::eCore_arm_armv5, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
295 …{ArchSpec::eCore_arm_armv5e, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
296 …{ArchSpec::eCore_arm_armv5t, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
297 …{ArchSpec::eCore_arm_xscale, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_X…
298 …{ArchSpec::eCore_arm_armv7, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
299 …{ArchSpec::eCore_arm_armv7f, llvm::MachO::CPU_TYPE_ARM, 10, …
300 …{ArchSpec::eCore_arm_armv7s, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
301 …{ArchSpec::eCore_arm_armv7k, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
302 …{ArchSpec::eCore_arm_armv7m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
303 …{ArchSpec::eCore_arm_armv7em, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
304 …{ArchSpec::eCore_arm_arm64e, llvm::MachO::CPU_TYPE_ARM64, llvm::MachO::CPU_SUBTYPE_ARM64…
305 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, llvm::MachO::CPU_SUBTYPE_ARM64…
306 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, llvm::MachO::CPU_SUBTYPE_ARM64…
307 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, 13, …
308 …{ArchSpec::eCore_arm_arm64_32, llvm::MachO::CPU_TYPE_ARM64_32, 0, …
309 …{ArchSpec::eCore_arm_arm64_32, llvm::MachO::CPU_TYPE_ARM64_32, 1, …
310 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, CPU_ANY, …
311 …{ArchSpec::eCore_thumb, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_A…
312 …{ArchSpec::eCore_thumbv4t, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
313 …{ArchSpec::eCore_thumbv5, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
314 …{ArchSpec::eCore_thumbv5e, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
315 …{ArchSpec::eCore_thumbv6, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
316 …{ArchSpec::eCore_thumbv6m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
317 …{ArchSpec::eCore_thumbv7, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
318 …{ArchSpec::eCore_thumbv7f, llvm::MachO::CPU_TYPE_ARM, 10, …
319 …{ArchSpec::eCore_thumbv7s, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
320 …{ArchSpec::eCore_thumbv7k, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
321 …{ArchSpec::eCore_thumbv7m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
322 …{ArchSpec::eCore_thumbv7em, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
323 …{ArchSpec::eCore_ppc_generic, llvm::MachO::CPU_TYPE_POWERPC, CPU_ANY, …
324 …{ArchSpec::eCore_ppc_generic, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
325 …{ArchSpec::eCore_ppc_ppc601, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
326 …{ArchSpec::eCore_ppc_ppc602, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
327 …{ArchSpec::eCore_ppc_ppc603, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
328 …{ArchSpec::eCore_ppc_ppc603e, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
329 …{ArchSpec::eCore_ppc_ppc603ev, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
330 …{ArchSpec::eCore_ppc_ppc604, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
331 …{ArchSpec::eCore_ppc_ppc604e, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
332 …{ArchSpec::eCore_ppc_ppc620, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
333 …{ArchSpec::eCore_ppc_ppc750, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
334 …{ArchSpec::eCore_ppc_ppc7400, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
335 …{ArchSpec::eCore_ppc_ppc7450, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
336 …{ArchSpec::eCore_ppc_ppc970, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
337 …{ArchSpec::eCore_ppc64_generic, llvm::MachO::CPU_TYPE_POWERPC64, llvm::MachO::CPU_SUBTYPE_POWER…
338 …{ArchSpec::eCore_ppc64le_generic, llvm::MachO::CPU_TYPE_POWERPC64, CPU_ANY, …
339 …{ArchSpec::eCore_ppc64_ppc970_64, llvm::MachO::CPU_TYPE_POWERPC64, 100, …
340 …{ArchSpec::eCore_x86_32_i386, llvm::MachO::CPU_TYPE_I386, llvm::MachO::CPU_SUBTYPE_I386_…
341 …{ArchSpec::eCore_x86_32_i486, llvm::MachO::CPU_TYPE_I386, llvm::MachO::CPU_SUBTYPE_486, …
342 …{ArchSpec::eCore_x86_32_i486sx, llvm::MachO::CPU_TYPE_I386, llvm::MachO::CPU_SUBTYPE_486SX…
343 …{ArchSpec::eCore_x86_32_i386, llvm::MachO::CPU_TYPE_I386, CPU_ANY, …
344 …{ArchSpec::eCore_x86_64_x86_64, llvm::MachO::CPU_TYPE_X86_64, llvm::MachO::CPU_SUBTYPE_X86_6…
345 …{ArchSpec::eCore_x86_64_x86_64, llvm::MachO::CPU_TYPE_X86_64, llvm::MachO::CPU_SUBTYPE_X86_A…
346 …{ArchSpec::eCore_x86_64_x86_64h, llvm::MachO::CPU_TYPE_X86_64, llvm::MachO::CPU_SUBTYPE_X86_6…
347 …{ArchSpec::eCore_x86_64_x86_64, llvm::MachO::CPU_TYPE_X86_64, CPU_ANY, UINT32_MAX, UINT32_MA…
349 …{ArchSpec::eCore_uknownMach32, 0, 0, …
350 …{ArchSpec::eCore_uknownMach64, llvm::MachO::CPU_ARCH_ABI64, 0, …
363 {ArchSpec::eCore_sparc_generic, llvm::ELF::EM_SPARC, LLDB_INVALID_CPUTYPE,
365 {ArchSpec::eCore_x86_32_i386, llvm::ELF::EM_386, LLDB_INVALID_CPUTYPE,
367 {ArchSpec::eCore_x86_32_i486, llvm::ELF::EM_IAMCU, LLDB_INVALID_CPUTYPE,
369 {ArchSpec::eCore_ppc_generic, llvm::ELF::EM_PPC, LLDB_INVALID_CPUTYPE,
371 {ArchSpec::eCore_ppc64le_generic, llvm::ELF::EM_PPC64,
372 ArchSpec::eCore_ppc64le_generic, 0xFFFFFFFFu, 0xFFFFFFFFu}, // PowerPC64le
373 {ArchSpec::eCore_ppc64_generic, llvm::ELF::EM_PPC64,
374 ArchSpec::eCore_ppc64_generic, 0xFFFFFFFFu, 0xFFFFFFFFu}, // PowerPC64
375 {ArchSpec::eCore_arm_generic, llvm::ELF::EM_ARM, LLDB_INVALID_CPUTYPE,
377 {ArchSpec::eCore_arm_aarch64, llvm::ELF::EM_AARCH64, LLDB_INVALID_CPUTYPE,
379 {ArchSpec::eCore_s390x_generic, llvm::ELF::EM_S390, LLDB_INVALID_CPUTYPE,
381 {ArchSpec::eCore_sparc9_generic, llvm::ELF::EM_SPARCV9,
383 {ArchSpec::eCore_x86_64_x86_64, llvm::ELF::EM_X86_64, LLDB_INVALID_CPUTYPE,
385 {ArchSpec::eCore_mips32, llvm::ELF::EM_MIPS, ArchSpec::eMIPSSubType_mips32,
387 {ArchSpec::eCore_mips32r2, llvm::ELF::EM_MIPS,
388 ArchSpec::eMIPSSubType_mips32r2, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r2
389 {ArchSpec::eCore_mips32r6, llvm::ELF::EM_MIPS,
390 ArchSpec::eMIPSSubType_mips32r6, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r6
391 {ArchSpec::eCore_mips32el, llvm::ELF::EM_MIPS,
392 ArchSpec::eMIPSSubType_mips32el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32el
393 {ArchSpec::eCore_mips32r2el, llvm::ELF::EM_MIPS,
394 ArchSpec::eMIPSSubType_mips32r2el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r2el
395 {ArchSpec::eCore_mips32r6el, llvm::ELF::EM_MIPS,
396 ArchSpec::eMIPSSubType_mips32r6el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r6el
397 {ArchSpec::eCore_mips64, llvm::ELF::EM_MIPS, ArchSpec::eMIPSSubType_mips64,
399 {ArchSpec::eCore_mips64r2, llvm::ELF::EM_MIPS,
400 ArchSpec::eMIPSSubType_mips64r2, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r2
401 {ArchSpec::eCore_mips64r6, llvm::ELF::EM_MIPS,
402 ArchSpec::eMIPSSubType_mips64r6, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r6
403 {ArchSpec::eCore_mips64el, llvm::ELF::EM_MIPS,
404 ArchSpec::eMIPSSubType_mips64el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64el
405 {ArchSpec::eCore_mips64r2el, llvm::ELF::EM_MIPS,
406 ArchSpec::eMIPSSubType_mips64r2el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r2el
407 {ArchSpec::eCore_mips64r6el, llvm::ELF::EM_MIPS,
408 ArchSpec::eMIPSSubType_mips64r6el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r6el
409 {ArchSpec::eCore_msp430, llvm::ELF::EM_MSP430, LLDB_INVALID_CPUTYPE,
411 {ArchSpec::eCore_hexagon_generic, llvm::ELF::EM_HEXAGON,
413 {ArchSpec::eCore_arc, llvm::ELF::EM_ARC_COMPACT2, LLDB_INVALID_CPUTYPE,
415 {ArchSpec::eCore_avr, llvm::ELF::EM_AVR, LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu,
417 {ArchSpec::eCore_riscv32, llvm::ELF::EM_RISCV,
418 ArchSpec::eRISCVSubType_riscv32, 0xFFFFFFFFu, 0xFFFFFFFFu}, // riscv32
419 {ArchSpec::eCore_riscv64, llvm::ELF::EM_RISCV,
420 ArchSpec::eRISCVSubType_riscv64, 0xFFFFFFFFu, 0xFFFFFFFFu}, // riscv64
421 {ArchSpec::eCore_loongarch32, llvm::ELF::EM_LOONGARCH,
422 ArchSpec::eLoongArchSubType_loongarch32, 0xFFFFFFFFu,
424 {ArchSpec::eCore_loongarch64, llvm::ELF::EM_LOONGARCH,
425 ArchSpec::eLoongArchSubType_loongarch64, 0xFFFFFFFFu,
437 {ArchSpec::eCore_x86_32_i386, llvm::COFF::IMAGE_FILE_MACHINE_I386,
439 {ArchSpec::eCore_ppc_generic, llvm::COFF::IMAGE_FILE_MACHINE_POWERPC,
441 {ArchSpec::eCore_ppc_generic, llvm::COFF::IMAGE_FILE_MACHINE_POWERPCFP,
443 {ArchSpec::eCore_arm_generic, llvm::COFF::IMAGE_FILE_MACHINE_ARM,
445 {ArchSpec::eCore_arm_armv7, llvm::COFF::IMAGE_FILE_MACHINE_ARMNT,
447 {ArchSpec::eCore_thumb, llvm::COFF::IMAGE_FILE_MACHINE_THUMB,
449 {ArchSpec::eCore_x86_64_x86_64, llvm::COFF::IMAGE_FILE_MACHINE_AMD64,
451 {ArchSpec::eCore_arm_arm64, llvm::COFF::IMAGE_FILE_MACHINE_ARM64,
488 static inline const CoreDefinition *FindCoreDefinition(ArchSpec::Core core) { in FindCoreDefinition()
510 FindArchDefinitionEntry(const ArchDefinition *def, ArchSpec::Core core) { in FindArchDefinitionEntry()
525 ArchSpec::ArchSpec() = default;
527 ArchSpec::ArchSpec(const char *triple_cstr) { in ArchSpec() function in ArchSpec
532 ArchSpec::ArchSpec(llvm::StringRef triple_str) { SetTriple(triple_str); } in ArchSpec() function in ArchSpec
534 ArchSpec::ArchSpec(const llvm::Triple &triple) { SetTriple(triple); } in ArchSpec() function in ArchSpec
536 ArchSpec::ArchSpec(ArchitectureType arch_type, uint32_t cpu, uint32_t subtype) { in ArchSpec() function in ArchSpec
540 ArchSpec::~ArchSpec() = default;
542 void ArchSpec::Clear() { in Clear()
552 const char *ArchSpec::GetArchitectureName() const { in GetArchitectureName()
559 bool ArchSpec::IsMIPS() const { return GetTriple().isMIPS(); } in IsMIPS()
561 std::string ArchSpec::GetTargetABI() const { in GetTargetABI()
566 switch (GetFlags() & ArchSpec::eMIPSABI_mask) { in GetTargetABI()
567 case ArchSpec::eMIPSABI_N64: in GetTargetABI()
570 case ArchSpec::eMIPSABI_N32: in GetTargetABI()
573 case ArchSpec::eMIPSABI_O32: in GetTargetABI()
583 void ArchSpec::SetFlags(const std::string &elf_abi) { in SetFlags()
588 flag |= ArchSpec::eMIPSABI_N64; in SetFlags()
590 flag |= ArchSpec::eMIPSABI_N32; in SetFlags()
592 flag |= ArchSpec::eMIPSABI_O32; in SetFlags()
597 std::string ArchSpec::GetClangTargetCPU() const { in GetClangTargetCPU()
601 case ArchSpec::eCore_mips32: in GetClangTargetCPU()
602 case ArchSpec::eCore_mips32el: in GetClangTargetCPU()
605 case ArchSpec::eCore_mips32r2: in GetClangTargetCPU()
606 case ArchSpec::eCore_mips32r2el: in GetClangTargetCPU()
609 case ArchSpec::eCore_mips32r3: in GetClangTargetCPU()
610 case ArchSpec::eCore_mips32r3el: in GetClangTargetCPU()
613 case ArchSpec::eCore_mips32r5: in GetClangTargetCPU()
614 case ArchSpec::eCore_mips32r5el: in GetClangTargetCPU()
617 case ArchSpec::eCore_mips32r6: in GetClangTargetCPU()
618 case ArchSpec::eCore_mips32r6el: in GetClangTargetCPU()
621 case ArchSpec::eCore_mips64: in GetClangTargetCPU()
622 case ArchSpec::eCore_mips64el: in GetClangTargetCPU()
625 case ArchSpec::eCore_mips64r2: in GetClangTargetCPU()
626 case ArchSpec::eCore_mips64r2el: in GetClangTargetCPU()
629 case ArchSpec::eCore_mips64r3: in GetClangTargetCPU()
630 case ArchSpec::eCore_mips64r3el: in GetClangTargetCPU()
633 case ArchSpec::eCore_mips64r5: in GetClangTargetCPU()
634 case ArchSpec::eCore_mips64r5el: in GetClangTargetCPU()
637 case ArchSpec::eCore_mips64r6: in GetClangTargetCPU()
638 case ArchSpec::eCore_mips64r6el: in GetClangTargetCPU()
651 uint32_t ArchSpec::GetMachOCPUType() const { in GetMachOCPUType()
663 uint32_t ArchSpec::GetMachOCPUSubType() const { in GetMachOCPUSubType()
675 uint32_t ArchSpec::GetDataByteSize() const { in GetDataByteSize()
679 uint32_t ArchSpec::GetCodeByteSize() const { in GetCodeByteSize()
683 llvm::Triple::ArchType ArchSpec::GetMachine() const { in GetMachine()
691 uint32_t ArchSpec::GetAddressByteSize() const { in GetAddressByteSize()
705 ByteOrder ArchSpec::GetDefaultEndian() const { in GetDefaultEndian()
712 bool ArchSpec::CharIsSignedByDefault() const { in CharIsSignedByDefault()
738 lldb::ByteOrder ArchSpec::GetByteOrder() const { in GetByteOrder()
747 bool ArchSpec::SetTriple(const llvm::Triple &triple) { in SetTriple()
754 ArchSpec &arch) { in ParseMachCPUDashSubtypeTriple()
789 bool ArchSpec::SetTriple(llvm::StringRef triple) { in SetTriple()
802 bool ArchSpec::ContainsOnlyArch(const llvm::Triple &normalized_triple) { in ContainsOnlyArch()
809 void ArchSpec::MergeFrom(const ArchSpec &other) { in MergeFrom()
841 IsCompatibleMatch(other) && GetCore() == ArchSpec::eCore_arm_generic && in MergeFrom()
842 other.GetCore() != ArchSpec::eCore_arm_generic) { in MergeFrom()
851 bool ArchSpec::SetArchitecture(ArchitectureType arch_type, uint32_t cpu, in SetArchitecture()
927 uint32_t ArchSpec::GetMinimumOpcodeByteSize() const { in GetMinimumOpcodeByteSize()
934 uint32_t ArchSpec::GetMaximumOpcodeByteSize() const { in GetMaximumOpcodeByteSize()
972 bool ArchSpec::IsMatch(const ArchSpec &rhs, MatchType match) const { in IsMatch()
1049 void ArchSpec::UpdateCore() { in UpdateCore()
1066 void ArchSpec::CoreUpdated(bool update_triple) { in CoreUpdated()
1082 static bool cores_match(const ArchSpec::Core core1, const ArchSpec::Core core2, in cores_match()
1088 case ArchSpec::kCore_any: in cores_match()
1091 case ArchSpec::eCore_arm_generic: in cores_match()
1095 case ArchSpec::kCore_arm_any: in cores_match()
1096 if (core2 >= ArchSpec::kCore_arm_first && core2 <= ArchSpec::kCore_arm_last) in cores_match()
1098 if (core2 >= ArchSpec::kCore_thumb_first && in cores_match()
1099 core2 <= ArchSpec::kCore_thumb_last) in cores_match()
1101 if (core2 == ArchSpec::kCore_arm_any) in cores_match()
1105 case ArchSpec::kCore_x86_32_any: in cores_match()
1106 if ((core2 >= ArchSpec::kCore_x86_32_first && in cores_match()
1107 core2 <= ArchSpec::kCore_x86_32_last) || in cores_match()
1108 (core2 == ArchSpec::kCore_x86_32_any)) in cores_match()
1112 case ArchSpec::kCore_x86_64_any: in cores_match()
1113 if ((core2 >= ArchSpec::kCore_x86_64_first && in cores_match()
1114 core2 <= ArchSpec::kCore_x86_64_last) || in cores_match()
1115 (core2 == ArchSpec::kCore_x86_64_any)) in cores_match()
1119 case ArchSpec::kCore_ppc_any: in cores_match()
1120 if ((core2 >= ArchSpec::kCore_ppc_first && in cores_match()
1121 core2 <= ArchSpec::kCore_ppc_last) || in cores_match()
1122 (core2 == ArchSpec::kCore_ppc_any)) in cores_match()
1126 case ArchSpec::kCore_ppc64_any: in cores_match()
1127 if ((core2 >= ArchSpec::kCore_ppc64_first && in cores_match()
1128 core2 <= ArchSpec::kCore_ppc64_last) || in cores_match()
1129 (core2 == ArchSpec::kCore_ppc64_any)) in cores_match()
1133 case ArchSpec::kCore_hexagon_any: in cores_match()
1134 if ((core2 >= ArchSpec::kCore_hexagon_first && in cores_match()
1135 core2 <= ArchSpec::kCore_hexagon_last) || in cores_match()
1136 (core2 == ArchSpec::kCore_hexagon_any)) in cores_match()
1144 case ArchSpec::eCore_arm_armv7em: in cores_match()
1146 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1148 if (core2 == ArchSpec::eCore_arm_armv7m) in cores_match()
1150 if (core2 == ArchSpec::eCore_arm_armv6m) in cores_match()
1152 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1162 case ArchSpec::eCore_arm_armv7m: in cores_match()
1164 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1166 if (core2 == ArchSpec::eCore_arm_armv6m) in cores_match()
1168 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1170 if (core2 == ArchSpec::eCore_arm_armv7em) in cores_match()
1180 case ArchSpec::eCore_arm_armv6m: in cores_match()
1182 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1184 if (core2 == ArchSpec::eCore_arm_armv7em) in cores_match()
1186 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1188 if (core2 == ArchSpec::eCore_arm_armv6m) in cores_match()
1194 case ArchSpec::eCore_arm_armv7f: in cores_match()
1195 case ArchSpec::eCore_arm_armv7k: in cores_match()
1196 case ArchSpec::eCore_arm_armv7s: in cores_match()
1197 case ArchSpec::eCore_arm_armv7l: in cores_match()
1198 case ArchSpec::eCore_arm_armv8l: in cores_match()
1200 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1202 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1208 case ArchSpec::eCore_x86_64_x86_64h: in cores_match()
1211 if (core2 == ArchSpec::eCore_x86_64_x86_64) in cores_match()
1216 case ArchSpec::eCore_arm_armv8: in cores_match()
1218 if (core2 == ArchSpec::eCore_arm_arm64) in cores_match()
1220 if (core2 == ArchSpec::eCore_arm_aarch64) in cores_match()
1222 if (core2 == ArchSpec::eCore_arm_arm64e) in cores_match()
1228 case ArchSpec::eCore_arm_arm64e: in cores_match()
1230 if (core2 == ArchSpec::eCore_arm_arm64) in cores_match()
1232 if (core2 == ArchSpec::eCore_arm_aarch64) in cores_match()
1234 if (core2 == ArchSpec::eCore_arm_armv8) in cores_match()
1239 case ArchSpec::eCore_arm_aarch64: in cores_match()
1241 if (core2 == ArchSpec::eCore_arm_arm64) in cores_match()
1243 if (core2 == ArchSpec::eCore_arm_armv8) in cores_match()
1245 if (core2 == ArchSpec::eCore_arm_arm64e) in cores_match()
1251 case ArchSpec::eCore_arm_arm64: in cores_match()
1253 if (core2 == ArchSpec::eCore_arm_aarch64) in cores_match()
1255 if (core2 == ArchSpec::eCore_arm_armv8) in cores_match()
1257 if (core2 == ArchSpec::eCore_arm_arm64e) in cores_match()
1263 case ArchSpec::eCore_arm_arm64_32: in cores_match()
1265 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1271 case ArchSpec::eCore_mips32: in cores_match()
1273 if (core2 >= ArchSpec::kCore_mips32_first && in cores_match()
1274 core2 <= ArchSpec::kCore_mips32_last) in cores_match()
1280 case ArchSpec::eCore_mips32el: in cores_match()
1282 if (core2 >= ArchSpec::kCore_mips32el_first && in cores_match()
1283 core2 <= ArchSpec::kCore_mips32el_last) in cores_match()
1289 case ArchSpec::eCore_mips64: in cores_match()
1291 if (core2 >= ArchSpec::kCore_mips32_first && in cores_match()
1292 core2 <= ArchSpec::kCore_mips32_last) in cores_match()
1294 if (core2 >= ArchSpec::kCore_mips64_first && in cores_match()
1295 core2 <= ArchSpec::kCore_mips64_last) in cores_match()
1301 case ArchSpec::eCore_mips64el: in cores_match()
1303 if (core2 >= ArchSpec::kCore_mips32el_first && in cores_match()
1304 core2 <= ArchSpec::kCore_mips32el_last) in cores_match()
1306 if (core2 >= ArchSpec::kCore_mips64el_first && in cores_match()
1307 core2 <= ArchSpec::kCore_mips64el_last) in cores_match()
1313 case ArchSpec::eCore_mips64r2: in cores_match()
1314 case ArchSpec::eCore_mips64r3: in cores_match()
1315 case ArchSpec::eCore_mips64r5: in cores_match()
1317 if (core2 >= ArchSpec::kCore_mips32_first && core2 <= (core1 - 10)) in cores_match()
1319 if (core2 >= ArchSpec::kCore_mips64_first && core2 <= (core1 - 1)) in cores_match()
1325 case ArchSpec::eCore_mips64r2el: in cores_match()
1326 case ArchSpec::eCore_mips64r3el: in cores_match()
1327 case ArchSpec::eCore_mips64r5el: in cores_match()
1329 if (core2 >= ArchSpec::kCore_mips32el_first && core2 <= (core1 - 10)) in cores_match()
1331 if (core2 >= ArchSpec::kCore_mips64el_first && core2 <= (core1 - 1)) in cores_match()
1337 case ArchSpec::eCore_mips32r2: in cores_match()
1338 case ArchSpec::eCore_mips32r3: in cores_match()
1339 case ArchSpec::eCore_mips32r5: in cores_match()
1341 if (core2 >= ArchSpec::kCore_mips32_first && core2 <= core1) in cores_match()
1346 case ArchSpec::eCore_mips32r2el: in cores_match()
1347 case ArchSpec::eCore_mips32r3el: in cores_match()
1348 case ArchSpec::eCore_mips32r5el: in cores_match()
1350 if (core2 >= ArchSpec::kCore_mips32el_first && core2 <= core1) in cores_match()
1355 case ArchSpec::eCore_mips32r6: in cores_match()
1357 if (core2 == ArchSpec::eCore_mips32 || core2 == ArchSpec::eCore_mips32r6) in cores_match()
1362 case ArchSpec::eCore_mips32r6el: in cores_match()
1364 if (core2 == ArchSpec::eCore_mips32el || in cores_match()
1365 core2 == ArchSpec::eCore_mips32r6el) in cores_match()
1370 case ArchSpec::eCore_mips64r6: in cores_match()
1372 if (core2 == ArchSpec::eCore_mips32 || core2 == ArchSpec::eCore_mips32r6) in cores_match()
1374 if (core2 == ArchSpec::eCore_mips64 || core2 == ArchSpec::eCore_mips64r6) in cores_match()
1379 case ArchSpec::eCore_mips64r6el: in cores_match()
1381 if (core2 == ArchSpec::eCore_mips32el || in cores_match()
1382 core2 == ArchSpec::eCore_mips32r6el) in cores_match()
1384 if (core2 == ArchSpec::eCore_mips64el || in cores_match()
1385 core2 == ArchSpec::eCore_mips64r6el) in cores_match()
1398 bool lldb_private::operator<(const ArchSpec &lhs, const ArchSpec &rhs) { in operator <()
1399 const ArchSpec::Core lhs_core = lhs.GetCore(); in operator <()
1400 const ArchSpec::Core rhs_core = rhs.GetCore(); in operator <()
1405 bool lldb_private::operator==(const ArchSpec &lhs, const ArchSpec &rhs) { in operator ==()
1409 bool ArchSpec::IsFullySpecifiedTriple() const { in IsFullySpecifiedTriple()
1424 void ArchSpec::PiecewiseTripleCompare( in PiecewiseTripleCompare()
1425 const ArchSpec &other, bool &arch_different, bool &vendor_different, in PiecewiseTripleCompare()
1441 bool ArchSpec::IsAlwaysThumbInstructions() const { in IsAlwaysThumbInstructions()
1453 if (GetCore() == ArchSpec::Core::eCore_arm_armv7m || in IsAlwaysThumbInstructions()
1454 GetCore() == ArchSpec::Core::eCore_arm_armv7em || in IsAlwaysThumbInstructions()
1455 GetCore() == ArchSpec::Core::eCore_arm_armv6m || in IsAlwaysThumbInstructions()
1456 GetCore() == ArchSpec::Core::eCore_thumbv7m || in IsAlwaysThumbInstructions()
1457 GetCore() == ArchSpec::Core::eCore_thumbv7em || in IsAlwaysThumbInstructions()
1458 GetCore() == ArchSpec::Core::eCore_thumbv6m) { in IsAlwaysThumbInstructions()
1468 void ArchSpec::DumpTriple(llvm::raw_ostream &s) const { in DumpTriple()