Lines Matching refs:ArchSpec
24 static bool cores_match(const ArchSpec::Core core1, const ArchSpec::Core core2,
35 ArchSpec::Core core;
43 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_generic,
45 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv4,
47 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv4t,
49 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv5,
51 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv5e,
53 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv5t,
55 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv6,
57 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv6m,
59 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7,
61 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7l,
63 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7f,
65 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7s,
67 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7k,
69 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7m,
71 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv7em,
73 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_xscale,
75 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumb,
77 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv4t,
79 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv5,
81 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv5e,
83 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv6,
85 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv6m,
87 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7,
89 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7f,
91 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7s,
93 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7k,
95 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7m,
97 {eByteOrderLittle, 4, 2, 4, llvm::Triple::thumb, ArchSpec::eCore_thumbv7em,
100 ArchSpec::eCore_arm_arm64, "arm64"},
102 ArchSpec::eCore_arm_armv8, "armv8"},
103 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arm, ArchSpec::eCore_arm_armv8l,
106 ArchSpec::eCore_arm_arm64e, "arm64e"},
108 ArchSpec::eCore_arm_arm64_32, "arm64_32"},
110 ArchSpec::eCore_arm_aarch64, "aarch64"},
113 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32,
115 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r2,
117 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r3,
119 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r5,
121 {eByteOrderBig, 4, 2, 4, llvm::Triple::mips, ArchSpec::eCore_mips32r6,
123 {eByteOrderLittle, 4, 2, 4, llvm::Triple::mipsel, ArchSpec::eCore_mips32el,
126 ArchSpec::eCore_mips32r2el, "mipsr2el"},
128 ArchSpec::eCore_mips32r3el, "mipsr3el"},
130 ArchSpec::eCore_mips32r5el, "mipsr5el"},
132 ArchSpec::eCore_mips32r6el, "mipsr6el"},
135 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64,
137 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r2,
139 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r3,
141 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r5,
143 {eByteOrderBig, 8, 2, 4, llvm::Triple::mips64, ArchSpec::eCore_mips64r6,
146 ArchSpec::eCore_mips64el, "mips64el"},
148 ArchSpec::eCore_mips64r2el, "mips64r2el"},
150 ArchSpec::eCore_mips64r3el, "mips64r3el"},
152 ArchSpec::eCore_mips64r5el, "mips64r5el"},
154 ArchSpec::eCore_mips64r6el, "mips64r6el"},
156 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_generic,
158 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc601,
160 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc602,
162 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc603,
164 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc603e,
166 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc603ev,
168 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc604,
170 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc604e,
172 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc620,
174 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc750,
176 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc7400,
178 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc7450,
180 {eByteOrderBig, 4, 4, 4, llvm::Triple::ppc, ArchSpec::eCore_ppc_ppc970,
184 ArchSpec::eCore_ppc64le_generic, "powerpc64le"},
185 {eByteOrderBig, 8, 4, 4, llvm::Triple::ppc64, ArchSpec::eCore_ppc64_generic,
188 ArchSpec::eCore_ppc64_ppc970_64, "ppc970-64"},
191 ArchSpec::eCore_s390x_generic, "s390x"},
194 ArchSpec::eCore_sparc_generic, "sparc"},
196 ArchSpec::eCore_sparc9_generic, "sparcv9"},
198 {eByteOrderLittle, 4, 1, 15, llvm::Triple::x86, ArchSpec::eCore_x86_32_i386,
200 {eByteOrderLittle, 4, 1, 15, llvm::Triple::x86, ArchSpec::eCore_x86_32_i486,
203 ArchSpec::eCore_x86_32_i486sx, "i486sx"},
204 {eByteOrderLittle, 4, 1, 15, llvm::Triple::x86, ArchSpec::eCore_x86_32_i686,
208 ArchSpec::eCore_x86_64_x86_64, "x86_64"},
210 ArchSpec::eCore_x86_64_x86_64h, "x86_64h"},
212 ArchSpec::eCore_hexagon_generic, "hexagon"},
214 ArchSpec::eCore_hexagon_hexagonv4, "hexagonv4"},
216 ArchSpec::eCore_hexagon_hexagonv5, "hexagonv5"},
218 {eByteOrderLittle, 4, 2, 4, llvm::Triple::riscv32, ArchSpec::eCore_riscv32,
220 {eByteOrderLittle, 8, 2, 4, llvm::Triple::riscv64, ArchSpec::eCore_riscv64,
224 ArchSpec::eCore_uknownMach32, "unknown-mach-32"},
226 ArchSpec::eCore_uknownMach64, "unknown-mach-64"},
227 {eByteOrderLittle, 4, 2, 4, llvm::Triple::arc, ArchSpec::eCore_arc, "arc"},
229 {eByteOrderLittle, 2, 2, 4, llvm::Triple::avr, ArchSpec::eCore_avr, "avr"},
231 {eByteOrderLittle, 4, 1, 4, llvm::Triple::wasm32, ArchSpec::eCore_wasm32,
239 ArchSpec::kNumCores,
243 ArchSpec::Core core;
257 void ArchSpec::ListSupportedArchNames(StringList &list) { in ListSupportedArchNames()
262 void ArchSpec::AutoComplete(CompletionRequest &request) { in AutoComplete()
278 …{ArchSpec::eCore_arm_generic, llvm::MachO::CPU_TYPE_ARM, CPU_ANY, …
279 …{ArchSpec::eCore_arm_generic, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_A…
280 …{ArchSpec::eCore_arm_armv4, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
281 …{ArchSpec::eCore_arm_armv4t, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
282 …{ArchSpec::eCore_arm_armv6, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
283 …{ArchSpec::eCore_arm_armv6m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
284 …{ArchSpec::eCore_arm_armv5, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
285 …{ArchSpec::eCore_arm_armv5e, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
286 …{ArchSpec::eCore_arm_armv5t, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
287 …{ArchSpec::eCore_arm_xscale, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_X…
288 …{ArchSpec::eCore_arm_armv7, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
289 …{ArchSpec::eCore_arm_armv7f, llvm::MachO::CPU_TYPE_ARM, 10, …
290 …{ArchSpec::eCore_arm_armv7s, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
291 …{ArchSpec::eCore_arm_armv7k, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
292 …{ArchSpec::eCore_arm_armv7m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
293 …{ArchSpec::eCore_arm_armv7em, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
294 …{ArchSpec::eCore_arm_arm64e, llvm::MachO::CPU_TYPE_ARM64, llvm::MachO::CPU_SUBTYPE_ARM64…
295 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, llvm::MachO::CPU_SUBTYPE_ARM64…
296 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, llvm::MachO::CPU_SUBTYPE_ARM64…
297 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, 13, …
298 …{ArchSpec::eCore_arm_arm64_32, llvm::MachO::CPU_TYPE_ARM64_32, 0, …
299 …{ArchSpec::eCore_arm_arm64_32, llvm::MachO::CPU_TYPE_ARM64_32, 1, …
300 …{ArchSpec::eCore_arm_arm64, llvm::MachO::CPU_TYPE_ARM64, CPU_ANY, …
301 …{ArchSpec::eCore_thumb, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_A…
302 …{ArchSpec::eCore_thumbv4t, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
303 …{ArchSpec::eCore_thumbv5, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
304 …{ArchSpec::eCore_thumbv5e, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
305 …{ArchSpec::eCore_thumbv6, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
306 …{ArchSpec::eCore_thumbv6m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
307 …{ArchSpec::eCore_thumbv7, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
308 …{ArchSpec::eCore_thumbv7f, llvm::MachO::CPU_TYPE_ARM, 10, …
309 …{ArchSpec::eCore_thumbv7s, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
310 …{ArchSpec::eCore_thumbv7k, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
311 …{ArchSpec::eCore_thumbv7m, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
312 …{ArchSpec::eCore_thumbv7em, llvm::MachO::CPU_TYPE_ARM, llvm::MachO::CPU_SUBTYPE_ARM_V…
313 …{ArchSpec::eCore_ppc_generic, llvm::MachO::CPU_TYPE_POWERPC, CPU_ANY, …
314 …{ArchSpec::eCore_ppc_generic, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
315 …{ArchSpec::eCore_ppc_ppc601, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
316 …{ArchSpec::eCore_ppc_ppc602, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
317 …{ArchSpec::eCore_ppc_ppc603, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
318 …{ArchSpec::eCore_ppc_ppc603e, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
319 …{ArchSpec::eCore_ppc_ppc603ev, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
320 …{ArchSpec::eCore_ppc_ppc604, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
321 …{ArchSpec::eCore_ppc_ppc604e, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
322 …{ArchSpec::eCore_ppc_ppc620, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
323 …{ArchSpec::eCore_ppc_ppc750, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
324 …{ArchSpec::eCore_ppc_ppc7400, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
325 …{ArchSpec::eCore_ppc_ppc7450, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
326 …{ArchSpec::eCore_ppc_ppc970, llvm::MachO::CPU_TYPE_POWERPC, llvm::MachO::CPU_SUBTYPE_POWER…
327 …{ArchSpec::eCore_ppc64_generic, llvm::MachO::CPU_TYPE_POWERPC64, llvm::MachO::CPU_SUBTYPE_POWER…
328 …{ArchSpec::eCore_ppc64le_generic, llvm::MachO::CPU_TYPE_POWERPC64, CPU_ANY, …
329 …{ArchSpec::eCore_ppc64_ppc970_64, llvm::MachO::CPU_TYPE_POWERPC64, 100, …
330 …{ArchSpec::eCore_x86_32_i386, llvm::MachO::CPU_TYPE_I386, llvm::MachO::CPU_SUBTYPE_I386_…
331 …{ArchSpec::eCore_x86_32_i486, llvm::MachO::CPU_TYPE_I386, llvm::MachO::CPU_SUBTYPE_486, …
332 …{ArchSpec::eCore_x86_32_i486sx, llvm::MachO::CPU_TYPE_I386, llvm::MachO::CPU_SUBTYPE_486SX…
333 …{ArchSpec::eCore_x86_32_i386, llvm::MachO::CPU_TYPE_I386, CPU_ANY, …
334 …{ArchSpec::eCore_x86_64_x86_64, llvm::MachO::CPU_TYPE_X86_64, llvm::MachO::CPU_SUBTYPE_X86_6…
335 …{ArchSpec::eCore_x86_64_x86_64, llvm::MachO::CPU_TYPE_X86_64, llvm::MachO::CPU_SUBTYPE_X86_A…
336 …{ArchSpec::eCore_x86_64_x86_64h, llvm::MachO::CPU_TYPE_X86_64, llvm::MachO::CPU_SUBTYPE_X86_6…
337 …{ArchSpec::eCore_x86_64_x86_64, llvm::MachO::CPU_TYPE_X86_64, CPU_ANY, UINT32_MAX, UINT32_MA…
339 …{ArchSpec::eCore_uknownMach32, 0, 0, …
340 …{ArchSpec::eCore_uknownMach64, llvm::MachO::CPU_ARCH_ABI64, 0, …
353 {ArchSpec::eCore_sparc_generic, llvm::ELF::EM_SPARC, LLDB_INVALID_CPUTYPE,
355 {ArchSpec::eCore_x86_32_i386, llvm::ELF::EM_386, LLDB_INVALID_CPUTYPE,
357 {ArchSpec::eCore_x86_32_i486, llvm::ELF::EM_IAMCU, LLDB_INVALID_CPUTYPE,
359 {ArchSpec::eCore_ppc_generic, llvm::ELF::EM_PPC, LLDB_INVALID_CPUTYPE,
361 {ArchSpec::eCore_ppc64le_generic, llvm::ELF::EM_PPC64,
362 ArchSpec::eCore_ppc64le_generic, 0xFFFFFFFFu, 0xFFFFFFFFu}, // PowerPC64le
363 {ArchSpec::eCore_ppc64_generic, llvm::ELF::EM_PPC64,
364 ArchSpec::eCore_ppc64_generic, 0xFFFFFFFFu, 0xFFFFFFFFu}, // PowerPC64
365 {ArchSpec::eCore_arm_generic, llvm::ELF::EM_ARM, LLDB_INVALID_CPUTYPE,
367 {ArchSpec::eCore_arm_aarch64, llvm::ELF::EM_AARCH64, LLDB_INVALID_CPUTYPE,
369 {ArchSpec::eCore_s390x_generic, llvm::ELF::EM_S390, LLDB_INVALID_CPUTYPE,
371 {ArchSpec::eCore_sparc9_generic, llvm::ELF::EM_SPARCV9,
373 {ArchSpec::eCore_x86_64_x86_64, llvm::ELF::EM_X86_64, LLDB_INVALID_CPUTYPE,
375 {ArchSpec::eCore_mips32, llvm::ELF::EM_MIPS, ArchSpec::eMIPSSubType_mips32,
377 {ArchSpec::eCore_mips32r2, llvm::ELF::EM_MIPS,
378 ArchSpec::eMIPSSubType_mips32r2, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r2
379 {ArchSpec::eCore_mips32r6, llvm::ELF::EM_MIPS,
380 ArchSpec::eMIPSSubType_mips32r6, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r6
381 {ArchSpec::eCore_mips32el, llvm::ELF::EM_MIPS,
382 ArchSpec::eMIPSSubType_mips32el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32el
383 {ArchSpec::eCore_mips32r2el, llvm::ELF::EM_MIPS,
384 ArchSpec::eMIPSSubType_mips32r2el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r2el
385 {ArchSpec::eCore_mips32r6el, llvm::ELF::EM_MIPS,
386 ArchSpec::eMIPSSubType_mips32r6el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips32r6el
387 {ArchSpec::eCore_mips64, llvm::ELF::EM_MIPS, ArchSpec::eMIPSSubType_mips64,
389 {ArchSpec::eCore_mips64r2, llvm::ELF::EM_MIPS,
390 ArchSpec::eMIPSSubType_mips64r2, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r2
391 {ArchSpec::eCore_mips64r6, llvm::ELF::EM_MIPS,
392 ArchSpec::eMIPSSubType_mips64r6, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r6
393 {ArchSpec::eCore_mips64el, llvm::ELF::EM_MIPS,
394 ArchSpec::eMIPSSubType_mips64el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64el
395 {ArchSpec::eCore_mips64r2el, llvm::ELF::EM_MIPS,
396 ArchSpec::eMIPSSubType_mips64r2el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r2el
397 {ArchSpec::eCore_mips64r6el, llvm::ELF::EM_MIPS,
398 ArchSpec::eMIPSSubType_mips64r6el, 0xFFFFFFFFu, 0xFFFFFFFFu}, // mips64r6el
399 {ArchSpec::eCore_hexagon_generic, llvm::ELF::EM_HEXAGON,
401 {ArchSpec::eCore_arc, llvm::ELF::EM_ARC_COMPACT2, LLDB_INVALID_CPUTYPE,
403 {ArchSpec::eCore_avr, llvm::ELF::EM_AVR, LLDB_INVALID_CPUTYPE, 0xFFFFFFFFu,
405 {ArchSpec::eCore_riscv32, llvm::ELF::EM_RISCV,
406 ArchSpec::eRISCVSubType_riscv32, 0xFFFFFFFFu, 0xFFFFFFFFu}, // riscv32
407 {ArchSpec::eCore_riscv64, llvm::ELF::EM_RISCV,
408 ArchSpec::eRISCVSubType_riscv64, 0xFFFFFFFFu, 0xFFFFFFFFu}, // riscv64
419 {ArchSpec::eCore_x86_32_i386, llvm::COFF::IMAGE_FILE_MACHINE_I386,
421 {ArchSpec::eCore_ppc_generic, llvm::COFF::IMAGE_FILE_MACHINE_POWERPC,
423 {ArchSpec::eCore_ppc_generic, llvm::COFF::IMAGE_FILE_MACHINE_POWERPCFP,
425 {ArchSpec::eCore_arm_generic, llvm::COFF::IMAGE_FILE_MACHINE_ARM,
427 {ArchSpec::eCore_arm_armv7, llvm::COFF::IMAGE_FILE_MACHINE_ARMNT,
429 {ArchSpec::eCore_thumb, llvm::COFF::IMAGE_FILE_MACHINE_THUMB,
431 {ArchSpec::eCore_x86_64_x86_64, llvm::COFF::IMAGE_FILE_MACHINE_AMD64,
433 {ArchSpec::eCore_arm_arm64, llvm::COFF::IMAGE_FILE_MACHINE_ARM64,
474 static inline const CoreDefinition *FindCoreDefinition(ArchSpec::Core core) { in FindCoreDefinition()
496 FindArchDefinitionEntry(const ArchDefinition *def, ArchSpec::Core core) { in FindArchDefinitionEntry()
511 ArchSpec::ArchSpec() = default;
513 ArchSpec::ArchSpec(const char *triple_cstr) { in ArchSpec() function in ArchSpec
518 ArchSpec::ArchSpec(llvm::StringRef triple_str) { SetTriple(triple_str); } in ArchSpec() function in ArchSpec
520 ArchSpec::ArchSpec(const llvm::Triple &triple) { SetTriple(triple); } in ArchSpec() function in ArchSpec
522 ArchSpec::ArchSpec(ArchitectureType arch_type, uint32_t cpu, uint32_t subtype) { in ArchSpec() function in ArchSpec
526 ArchSpec::~ArchSpec() = default;
528 void ArchSpec::Clear() { in Clear()
539 const char *ArchSpec::GetArchitectureName() const { in GetArchitectureName()
546 bool ArchSpec::IsMIPS() const { return GetTriple().isMIPS(); } in IsMIPS()
548 std::string ArchSpec::GetTargetABI() const { in GetTargetABI()
553 switch (GetFlags() & ArchSpec::eMIPSABI_mask) { in GetTargetABI()
554 case ArchSpec::eMIPSABI_N64: in GetTargetABI()
557 case ArchSpec::eMIPSABI_N32: in GetTargetABI()
560 case ArchSpec::eMIPSABI_O32: in GetTargetABI()
570 void ArchSpec::SetFlags(const std::string &elf_abi) { in SetFlags()
575 flag |= ArchSpec::eMIPSABI_N64; in SetFlags()
577 flag |= ArchSpec::eMIPSABI_N32; in SetFlags()
579 flag |= ArchSpec::eMIPSABI_O32; in SetFlags()
584 std::string ArchSpec::GetClangTargetCPU() const { in GetClangTargetCPU()
589 case ArchSpec::eCore_mips32: in GetClangTargetCPU()
590 case ArchSpec::eCore_mips32el: in GetClangTargetCPU()
593 case ArchSpec::eCore_mips32r2: in GetClangTargetCPU()
594 case ArchSpec::eCore_mips32r2el: in GetClangTargetCPU()
597 case ArchSpec::eCore_mips32r3: in GetClangTargetCPU()
598 case ArchSpec::eCore_mips32r3el: in GetClangTargetCPU()
601 case ArchSpec::eCore_mips32r5: in GetClangTargetCPU()
602 case ArchSpec::eCore_mips32r5el: in GetClangTargetCPU()
605 case ArchSpec::eCore_mips32r6: in GetClangTargetCPU()
606 case ArchSpec::eCore_mips32r6el: in GetClangTargetCPU()
609 case ArchSpec::eCore_mips64: in GetClangTargetCPU()
610 case ArchSpec::eCore_mips64el: in GetClangTargetCPU()
613 case ArchSpec::eCore_mips64r2: in GetClangTargetCPU()
614 case ArchSpec::eCore_mips64r2el: in GetClangTargetCPU()
617 case ArchSpec::eCore_mips64r3: in GetClangTargetCPU()
618 case ArchSpec::eCore_mips64r3el: in GetClangTargetCPU()
621 case ArchSpec::eCore_mips64r5: in GetClangTargetCPU()
622 case ArchSpec::eCore_mips64r5el: in GetClangTargetCPU()
625 case ArchSpec::eCore_mips64r6: in GetClangTargetCPU()
626 case ArchSpec::eCore_mips64r6el: in GetClangTargetCPU()
636 uint32_t ArchSpec::GetMachOCPUType() const { in GetMachOCPUType()
648 uint32_t ArchSpec::GetMachOCPUSubType() const { in GetMachOCPUSubType()
660 uint32_t ArchSpec::GetDataByteSize() const { in GetDataByteSize()
664 uint32_t ArchSpec::GetCodeByteSize() const { in GetCodeByteSize()
668 llvm::Triple::ArchType ArchSpec::GetMachine() const { in GetMachine()
676 ConstString ArchSpec::GetDistributionId() const { in GetDistributionId()
680 void ArchSpec::SetDistributionId(const char *distribution_id) { in SetDistributionId()
684 uint32_t ArchSpec::GetAddressByteSize() const { in GetAddressByteSize()
698 ByteOrder ArchSpec::GetDefaultEndian() const { in GetDefaultEndian()
705 bool ArchSpec::CharIsSignedByDefault() const { in CharIsSignedByDefault()
731 lldb::ByteOrder ArchSpec::GetByteOrder() const { in GetByteOrder()
740 bool ArchSpec::SetTriple(const llvm::Triple &triple) { in SetTriple()
747 ArchSpec &arch) { in ParseMachCPUDashSubtypeTriple()
782 bool ArchSpec::SetTriple(llvm::StringRef triple) { in SetTriple()
795 bool ArchSpec::ContainsOnlyArch(const llvm::Triple &normalized_triple) { in ContainsOnlyArch()
802 void ArchSpec::MergeFrom(const ArchSpec &other) { in MergeFrom()
834 IsCompatibleMatch(other) && GetCore() == ArchSpec::eCore_arm_generic && in MergeFrom()
835 other.GetCore() != ArchSpec::eCore_arm_generic) { in MergeFrom()
844 bool ArchSpec::SetArchitecture(ArchitectureType arch_type, uint32_t cpu, in SetArchitecture()
917 uint32_t ArchSpec::GetMinimumOpcodeByteSize() const { in GetMinimumOpcodeByteSize()
924 uint32_t ArchSpec::GetMaximumOpcodeByteSize() const { in GetMaximumOpcodeByteSize()
931 bool ArchSpec::IsExactMatch(const ArchSpec &rhs) const { in IsExactMatch()
935 bool ArchSpec::IsCompatibleMatch(const ArchSpec &rhs) const { in IsCompatibleMatch()
970 bool ArchSpec::IsEqualTo(const ArchSpec &rhs, bool exact_match) const { in IsEqualTo()
1048 void ArchSpec::UpdateCore() { in UpdateCore()
1065 void ArchSpec::CoreUpdated(bool update_triple) { in CoreUpdated()
1081 static bool cores_match(const ArchSpec::Core core1, const ArchSpec::Core core2, in cores_match()
1087 case ArchSpec::kCore_any: in cores_match()
1090 case ArchSpec::eCore_arm_generic: in cores_match()
1094 case ArchSpec::kCore_arm_any: in cores_match()
1095 if (core2 >= ArchSpec::kCore_arm_first && core2 <= ArchSpec::kCore_arm_last) in cores_match()
1097 if (core2 >= ArchSpec::kCore_thumb_first && in cores_match()
1098 core2 <= ArchSpec::kCore_thumb_last) in cores_match()
1100 if (core2 == ArchSpec::kCore_arm_any) in cores_match()
1104 case ArchSpec::kCore_x86_32_any: in cores_match()
1105 if ((core2 >= ArchSpec::kCore_x86_32_first && in cores_match()
1106 core2 <= ArchSpec::kCore_x86_32_last) || in cores_match()
1107 (core2 == ArchSpec::kCore_x86_32_any)) in cores_match()
1111 case ArchSpec::kCore_x86_64_any: in cores_match()
1112 if ((core2 >= ArchSpec::kCore_x86_64_first && in cores_match()
1113 core2 <= ArchSpec::kCore_x86_64_last) || in cores_match()
1114 (core2 == ArchSpec::kCore_x86_64_any)) in cores_match()
1118 case ArchSpec::kCore_ppc_any: in cores_match()
1119 if ((core2 >= ArchSpec::kCore_ppc_first && in cores_match()
1120 core2 <= ArchSpec::kCore_ppc_last) || in cores_match()
1121 (core2 == ArchSpec::kCore_ppc_any)) in cores_match()
1125 case ArchSpec::kCore_ppc64_any: in cores_match()
1126 if ((core2 >= ArchSpec::kCore_ppc64_first && in cores_match()
1127 core2 <= ArchSpec::kCore_ppc64_last) || in cores_match()
1128 (core2 == ArchSpec::kCore_ppc64_any)) in cores_match()
1132 case ArchSpec::kCore_hexagon_any: in cores_match()
1133 if ((core2 >= ArchSpec::kCore_hexagon_first && in cores_match()
1134 core2 <= ArchSpec::kCore_hexagon_last) || in cores_match()
1135 (core2 == ArchSpec::kCore_hexagon_any)) in cores_match()
1143 case ArchSpec::eCore_arm_armv7em: in cores_match()
1145 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1147 if (core2 == ArchSpec::eCore_arm_armv7m) in cores_match()
1149 if (core2 == ArchSpec::eCore_arm_armv6m) in cores_match()
1151 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1161 case ArchSpec::eCore_arm_armv7m: in cores_match()
1163 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1165 if (core2 == ArchSpec::eCore_arm_armv6m) in cores_match()
1167 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1169 if (core2 == ArchSpec::eCore_arm_armv7em) in cores_match()
1179 case ArchSpec::eCore_arm_armv6m: in cores_match()
1181 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1183 if (core2 == ArchSpec::eCore_arm_armv7em) in cores_match()
1185 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1187 if (core2 == ArchSpec::eCore_arm_armv6m) in cores_match()
1193 case ArchSpec::eCore_arm_armv7f: in cores_match()
1194 case ArchSpec::eCore_arm_armv7k: in cores_match()
1195 case ArchSpec::eCore_arm_armv7s: in cores_match()
1196 case ArchSpec::eCore_arm_armv7l: in cores_match()
1197 case ArchSpec::eCore_arm_armv8l: in cores_match()
1199 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1201 if (core2 == ArchSpec::eCore_arm_armv7) in cores_match()
1207 case ArchSpec::eCore_x86_64_x86_64h: in cores_match()
1210 if (core2 == ArchSpec::eCore_x86_64_x86_64) in cores_match()
1215 case ArchSpec::eCore_arm_armv8: in cores_match()
1217 if (core2 == ArchSpec::eCore_arm_arm64) in cores_match()
1219 if (core2 == ArchSpec::eCore_arm_aarch64) in cores_match()
1221 if (core2 == ArchSpec::eCore_arm_arm64e) in cores_match()
1227 case ArchSpec::eCore_arm_arm64e: in cores_match()
1229 if (core2 == ArchSpec::eCore_arm_arm64) in cores_match()
1231 if (core2 == ArchSpec::eCore_arm_aarch64) in cores_match()
1233 if (core2 == ArchSpec::eCore_arm_armv8) in cores_match()
1238 case ArchSpec::eCore_arm_aarch64: in cores_match()
1240 if (core2 == ArchSpec::eCore_arm_arm64) in cores_match()
1242 if (core2 == ArchSpec::eCore_arm_armv8) in cores_match()
1244 if (core2 == ArchSpec::eCore_arm_arm64e) in cores_match()
1250 case ArchSpec::eCore_arm_arm64: in cores_match()
1252 if (core2 == ArchSpec::eCore_arm_aarch64) in cores_match()
1254 if (core2 == ArchSpec::eCore_arm_armv8) in cores_match()
1256 if (core2 == ArchSpec::eCore_arm_arm64e) in cores_match()
1262 case ArchSpec::eCore_arm_arm64_32: in cores_match()
1264 if (core2 == ArchSpec::eCore_arm_generic) in cores_match()
1270 case ArchSpec::eCore_mips32: in cores_match()
1272 if (core2 >= ArchSpec::kCore_mips32_first && in cores_match()
1273 core2 <= ArchSpec::kCore_mips32_last) in cores_match()
1279 case ArchSpec::eCore_mips32el: in cores_match()
1281 if (core2 >= ArchSpec::kCore_mips32el_first && in cores_match()
1282 core2 <= ArchSpec::kCore_mips32el_last) in cores_match()
1288 case ArchSpec::eCore_mips64: in cores_match()
1290 if (core2 >= ArchSpec::kCore_mips32_first && in cores_match()
1291 core2 <= ArchSpec::kCore_mips32_last) in cores_match()
1293 if (core2 >= ArchSpec::kCore_mips64_first && in cores_match()
1294 core2 <= ArchSpec::kCore_mips64_last) in cores_match()
1300 case ArchSpec::eCore_mips64el: in cores_match()
1302 if (core2 >= ArchSpec::kCore_mips32el_first && in cores_match()
1303 core2 <= ArchSpec::kCore_mips32el_last) in cores_match()
1305 if (core2 >= ArchSpec::kCore_mips64el_first && in cores_match()
1306 core2 <= ArchSpec::kCore_mips64el_last) in cores_match()
1312 case ArchSpec::eCore_mips64r2: in cores_match()
1313 case ArchSpec::eCore_mips64r3: in cores_match()
1314 case ArchSpec::eCore_mips64r5: in cores_match()
1316 if (core2 >= ArchSpec::kCore_mips32_first && core2 <= (core1 - 10)) in cores_match()
1318 if (core2 >= ArchSpec::kCore_mips64_first && core2 <= (core1 - 1)) in cores_match()
1324 case ArchSpec::eCore_mips64r2el: in cores_match()
1325 case ArchSpec::eCore_mips64r3el: in cores_match()
1326 case ArchSpec::eCore_mips64r5el: in cores_match()
1328 if (core2 >= ArchSpec::kCore_mips32el_first && core2 <= (core1 - 10)) in cores_match()
1330 if (core2 >= ArchSpec::kCore_mips64el_first && core2 <= (core1 - 1)) in cores_match()
1336 case ArchSpec::eCore_mips32r2: in cores_match()
1337 case ArchSpec::eCore_mips32r3: in cores_match()
1338 case ArchSpec::eCore_mips32r5: in cores_match()
1340 if (core2 >= ArchSpec::kCore_mips32_first && core2 <= core1) in cores_match()
1345 case ArchSpec::eCore_mips32r2el: in cores_match()
1346 case ArchSpec::eCore_mips32r3el: in cores_match()
1347 case ArchSpec::eCore_mips32r5el: in cores_match()
1349 if (core2 >= ArchSpec::kCore_mips32el_first && core2 <= core1) in cores_match()
1354 case ArchSpec::eCore_mips32r6: in cores_match()
1356 if (core2 == ArchSpec::eCore_mips32 || core2 == ArchSpec::eCore_mips32r6) in cores_match()
1361 case ArchSpec::eCore_mips32r6el: in cores_match()
1363 if (core2 == ArchSpec::eCore_mips32el || in cores_match()
1364 core2 == ArchSpec::eCore_mips32r6el) in cores_match()
1369 case ArchSpec::eCore_mips64r6: in cores_match()
1371 if (core2 == ArchSpec::eCore_mips32 || core2 == ArchSpec::eCore_mips32r6) in cores_match()
1373 if (core2 == ArchSpec::eCore_mips64 || core2 == ArchSpec::eCore_mips64r6) in cores_match()
1378 case ArchSpec::eCore_mips64r6el: in cores_match()
1380 if (core2 == ArchSpec::eCore_mips32el || in cores_match()
1381 core2 == ArchSpec::eCore_mips32r6el) in cores_match()
1383 if (core2 == ArchSpec::eCore_mips64el || in cores_match()
1384 core2 == ArchSpec::eCore_mips64r6el) in cores_match()
1397 bool lldb_private::operator<(const ArchSpec &lhs, const ArchSpec &rhs) { in operator <()
1398 const ArchSpec::Core lhs_core = lhs.GetCore(); in operator <()
1399 const ArchSpec::Core rhs_core = rhs.GetCore(); in operator <()
1404 bool lldb_private::operator==(const ArchSpec &lhs, const ArchSpec &rhs) { in operator ==()
1408 bool ArchSpec::IsFullySpecifiedTriple() const { in IsFullySpecifiedTriple()
1423 void ArchSpec::PiecewiseTripleCompare( in PiecewiseTripleCompare()
1424 const ArchSpec &other, bool &arch_different, bool &vendor_different, in PiecewiseTripleCompare()
1440 bool ArchSpec::IsAlwaysThumbInstructions() const { in IsAlwaysThumbInstructions()
1452 if (GetCore() == ArchSpec::Core::eCore_arm_armv7m || in IsAlwaysThumbInstructions()
1453 GetCore() == ArchSpec::Core::eCore_arm_armv7em || in IsAlwaysThumbInstructions()
1454 GetCore() == ArchSpec::Core::eCore_arm_armv6m || in IsAlwaysThumbInstructions()
1455 GetCore() == ArchSpec::Core::eCore_thumbv7m || in IsAlwaysThumbInstructions()
1456 GetCore() == ArchSpec::Core::eCore_thumbv7em || in IsAlwaysThumbInstructions()
1457 GetCore() == ArchSpec::Core::eCore_thumbv6m) { in IsAlwaysThumbInstructions()
1467 void ArchSpec::DumpTriple(llvm::raw_ostream &s) const { in DumpTriple()
1482 void llvm::yaml::ScalarTraits<ArchSpec>::output(const ArchSpec &Val, void *, in output()
1488 llvm::yaml::ScalarTraits<ArchSpec>::input(llvm::StringRef Scalar, void *, in input()
1489 ArchSpec &Val) { in input()
1490 Val = ArchSpec(Scalar); in input()