Lines Matching refs:Triple
69 static TargetInfo *AllocateTarget(const llvm::Triple &Triple,
80 virtual void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple,
83 OSTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in OSTargetInfo() argument
84 : TgtInfo(Triple, Opts) {} in OSTargetInfo()
97 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
109 CloudABITargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in CloudABITargetInfo() argument
110 : OSTargetInfo<Target>(Triple, Opts) {} in CloudABITargetInfo()
114 const llvm::Triple &Triple, in getDarwinDefines() argument
143 if (Triple.isMacOSX()) { in getDarwinDefines()
144 Triple.getMacOSXVersion(Maj, Min, Rev); in getDarwinDefines()
147 Triple.getOSVersion(Maj, Min, Rev); in getDarwinDefines()
148 PlatformName = llvm::Triple::getOSTypeName(Triple.getOS()); in getDarwinDefines()
160 if (Triple.isiOS()) { in getDarwinDefines()
169 if (Triple.isTvOS()) in getDarwinDefines()
175 } else if (Triple.isWatchOS()) { in getDarwinDefines()
185 } else if (Triple.isMacOSX()) { in getDarwinDefines()
212 if (Triple.isOSDarwin()) in getDarwinDefines()
216 if(Triple.isWatchABI()) in getDarwinDefines()
225 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
227 getDarwinDefines(Builder, Opts, Triple, this->PlatformName, in getOSDefines()
232 DarwinTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DarwinTargetInfo() argument
233 : OSTargetInfo<Target>(Triple, Opts) { in DarwinTargetInfo()
238 if (Triple.isMacOSX()) in DarwinTargetInfo()
239 this->TLSSupported = !Triple.isMacOSXVersionLT(10, 7); in DarwinTargetInfo()
240 else if (Triple.isiOS()) { in DarwinTargetInfo()
242 if (Triple.getArch() == llvm::Triple::x86_64 || in DarwinTargetInfo()
243 Triple.getArch() == llvm::Triple::aarch64) in DarwinTargetInfo()
244 this->TLSSupported = !Triple.isOSVersionLT(8); in DarwinTargetInfo()
245 else if (Triple.getArch() == llvm::Triple::x86 || in DarwinTargetInfo()
246 Triple.getArch() == llvm::Triple::arm || in DarwinTargetInfo()
247 Triple.getArch() == llvm::Triple::thumb) in DarwinTargetInfo()
248 this->TLSSupported = !Triple.isOSVersionLT(9); in DarwinTargetInfo()
249 } else if (Triple.isWatchOS()) in DarwinTargetInfo()
250 this->TLSSupported = !Triple.isOSVersionLT(2); in DarwinTargetInfo()
289 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
300 DragonFlyBSDTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DragonFlyBSDTargetInfo() argument
301 : OSTargetInfo<Target>(Triple, Opts) { in DragonFlyBSDTargetInfo()
302 switch (Triple.getArch()) { in DragonFlyBSDTargetInfo()
304 case llvm::Triple::x86: in DragonFlyBSDTargetInfo()
305 case llvm::Triple::x86_64: in DragonFlyBSDTargetInfo()
320 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
324 unsigned Release = Triple.getOSMajorVersion(); in getOSDefines()
349 FreeBSDTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in FreeBSDTargetInfo() argument
350 : OSTargetInfo<Target>(Triple, Opts) { in FreeBSDTargetInfo()
351 switch (Triple.getArch()) { in FreeBSDTargetInfo()
353 case llvm::Triple::x86: in FreeBSDTargetInfo()
354 case llvm::Triple::x86_64: in FreeBSDTargetInfo()
357 case llvm::Triple::mips: in FreeBSDTargetInfo()
358 case llvm::Triple::mipsel: in FreeBSDTargetInfo()
359 case llvm::Triple::ppc: in FreeBSDTargetInfo()
360 case llvm::Triple::ppc64: in FreeBSDTargetInfo()
361 case llvm::Triple::ppc64le: in FreeBSDTargetInfo()
364 case llvm::Triple::arm: in FreeBSDTargetInfo()
375 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
389 KFreeBSDTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in KFreeBSDTargetInfo() argument
390 : OSTargetInfo<Target>(Triple, Opts) {} in KFreeBSDTargetInfo()
397 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
405 HaikuTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in HaikuTargetInfo() argument
406 : OSTargetInfo<Target>(Triple, Opts) { in HaikuTargetInfo()
420 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
435 MinixTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in MinixTargetInfo() argument
436 : OSTargetInfo<Target>(Triple, Opts) {} in MinixTargetInfo()
443 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
450 if (Triple.isAndroid()) { in getOSDefines()
453 Triple.getEnvironmentVersion(Maj, Min, Rev); in getOSDefines()
465 LinuxTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in LinuxTargetInfo() argument
466 : OSTargetInfo<Target>(Triple, Opts) { in LinuxTargetInfo()
469 switch (Triple.getArch()) { in LinuxTargetInfo()
472 case llvm::Triple::ppc: in LinuxTargetInfo()
473 case llvm::Triple::ppc64: in LinuxTargetInfo()
474 case llvm::Triple::ppc64le: in LinuxTargetInfo()
477 case llvm::Triple::x86: in LinuxTargetInfo()
478 case llvm::Triple::x86_64: in LinuxTargetInfo()
479 case llvm::Triple::systemz: in LinuxTargetInfo()
494 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
503 switch (Triple.getArch()) { in getOSDefines()
506 case llvm::Triple::arm: in getOSDefines()
507 case llvm::Triple::armeb: in getOSDefines()
508 case llvm::Triple::thumb: in getOSDefines()
509 case llvm::Triple::thumbeb: in getOSDefines()
515 NetBSDTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in NetBSDTargetInfo() argument
516 : OSTargetInfo<Target>(Triple, Opts) { in NetBSDTargetInfo()
525 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
536 OpenBSDTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in OpenBSDTargetInfo() argument
537 : OSTargetInfo<Target>(Triple, Opts) { in OpenBSDTargetInfo()
540 switch (Triple.getArch()) { in OpenBSDTargetInfo()
542 case llvm::Triple::x86: in OpenBSDTargetInfo()
543 case llvm::Triple::x86_64: in OpenBSDTargetInfo()
544 case llvm::Triple::arm: in OpenBSDTargetInfo()
545 case llvm::Triple::sparc: in OpenBSDTargetInfo()
548 case llvm::Triple::mips64: in OpenBSDTargetInfo()
549 case llvm::Triple::mips64el: in OpenBSDTargetInfo()
550 case llvm::Triple::ppc: in OpenBSDTargetInfo()
551 case llvm::Triple::sparcv9: in OpenBSDTargetInfo()
562 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
572 switch (Triple.getArch()) { in getOSDefines()
575 case llvm::Triple::arm: in getOSDefines()
576 case llvm::Triple::armeb: in getOSDefines()
577 case llvm::Triple::thumb: in getOSDefines()
578 case llvm::Triple::thumbeb: in getOSDefines()
584 BitrigTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in BitrigTargetInfo() argument
585 : OSTargetInfo<Target>(Triple, Opts) { in BitrigTargetInfo()
594 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
603 PSPTargetInfo(const llvm::Triple &Triple) : OSTargetInfo<Target>(Triple) {} in PSPTargetInfo() argument
610 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
622 PS3PPUTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in PS3PPUTargetInfo() argument
623 : OSTargetInfo<Target>(Triple, Opts) { in PS3PPUTargetInfo()
636 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
646 PS4OSTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in PS4OSTargetInfo() argument
647 : OSTargetInfo<Target>(Triple, Opts) { in PS4OSTargetInfo()
657 switch (Triple.getArch()) { in PS4OSTargetInfo()
659 case llvm::Triple::x86_64: in PS4OSTargetInfo()
670 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
693 SolarisTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in SolarisTargetInfo() argument
694 : OSTargetInfo<Target>(Triple, Opts) { in SolarisTargetInfo()
704 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
761 WindowsTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in WindowsTargetInfo() argument
762 : OSTargetInfo<Target>(Triple, Opts) {} in WindowsTargetInfo()
768 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
781 NaClTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in NaClTargetInfo() argument
782 : OSTargetInfo<Target>(Triple, Opts) { in NaClTargetInfo()
799 if (Triple.getArch() == llvm::Triple::arm) { in NaClTargetInfo()
801 } else if (Triple.getArch() == llvm::Triple::x86) { in NaClTargetInfo()
803 } else if (Triple.getArch() == llvm::Triple::x86_64) { in NaClTargetInfo()
805 } else if (Triple.getArch() == llvm::Triple::mipsel) { in NaClTargetInfo()
808 assert(Triple.getArch() == llvm::Triple::le32); in NaClTargetInfo()
817 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
833 explicit WebAssemblyOSTargetInfo(const llvm::Triple &Triple, in WebAssemblyOSTargetInfo() argument
835 : OSTargetInfo<Target>(Triple, Opts) { in WebAssemblyOSTargetInfo()
866 PPCTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in PPCTargetInfo() argument
867 : TargetInfo(Triple), HasVSX(false), HasP8Vector(false), in PPCTargetInfo()
870 BigEndian = (Triple.getArch() != llvm::Triple::ppc64le); in PPCTargetInfo()
1175 if (getTriple().getArch() == llvm::Triple::ppc64le) { in getTargetDefines()
1178 if (getTriple().getOS() != llvm::Triple::NetBSD && in getTargetDefines()
1179 getTriple().getOS() != llvm::Triple::OpenBSD) in getTargetDefines()
1301 if (getTriple().getVendor() == llvm::Triple::BGQ) { in getTargetDefines()
1580 PPC32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in PPC32TargetInfo() argument
1581 : PPCTargetInfo(Triple, Opts) { in PPC32TargetInfo()
1585 case llvm::Triple::Linux: in PPC32TargetInfo()
1586 case llvm::Triple::FreeBSD: in PPC32TargetInfo()
1587 case llvm::Triple::NetBSD: in PPC32TargetInfo()
1596 if (getTriple().getOS() == llvm::Triple::FreeBSD) { in PPC32TargetInfo()
1615 PPC64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in PPC64TargetInfo() argument
1616 : PPCTargetInfo(Triple, Opts) { in PPC64TargetInfo()
1621 if ((Triple.getArch() == llvm::Triple::ppc64le)) { in PPC64TargetInfo()
1630 case llvm::Triple::FreeBSD: in PPC64TargetInfo()
1634 case llvm::Triple::NetBSD: in PPC64TargetInfo()
1660 DarwinPPC32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DarwinPPC32TargetInfo() argument
1661 : DarwinTargetInfo<PPC32TargetInfo>(Triple, Opts) { in DarwinPPC32TargetInfo()
1676 DarwinPPC64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DarwinPPC64TargetInfo() argument
1677 : DarwinTargetInfo<PPC64TargetInfo>(Triple, Opts) { in DarwinPPC64TargetInfo()
1701 NVPTXTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in NVPTXTargetInfo() argument
1702 : TargetInfo(Triple) { in NVPTXTargetInfo()
1715 llvm::Triple HostTriple(Opts.HostTriple); in NVPTXTargetInfo()
1719 AllocateTarget(llvm::Triple(Opts.HostTriple), Opts)); in NVPTXTargetInfo()
1884 NVPTX32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in NVPTX32TargetInfo() argument
1885 : NVPTXTargetInfo(Triple, Opts) { in NVPTX32TargetInfo()
1897 NVPTX64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in NVPTX64TargetInfo() argument
1898 : NVPTXTargetInfo(Triple, Opts) { in NVPTX64TargetInfo()
1953 static bool isAMDGCN(const llvm::Triple &TT) { in isAMDGCN()
1954 return TT.getArch() == llvm::Triple::amdgcn; in isAMDGCN()
1958 AMDGPUTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in AMDGPUTargetInfo() argument
1959 : TargetInfo(Triple) , in AMDGPUTargetInfo()
1960 GPU(isAMDGCN(Triple) ? GK_SOUTHERN_ISLANDS : GK_R600), in AMDGPUTargetInfo()
1964 if (getTriple().getArch() == llvm::Triple::amdgcn) { in AMDGPUTargetInfo()
1970 resetDataLayout(getTriple().getArch() == llvm::Triple::amdgcn ? in AMDGPUTargetInfo()
2024 if (getTriple().getArch() == llvm::Triple::amdgcn) in getTargetDefines()
2092 if (getTriple().getArch() == llvm::Triple::amdgcn) in setCPU()
2203 if (getTriple().getArch() == llvm::Triple::amdgcn) { in initFeatureMap()
2614 X86TargetInfo(const llvm::Triple &Triple, const TargetOptions &) in X86TargetInfo() argument
2615 : TargetInfo(Triple) { in X86TargetInfo()
2688 if (getTriple().getArch() == llvm::Triple::x86_64 && SSELevel >= AVX512F) in getABI()
2690 if (getTriple().getArch() == llvm::Triple::x86_64 && SSELevel >= AVX) in getABI()
2692 if (getTriple().getArch() == llvm::Triple::x86 && in getABI()
2739 if (getTriple().getArch() != llvm::Triple::x86) in setCPU()
2827 if (getTriple().getArch() == llvm::Triple::x86_64) in initFeatureMap()
3405 if (getTriple().getArch() == llvm::Triple::x86_64) { in getTargetDefines()
3696 if (Opts.MicrosoftExt && getTriple().getArch() == llvm::Triple::x86) { in getTargetDefines()
3788 .Case("x86_32", getTriple().getArch() == llvm::Triple::x86) in hasFeature()
3789 .Case("x86_64", getTriple().getArch() == llvm::Triple::x86_64) in hasFeature()
3994 X86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in X86_32TargetInfo() argument
3995 : X86TargetInfo(Triple, Opts) { in X86_32TargetInfo()
4049 NetBSDI386TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in NetBSDI386TargetInfo() argument
4050 : NetBSDTargetInfo<X86_32TargetInfo>(Triple, Opts) {} in NetBSDI386TargetInfo()
4065 OpenBSDI386TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in OpenBSDI386TargetInfo() argument
4066 : OpenBSDTargetInfo<X86_32TargetInfo>(Triple, Opts) { in OpenBSDI386TargetInfo()
4075 BitrigI386TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in BitrigI386TargetInfo() argument
4076 : BitrigTargetInfo<X86_32TargetInfo>(Triple, Opts) { in BitrigI386TargetInfo()
4085 DarwinI386TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DarwinI386TargetInfo() argument
4086 : DarwinTargetInfo<X86_32TargetInfo>(Triple, Opts) { in DarwinI386TargetInfo()
4092 llvm::Triple T = llvm::Triple(Triple); in DarwinI386TargetInfo()
4116 WindowsX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in WindowsX86_32TargetInfo() argument
4117 : WindowsTargetInfo<X86_32TargetInfo>(Triple, Opts) { in WindowsX86_32TargetInfo()
4135 MicrosoftX86_32TargetInfo(const llvm::Triple &Triple, in MicrosoftX86_32TargetInfo() argument
4137 : WindowsX86_32TargetInfo(Triple, Opts) { in MicrosoftX86_32TargetInfo()
4185 MinGWX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in MinGWX86_32TargetInfo() argument
4186 : WindowsX86_32TargetInfo(Triple, Opts) {} in MinGWX86_32TargetInfo()
4200 CygwinX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in CygwinX86_32TargetInfo() argument
4201 : X86_32TargetInfo(Triple, Opts) { in CygwinX86_32TargetInfo()
4222 HaikuX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in HaikuX86_32TargetInfo() argument
4223 : HaikuTargetInfo<X86_32TargetInfo>(Triple, Opts) { in HaikuX86_32TargetInfo()
4235 MCUX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in MCUX86_32TargetInfo() argument
4236 : X86_32TargetInfo(Triple, Opts) { in MCUX86_32TargetInfo()
4264 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
4273 RTEMSTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in RTEMSTargetInfo() argument
4274 : OSTargetInfo<Target>(Triple, Opts) { in RTEMSTargetInfo()
4275 switch (Triple.getArch()) { in RTEMSTargetInfo()
4277 case llvm::Triple::x86: in RTEMSTargetInfo()
4280 case llvm::Triple::mips: in RTEMSTargetInfo()
4281 case llvm::Triple::mipsel: in RTEMSTargetInfo()
4282 case llvm::Triple::ppc: in RTEMSTargetInfo()
4283 case llvm::Triple::ppc64: in RTEMSTargetInfo()
4284 case llvm::Triple::ppc64le: in RTEMSTargetInfo()
4287 case llvm::Triple::arm: in RTEMSTargetInfo()
4297 RTEMSX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in RTEMSX86_32TargetInfo() argument
4298 : X86_32TargetInfo(Triple, Opts) { in RTEMSX86_32TargetInfo()
4314 X86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in X86_64TargetInfo() argument
4315 : X86TargetInfo(Triple, Opts) { in X86_64TargetInfo()
4316 const bool IsX32 = getTriple().getEnvironment() == llvm::Triple::GNUX32; in X86_64TargetInfo()
4405 WindowsX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in WindowsX86_64TargetInfo() argument
4406 : WindowsTargetInfo<X86_64TargetInfo>(Triple, Opts) { in WindowsX86_64TargetInfo()
4447 MicrosoftX86_64TargetInfo(const llvm::Triple &Triple, in MicrosoftX86_64TargetInfo() argument
4449 : WindowsX86_64TargetInfo(Triple, Opts) { in MicrosoftX86_64TargetInfo()
4465 MinGWX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in MinGWX86_64TargetInfo() argument
4466 : WindowsX86_64TargetInfo(Triple, Opts) { in MinGWX86_64TargetInfo()
4489 CygwinX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in CygwinX86_64TargetInfo() argument
4490 : X86_64TargetInfo(Triple, Opts) { in CygwinX86_64TargetInfo()
4513 DarwinX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DarwinX86_64TargetInfo() argument
4514 : DarwinTargetInfo<X86_64TargetInfo>(Triple, Opts) { in DarwinX86_64TargetInfo()
4517 llvm::Triple T = llvm::Triple(Triple); in DarwinX86_64TargetInfo()
4537 OpenBSDX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in OpenBSDX86_64TargetInfo() argument
4538 : OpenBSDTargetInfo<X86_64TargetInfo>(Triple, Opts) { in OpenBSDX86_64TargetInfo()
4546 BitrigX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in BitrigX86_64TargetInfo() argument
4547 : BitrigTargetInfo<X86_64TargetInfo>(Triple, Opts) { in BitrigX86_64TargetInfo()
4629 const llvm::Triple &T = getTriple(); in setABIAAPCS()
4632 if (T.isOSBinFormatMachO() || T.getOS() == llvm::Triple::NetBSD || in setABIAAPCS()
4633 T.getOS() == llvm::Triple::Bitrig) in setABIAAPCS()
4639 case llvm::Triple::NetBSD: in setABIAAPCS()
4642 case llvm::Triple::Win32: in setABIAAPCS()
4645 case llvm::Triple::Linux: in setABIAAPCS()
4685 const llvm::Triple &T = getTriple(); in setABIAPCS()
4695 if (T.getOS() == llvm::Triple::FreeBSD) in setABIAPCS()
4831 ARMTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts, in ARMTargetInfo() argument
4833 : TargetInfo(Triple), FPMath(FP_Default), IsAAPCS(true), LDREX(0), in ARMTargetInfo()
4838 case llvm::Triple::NetBSD: in ARMTargetInfo()
4856 if (Triple.isOSBinFormatMachO()) { in ARMTargetInfo()
4859 if (Triple.getEnvironment() == llvm::Triple::EABI || in ARMTargetInfo()
4860 Triple.getOS() == llvm::Triple::UnknownOS || in ARMTargetInfo()
4863 } else if (Triple.isWatchABI()) { in ARMTargetInfo()
4868 } else if (Triple.isOSWindows()) { in ARMTargetInfo()
4873 switch (Triple.getEnvironment()) { in ARMTargetInfo()
4874 case llvm::Triple::Android: in ARMTargetInfo()
4875 case llvm::Triple::GNUEABI: in ARMTargetInfo()
4876 case llvm::Triple::GNUEABIHF: in ARMTargetInfo()
4877 case llvm::Triple::MuslEABI: in ARMTargetInfo()
4878 case llvm::Triple::MuslEABIHF: in ARMTargetInfo()
4881 case llvm::Triple::EABIHF: in ARMTargetInfo()
4882 case llvm::Triple::EABI: in ARMTargetInfo()
4885 case llvm::Triple::GNU: in ARMTargetInfo()
4889 if (Triple.getOS() == llvm::Triple::NetBSD) in ARMTargetInfo()
4909 if (Triple.getOS() == llvm::Triple::Linux || in ARMTargetInfo()
4910 Triple.getOS() == llvm::Triple::UnknownOS) in ARMTargetInfo()
5081 if (getTriple().getOS() == llvm::Triple::UnknownOS && in getTargetDefines()
5082 getTriple().getEnvironment() == llvm::Triple::EABI) in getTargetDefines()
5474 ARMleTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in ARMleTargetInfo() argument
5475 : ARMTargetInfo(Triple, Opts, /*BigEndian=*/false) {} in ARMleTargetInfo()
5485 ARMbeTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in ARMbeTargetInfo() argument
5486 : ARMTargetInfo(Triple, Opts, /*BigEndian=*/true) {} in ARMbeTargetInfo()
5496 const llvm::Triple Triple; member in __anon3b6491f20111::WindowsARMTargetInfo
5498 WindowsARMTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in WindowsARMTargetInfo() argument
5499 : WindowsTargetInfo<ARMleTargetInfo>(Triple, Opts), Triple(Triple) { in WindowsARMTargetInfo()
5512 assert((Triple.getArch() == llvm::Triple::arm || in getVisualStudioDefines()
5513 Triple.getArch() == llvm::Triple::thumb) && in getVisualStudioDefines()
5515 unsigned Offset = Triple.getArch() == llvm::Triple::arm ? 4 : 6; in getVisualStudioDefines()
5516 Builder.defineMacro("_M_ARM", Triple.getArchName().substr(Offset)); in getVisualStudioDefines()
5543 ItaniumWindowsARMleTargetInfo(const llvm::Triple &Triple, in ItaniumWindowsARMleTargetInfo() argument
5545 : WindowsARMTargetInfo(Triple, Opts) { in ItaniumWindowsARMleTargetInfo()
5561 MicrosoftARMleTargetInfo(const llvm::Triple &Triple, in MicrosoftARMleTargetInfo() argument
5563 : WindowsARMTargetInfo(Triple, Opts) { in MicrosoftARMleTargetInfo()
5577 MinGWARMTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in MinGWARMTargetInfo() argument
5578 : WindowsARMTargetInfo(Triple, Opts) { in MinGWARMTargetInfo()
5595 CygwinARMTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in CygwinARMTargetInfo() argument
5596 : ARMleTargetInfo(Triple, Opts) { in CygwinARMTargetInfo()
5616 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
5618 getDarwinDefines(Builder, Opts, Triple, PlatformName, PlatformMinVersion); in getOSDefines()
5622 DarwinARMTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DarwinARMTargetInfo() argument
5623 : DarwinTargetInfo<ARMleTargetInfo>(Triple, Opts) { in DarwinARMTargetInfo()
5630 if (Triple.isWatchABI()) { in DarwinARMTargetInfo()
5666 AArch64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in AArch64TargetInfo() argument
5667 : TargetInfo(Triple), ABI("aapcs") { in AArch64TargetInfo()
5668 if (getTriple().getOS() == llvm::Triple::NetBSD) { in AArch64TargetInfo()
5703 if (Triple.getOS() == llvm::Triple::Linux || in AArch64TargetInfo()
5704 Triple.getOS() == llvm::Triple::UnknownOS) in AArch64TargetInfo()
6002 AArch64leTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in AArch64leTargetInfo() argument
6003 : AArch64TargetInfo(Triple, Opts) { in AArch64leTargetInfo()
6020 AArch64beTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in AArch64beTargetInfo() argument
6021 : AArch64TargetInfo(Triple, Opts) {} in AArch64beTargetInfo()
6033 void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, in getOSDefines() argument
6043 getDarwinDefines(Builder, Opts, Triple, PlatformName, PlatformMinVersion); in getOSDefines()
6047 DarwinAArch64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in DarwinAArch64TargetInfo() argument
6048 : DarwinTargetInfo<AArch64leTargetInfo>(Triple, Opts) { in DarwinAArch64TargetInfo()
6073 HexagonTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in HexagonTargetInfo() argument
6074 : TargetInfo(Triple) { in HexagonTargetInfo()
6277 LanaiTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in LanaiTargetInfo() argument
6278 : TargetInfo(Triple) { in LanaiTargetInfo()
6377 SparcTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in SparcTargetInfo() argument
6378 : TargetInfo(Triple), SoftFloat(false) {} in SparcTargetInfo()
6603 SparcV8TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in SparcV8TargetInfo() argument
6604 : SparcTargetInfo(Triple, Opts) { in SparcV8TargetInfo()
6613 case llvm::Triple::NetBSD: in SparcV8TargetInfo()
6614 case llvm::Triple::OpenBSD: in SparcV8TargetInfo()
6629 if (getTriple().getOS() != llvm::Triple::Solaris) in getTargetDefines()
6634 if (getTriple().getOS() != llvm::Triple::Solaris) { in getTargetDefines()
6640 if (getTriple().getVendor() == llvm::Triple::Myriad) { in getTargetDefines()
6664 SparcV8elTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in SparcV8elTargetInfo() argument
6665 : SparcV8TargetInfo(Triple, Opts) { in SparcV8elTargetInfo()
6674 SparcV9TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in SparcV9TargetInfo() argument
6675 : SparcTargetInfo(Triple, Opts) { in SparcV9TargetInfo()
6682 if (getTriple().getOS() == llvm::Triple::OpenBSD) in SparcV9TargetInfo()
6702 if (getTriple().getOS() != llvm::Triple::Solaris) { in getTargetDefines()
6724 SystemZTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in SystemZTargetInfo() argument
6725 : TargetInfo(Triple), CPU("z10"), HasTransactionalExecution(false), in SystemZTargetInfo()
6900 MSP430TargetInfo(const llvm::Triple &Triple, const TargetOptions &) in MSP430TargetInfo() argument
6901 : TargetInfo(Triple) { in MSP430TargetInfo()
6988 TCETargetInfo(const llvm::Triple &Triple, const TargetOptions &) in TCETargetInfo() argument
6989 : TargetInfo(Triple) { in TCETargetInfo()
7042 BPFTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in BPFTargetInfo() argument
7043 : TargetInfo(Triple) { in BPFTargetInfo()
7051 if (Triple.getArch() == llvm::Triple::bpfeb) { in BPFTargetInfo()
7129 MipsTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in MipsTargetInfo() argument
7130 : TargetInfo(Triple), IsMips16(false), IsMicromips(false), in MipsTargetInfo()
7134 BigEndian = getTriple().getArch() == llvm::Triple::mips || in MipsTargetInfo()
7135 getTriple().getArch() == llvm::Triple::mips64; in MipsTargetInfo()
7137 setABI((getTriple().getArch() == llvm::Triple::mips || in MipsTargetInfo()
7138 getTriple().getArch() == llvm::Triple::mipsel) in MipsTargetInfo()
7209 if (getTriple().getOS() == llvm::Triple::FreeBSD) { in setN32N64ABITypes()
7603 if ((getTriple().getArch() == llvm::Triple::mips64 || in validateTarget()
7604 getTriple().getArch() == llvm::Triple::mips64el) && in validateTarget()
7614 if ((getTriple().getArch() == llvm::Triple::mips || in validateTarget()
7615 getTriple().getArch() == llvm::Triple::mipsel) && in validateTarget()
7636 PNaClTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in PNaClTargetInfo() argument
7637 : TargetInfo(Triple) { in PNaClTargetInfo()
7692 NaClMips32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in NaClMips32TargetInfo() argument
7693 : MipsTargetInfo(Triple, Opts) {} in NaClMips32TargetInfo()
7704 Le64TargetInfo(const llvm::Triple &Triple, const TargetOptions &) in Le64TargetInfo() argument
7705 : TargetInfo(Triple) { in Le64TargetInfo()
7750 explicit WebAssemblyTargetInfo(const llvm::Triple &T, const TargetOptions &) in WebAssemblyTargetInfo()
7856 explicit WebAssembly32TargetInfo(const llvm::Triple &T, in WebAssembly32TargetInfo()
7873 explicit WebAssembly64TargetInfo(const llvm::Triple &T, in WebAssembly64TargetInfo()
7907 SPIRTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in SPIRTargetInfo() argument
7908 : TargetInfo(Triple) { in SPIRTargetInfo()
7909 assert(getTriple().getOS() == llvm::Triple::UnknownOS && in SPIRTargetInfo()
7911 assert(getTriple().getEnvironment() == llvm::Triple::UnknownEnvironment && in SPIRTargetInfo()
7962 SPIR32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in SPIR32TargetInfo() argument
7963 : SPIRTargetInfo(Triple, Opts) { in SPIR32TargetInfo()
7978 SPIR64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in SPIR64TargetInfo() argument
7979 : SPIRTargetInfo(Triple, Opts) { in SPIR64TargetInfo()
7995 XCoreTargetInfo(const llvm::Triple &Triple, const TargetOptions &) in XCoreTargetInfo() argument
7996 : TargetInfo(Triple) { in XCoreTargetInfo()
8059 AndroidX86_32TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in AndroidX86_32TargetInfo() argument
8060 : LinuxTargetInfo<X86_32TargetInfo>(Triple, Opts) { in AndroidX86_32TargetInfo()
8070 AndroidX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) in AndroidX86_64TargetInfo() argument
8071 : LinuxTargetInfo<X86_64TargetInfo>(Triple, Opts) { in AndroidX86_64TargetInfo()
8083 RenderScript32TargetInfo(const llvm::Triple &Triple, in RenderScript32TargetInfo() argument
8085 : ARMleTargetInfo(llvm::Triple("armv7", Triple.getVendorName(), in RenderScript32TargetInfo()
8086 Triple.getOSName(), in RenderScript32TargetInfo()
8087 Triple.getEnvironmentName()), in RenderScript32TargetInfo()
8102 RenderScript64TargetInfo(const llvm::Triple &Triple, in RenderScript64TargetInfo() argument
8104 : AArch64leTargetInfo(llvm::Triple("aarch64", Triple.getVendorName(), in RenderScript64TargetInfo()
8105 Triple.getOSName(), in RenderScript64TargetInfo()
8106 Triple.getEnvironmentName()), in RenderScript64TargetInfo()
8124 static TargetInfo *AllocateTarget(const llvm::Triple &Triple, in AllocateTarget() argument
8126 llvm::Triple::OSType os = Triple.getOS(); in AllocateTarget()
8128 switch (Triple.getArch()) { in AllocateTarget()
8132 case llvm::Triple::xcore: in AllocateTarget()
8133 return new XCoreTargetInfo(Triple, Opts); in AllocateTarget()
8135 case llvm::Triple::hexagon: in AllocateTarget()
8136 return new HexagonTargetInfo(Triple, Opts); in AllocateTarget()
8138 case llvm::Triple::lanai: in AllocateTarget()
8139 return new LanaiTargetInfo(Triple, Opts); in AllocateTarget()
8141 case llvm::Triple::aarch64: in AllocateTarget()
8142 if (Triple.isOSDarwin()) in AllocateTarget()
8143 return new DarwinAArch64TargetInfo(Triple, Opts); in AllocateTarget()
8146 case llvm::Triple::CloudABI: in AllocateTarget()
8147 return new CloudABITargetInfo<AArch64leTargetInfo>(Triple, Opts); in AllocateTarget()
8148 case llvm::Triple::FreeBSD: in AllocateTarget()
8149 return new FreeBSDTargetInfo<AArch64leTargetInfo>(Triple, Opts); in AllocateTarget()
8150 case llvm::Triple::Linux: in AllocateTarget()
8151 return new LinuxTargetInfo<AArch64leTargetInfo>(Triple, Opts); in AllocateTarget()
8152 case llvm::Triple::NetBSD: in AllocateTarget()
8153 return new NetBSDTargetInfo<AArch64leTargetInfo>(Triple, Opts); in AllocateTarget()
8155 return new AArch64leTargetInfo(Triple, Opts); in AllocateTarget()
8158 case llvm::Triple::aarch64_be: in AllocateTarget()
8160 case llvm::Triple::FreeBSD: in AllocateTarget()
8161 return new FreeBSDTargetInfo<AArch64beTargetInfo>(Triple, Opts); in AllocateTarget()
8162 case llvm::Triple::Linux: in AllocateTarget()
8163 return new LinuxTargetInfo<AArch64beTargetInfo>(Triple, Opts); in AllocateTarget()
8164 case llvm::Triple::NetBSD: in AllocateTarget()
8165 return new NetBSDTargetInfo<AArch64beTargetInfo>(Triple, Opts); in AllocateTarget()
8167 return new AArch64beTargetInfo(Triple, Opts); in AllocateTarget()
8170 case llvm::Triple::arm: in AllocateTarget()
8171 case llvm::Triple::thumb: in AllocateTarget()
8172 if (Triple.isOSBinFormatMachO()) in AllocateTarget()
8173 return new DarwinARMTargetInfo(Triple, Opts); in AllocateTarget()
8176 case llvm::Triple::Linux: in AllocateTarget()
8177 return new LinuxTargetInfo<ARMleTargetInfo>(Triple, Opts); in AllocateTarget()
8178 case llvm::Triple::FreeBSD: in AllocateTarget()
8179 return new FreeBSDTargetInfo<ARMleTargetInfo>(Triple, Opts); in AllocateTarget()
8180 case llvm::Triple::NetBSD: in AllocateTarget()
8181 return new NetBSDTargetInfo<ARMleTargetInfo>(Triple, Opts); in AllocateTarget()
8182 case llvm::Triple::OpenBSD: in AllocateTarget()
8183 return new OpenBSDTargetInfo<ARMleTargetInfo>(Triple, Opts); in AllocateTarget()
8184 case llvm::Triple::Bitrig: in AllocateTarget()
8185 return new BitrigTargetInfo<ARMleTargetInfo>(Triple, Opts); in AllocateTarget()
8186 case llvm::Triple::RTEMS: in AllocateTarget()
8187 return new RTEMSTargetInfo<ARMleTargetInfo>(Triple, Opts); in AllocateTarget()
8188 case llvm::Triple::NaCl: in AllocateTarget()
8189 return new NaClTargetInfo<ARMleTargetInfo>(Triple, Opts); in AllocateTarget()
8190 case llvm::Triple::Win32: in AllocateTarget()
8191 switch (Triple.getEnvironment()) { in AllocateTarget()
8192 case llvm::Triple::Cygnus: in AllocateTarget()
8193 return new CygwinARMTargetInfo(Triple, Opts); in AllocateTarget()
8194 case llvm::Triple::GNU: in AllocateTarget()
8195 return new MinGWARMTargetInfo(Triple, Opts); in AllocateTarget()
8196 case llvm::Triple::Itanium: in AllocateTarget()
8197 return new ItaniumWindowsARMleTargetInfo(Triple, Opts); in AllocateTarget()
8198 case llvm::Triple::MSVC: in AllocateTarget()
8200 return new MicrosoftARMleTargetInfo(Triple, Opts); in AllocateTarget()
8203 return new ARMleTargetInfo(Triple, Opts); in AllocateTarget()
8206 case llvm::Triple::armeb: in AllocateTarget()
8207 case llvm::Triple::thumbeb: in AllocateTarget()
8208 if (Triple.isOSDarwin()) in AllocateTarget()
8209 return new DarwinARMTargetInfo(Triple, Opts); in AllocateTarget()
8212 case llvm::Triple::Linux: in AllocateTarget()
8213 return new LinuxTargetInfo<ARMbeTargetInfo>(Triple, Opts); in AllocateTarget()
8214 case llvm::Triple::FreeBSD: in AllocateTarget()
8215 return new FreeBSDTargetInfo<ARMbeTargetInfo>(Triple, Opts); in AllocateTarget()
8216 case llvm::Triple::NetBSD: in AllocateTarget()
8217 return new NetBSDTargetInfo<ARMbeTargetInfo>(Triple, Opts); in AllocateTarget()
8218 case llvm::Triple::OpenBSD: in AllocateTarget()
8219 return new OpenBSDTargetInfo<ARMbeTargetInfo>(Triple, Opts); in AllocateTarget()
8220 case llvm::Triple::Bitrig: in AllocateTarget()
8221 return new BitrigTargetInfo<ARMbeTargetInfo>(Triple, Opts); in AllocateTarget()
8222 case llvm::Triple::RTEMS: in AllocateTarget()
8223 return new RTEMSTargetInfo<ARMbeTargetInfo>(Triple, Opts); in AllocateTarget()
8224 case llvm::Triple::NaCl: in AllocateTarget()
8225 return new NaClTargetInfo<ARMbeTargetInfo>(Triple, Opts); in AllocateTarget()
8227 return new ARMbeTargetInfo(Triple, Opts); in AllocateTarget()
8230 case llvm::Triple::bpfeb: in AllocateTarget()
8231 case llvm::Triple::bpfel: in AllocateTarget()
8232 return new BPFTargetInfo(Triple, Opts); in AllocateTarget()
8234 case llvm::Triple::msp430: in AllocateTarget()
8235 return new MSP430TargetInfo(Triple, Opts); in AllocateTarget()
8237 case llvm::Triple::mips: in AllocateTarget()
8239 case llvm::Triple::Linux: in AllocateTarget()
8240 return new LinuxTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8241 case llvm::Triple::RTEMS: in AllocateTarget()
8242 return new RTEMSTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8243 case llvm::Triple::FreeBSD: in AllocateTarget()
8244 return new FreeBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8245 case llvm::Triple::NetBSD: in AllocateTarget()
8246 return new NetBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8248 return new MipsTargetInfo(Triple, Opts); in AllocateTarget()
8251 case llvm::Triple::mipsel: in AllocateTarget()
8253 case llvm::Triple::Linux: in AllocateTarget()
8254 return new LinuxTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8255 case llvm::Triple::RTEMS: in AllocateTarget()
8256 return new RTEMSTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8257 case llvm::Triple::FreeBSD: in AllocateTarget()
8258 return new FreeBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8259 case llvm::Triple::NetBSD: in AllocateTarget()
8260 return new NetBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8261 case llvm::Triple::NaCl: in AllocateTarget()
8262 return new NaClTargetInfo<NaClMips32TargetInfo>(Triple, Opts); in AllocateTarget()
8264 return new MipsTargetInfo(Triple, Opts); in AllocateTarget()
8267 case llvm::Triple::mips64: in AllocateTarget()
8269 case llvm::Triple::Linux: in AllocateTarget()
8270 return new LinuxTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8271 case llvm::Triple::RTEMS: in AllocateTarget()
8272 return new RTEMSTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8273 case llvm::Triple::FreeBSD: in AllocateTarget()
8274 return new FreeBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8275 case llvm::Triple::NetBSD: in AllocateTarget()
8276 return new NetBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8277 case llvm::Triple::OpenBSD: in AllocateTarget()
8278 return new OpenBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8280 return new MipsTargetInfo(Triple, Opts); in AllocateTarget()
8283 case llvm::Triple::mips64el: in AllocateTarget()
8285 case llvm::Triple::Linux: in AllocateTarget()
8286 return new LinuxTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8287 case llvm::Triple::RTEMS: in AllocateTarget()
8288 return new RTEMSTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8289 case llvm::Triple::FreeBSD: in AllocateTarget()
8290 return new FreeBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8291 case llvm::Triple::NetBSD: in AllocateTarget()
8292 return new NetBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8293 case llvm::Triple::OpenBSD: in AllocateTarget()
8294 return new OpenBSDTargetInfo<MipsTargetInfo>(Triple, Opts); in AllocateTarget()
8296 return new MipsTargetInfo(Triple, Opts); in AllocateTarget()
8299 case llvm::Triple::le32: in AllocateTarget()
8301 case llvm::Triple::NaCl: in AllocateTarget()
8302 return new NaClTargetInfo<PNaClTargetInfo>(Triple, Opts); in AllocateTarget()
8307 case llvm::Triple::le64: in AllocateTarget()
8308 return new Le64TargetInfo(Triple, Opts); in AllocateTarget()
8310 case llvm::Triple::ppc: in AllocateTarget()
8311 if (Triple.isOSDarwin()) in AllocateTarget()
8312 return new DarwinPPC32TargetInfo(Triple, Opts); in AllocateTarget()
8314 case llvm::Triple::Linux: in AllocateTarget()
8315 return new LinuxTargetInfo<PPC32TargetInfo>(Triple, Opts); in AllocateTarget()
8316 case llvm::Triple::FreeBSD: in AllocateTarget()
8317 return new FreeBSDTargetInfo<PPC32TargetInfo>(Triple, Opts); in AllocateTarget()
8318 case llvm::Triple::NetBSD: in AllocateTarget()
8319 return new NetBSDTargetInfo<PPC32TargetInfo>(Triple, Opts); in AllocateTarget()
8320 case llvm::Triple::OpenBSD: in AllocateTarget()
8321 return new OpenBSDTargetInfo<PPC32TargetInfo>(Triple, Opts); in AllocateTarget()
8322 case llvm::Triple::RTEMS: in AllocateTarget()
8323 return new RTEMSTargetInfo<PPC32TargetInfo>(Triple, Opts); in AllocateTarget()
8325 return new PPC32TargetInfo(Triple, Opts); in AllocateTarget()
8328 case llvm::Triple::ppc64: in AllocateTarget()
8329 if (Triple.isOSDarwin()) in AllocateTarget()
8330 return new DarwinPPC64TargetInfo(Triple, Opts); in AllocateTarget()
8332 case llvm::Triple::Linux: in AllocateTarget()
8333 return new LinuxTargetInfo<PPC64TargetInfo>(Triple, Opts); in AllocateTarget()
8334 case llvm::Triple::Lv2: in AllocateTarget()
8335 return new PS3PPUTargetInfo<PPC64TargetInfo>(Triple, Opts); in AllocateTarget()
8336 case llvm::Triple::FreeBSD: in AllocateTarget()
8337 return new FreeBSDTargetInfo<PPC64TargetInfo>(Triple, Opts); in AllocateTarget()
8338 case llvm::Triple::NetBSD: in AllocateTarget()
8339 return new NetBSDTargetInfo<PPC64TargetInfo>(Triple, Opts); in AllocateTarget()
8341 return new PPC64TargetInfo(Triple, Opts); in AllocateTarget()
8344 case llvm::Triple::ppc64le: in AllocateTarget()
8346 case llvm::Triple::Linux: in AllocateTarget()
8347 return new LinuxTargetInfo<PPC64TargetInfo>(Triple, Opts); in AllocateTarget()
8348 case llvm::Triple::NetBSD: in AllocateTarget()
8349 return new NetBSDTargetInfo<PPC64TargetInfo>(Triple, Opts); in AllocateTarget()
8351 return new PPC64TargetInfo(Triple, Opts); in AllocateTarget()
8354 case llvm::Triple::nvptx: in AllocateTarget()
8355 return new NVPTX32TargetInfo(Triple, Opts); in AllocateTarget()
8356 case llvm::Triple::nvptx64: in AllocateTarget()
8357 return new NVPTX64TargetInfo(Triple, Opts); in AllocateTarget()
8359 case llvm::Triple::amdgcn: in AllocateTarget()
8360 case llvm::Triple::r600: in AllocateTarget()
8361 return new AMDGPUTargetInfo(Triple, Opts); in AllocateTarget()
8363 case llvm::Triple::sparc: in AllocateTarget()
8365 case llvm::Triple::Linux: in AllocateTarget()
8366 return new LinuxTargetInfo<SparcV8TargetInfo>(Triple, Opts); in AllocateTarget()
8367 case llvm::Triple::Solaris: in AllocateTarget()
8368 return new SolarisTargetInfo<SparcV8TargetInfo>(Triple, Opts); in AllocateTarget()
8369 case llvm::Triple::NetBSD: in AllocateTarget()
8370 return new NetBSDTargetInfo<SparcV8TargetInfo>(Triple, Opts); in AllocateTarget()
8371 case llvm::Triple::OpenBSD: in AllocateTarget()
8372 return new OpenBSDTargetInfo<SparcV8TargetInfo>(Triple, Opts); in AllocateTarget()
8373 case llvm::Triple::RTEMS: in AllocateTarget()
8374 return new RTEMSTargetInfo<SparcV8TargetInfo>(Triple, Opts); in AllocateTarget()
8376 return new SparcV8TargetInfo(Triple, Opts); in AllocateTarget()
8380 case llvm::Triple::sparcel: in AllocateTarget()
8382 case llvm::Triple::Linux: in AllocateTarget()
8383 return new LinuxTargetInfo<SparcV8elTargetInfo>(Triple, Opts); in AllocateTarget()
8384 case llvm::Triple::NetBSD: in AllocateTarget()
8385 return new NetBSDTargetInfo<SparcV8elTargetInfo>(Triple, Opts); in AllocateTarget()
8386 case llvm::Triple::OpenBSD: in AllocateTarget()
8387 return new OpenBSDTargetInfo<SparcV8elTargetInfo>(Triple, Opts); in AllocateTarget()
8388 case llvm::Triple::RTEMS: in AllocateTarget()
8389 return new RTEMSTargetInfo<SparcV8elTargetInfo>(Triple, Opts); in AllocateTarget()
8391 return new SparcV8elTargetInfo(Triple, Opts); in AllocateTarget()
8394 case llvm::Triple::sparcv9: in AllocateTarget()
8396 case llvm::Triple::Linux: in AllocateTarget()
8397 return new LinuxTargetInfo<SparcV9TargetInfo>(Triple, Opts); in AllocateTarget()
8398 case llvm::Triple::Solaris: in AllocateTarget()
8399 return new SolarisTargetInfo<SparcV9TargetInfo>(Triple, Opts); in AllocateTarget()
8400 case llvm::Triple::NetBSD: in AllocateTarget()
8401 return new NetBSDTargetInfo<SparcV9TargetInfo>(Triple, Opts); in AllocateTarget()
8402 case llvm::Triple::OpenBSD: in AllocateTarget()
8403 return new OpenBSDTargetInfo<SparcV9TargetInfo>(Triple, Opts); in AllocateTarget()
8404 case llvm::Triple::FreeBSD: in AllocateTarget()
8405 return new FreeBSDTargetInfo<SparcV9TargetInfo>(Triple, Opts); in AllocateTarget()
8407 return new SparcV9TargetInfo(Triple, Opts); in AllocateTarget()
8410 case llvm::Triple::systemz: in AllocateTarget()
8412 case llvm::Triple::Linux: in AllocateTarget()
8413 return new LinuxTargetInfo<SystemZTargetInfo>(Triple, Opts); in AllocateTarget()
8415 return new SystemZTargetInfo(Triple, Opts); in AllocateTarget()
8418 case llvm::Triple::tce: in AllocateTarget()
8419 return new TCETargetInfo(Triple, Opts); in AllocateTarget()
8421 case llvm::Triple::x86: in AllocateTarget()
8422 if (Triple.isOSDarwin()) in AllocateTarget()
8423 return new DarwinI386TargetInfo(Triple, Opts); in AllocateTarget()
8426 case llvm::Triple::CloudABI: in AllocateTarget()
8427 return new CloudABITargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8428 case llvm::Triple::Linux: { in AllocateTarget()
8429 switch (Triple.getEnvironment()) { in AllocateTarget()
8431 return new LinuxTargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8432 case llvm::Triple::Android: in AllocateTarget()
8433 return new AndroidX86_32TargetInfo(Triple, Opts); in AllocateTarget()
8436 case llvm::Triple::DragonFly: in AllocateTarget()
8437 return new DragonFlyBSDTargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8438 case llvm::Triple::NetBSD: in AllocateTarget()
8439 return new NetBSDI386TargetInfo(Triple, Opts); in AllocateTarget()
8440 case llvm::Triple::OpenBSD: in AllocateTarget()
8441 return new OpenBSDI386TargetInfo(Triple, Opts); in AllocateTarget()
8442 case llvm::Triple::Bitrig: in AllocateTarget()
8443 return new BitrigI386TargetInfo(Triple, Opts); in AllocateTarget()
8444 case llvm::Triple::FreeBSD: in AllocateTarget()
8445 return new FreeBSDTargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8446 case llvm::Triple::KFreeBSD: in AllocateTarget()
8447 return new KFreeBSDTargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8448 case llvm::Triple::Minix: in AllocateTarget()
8449 return new MinixTargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8450 case llvm::Triple::Solaris: in AllocateTarget()
8451 return new SolarisTargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8452 case llvm::Triple::Win32: { in AllocateTarget()
8453 switch (Triple.getEnvironment()) { in AllocateTarget()
8454 case llvm::Triple::Cygnus: in AllocateTarget()
8455 return new CygwinX86_32TargetInfo(Triple, Opts); in AllocateTarget()
8456 case llvm::Triple::GNU: in AllocateTarget()
8457 return new MinGWX86_32TargetInfo(Triple, Opts); in AllocateTarget()
8458 case llvm::Triple::Itanium: in AllocateTarget()
8459 case llvm::Triple::MSVC: in AllocateTarget()
8461 return new MicrosoftX86_32TargetInfo(Triple, Opts); in AllocateTarget()
8464 case llvm::Triple::Haiku: in AllocateTarget()
8465 return new HaikuX86_32TargetInfo(Triple, Opts); in AllocateTarget()
8466 case llvm::Triple::RTEMS: in AllocateTarget()
8467 return new RTEMSX86_32TargetInfo(Triple, Opts); in AllocateTarget()
8468 case llvm::Triple::NaCl: in AllocateTarget()
8469 return new NaClTargetInfo<X86_32TargetInfo>(Triple, Opts); in AllocateTarget()
8470 case llvm::Triple::ELFIAMCU: in AllocateTarget()
8471 return new MCUX86_32TargetInfo(Triple, Opts); in AllocateTarget()
8473 return new X86_32TargetInfo(Triple, Opts); in AllocateTarget()
8476 case llvm::Triple::x86_64: in AllocateTarget()
8477 if (Triple.isOSDarwin() || Triple.isOSBinFormatMachO()) in AllocateTarget()
8478 return new DarwinX86_64TargetInfo(Triple, Opts); in AllocateTarget()
8481 case llvm::Triple::CloudABI: in AllocateTarget()
8482 return new CloudABITargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8483 case llvm::Triple::Linux: { in AllocateTarget()
8484 switch (Triple.getEnvironment()) { in AllocateTarget()
8486 return new LinuxTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8487 case llvm::Triple::Android: in AllocateTarget()
8488 return new AndroidX86_64TargetInfo(Triple, Opts); in AllocateTarget()
8491 case llvm::Triple::DragonFly: in AllocateTarget()
8492 return new DragonFlyBSDTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8493 case llvm::Triple::NetBSD: in AllocateTarget()
8494 return new NetBSDTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8495 case llvm::Triple::OpenBSD: in AllocateTarget()
8496 return new OpenBSDX86_64TargetInfo(Triple, Opts); in AllocateTarget()
8497 case llvm::Triple::Bitrig: in AllocateTarget()
8498 return new BitrigX86_64TargetInfo(Triple, Opts); in AllocateTarget()
8499 case llvm::Triple::FreeBSD: in AllocateTarget()
8500 return new FreeBSDTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8501 case llvm::Triple::KFreeBSD: in AllocateTarget()
8502 return new KFreeBSDTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8503 case llvm::Triple::Solaris: in AllocateTarget()
8504 return new SolarisTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8505 case llvm::Triple::Win32: { in AllocateTarget()
8506 switch (Triple.getEnvironment()) { in AllocateTarget()
8507 case llvm::Triple::Cygnus: in AllocateTarget()
8508 return new CygwinX86_64TargetInfo(Triple, Opts); in AllocateTarget()
8509 case llvm::Triple::GNU: in AllocateTarget()
8510 return new MinGWX86_64TargetInfo(Triple, Opts); in AllocateTarget()
8511 case llvm::Triple::MSVC: in AllocateTarget()
8513 return new MicrosoftX86_64TargetInfo(Triple, Opts); in AllocateTarget()
8516 case llvm::Triple::Haiku: in AllocateTarget()
8517 return new HaikuTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8518 case llvm::Triple::NaCl: in AllocateTarget()
8519 return new NaClTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8520 case llvm::Triple::PS4: in AllocateTarget()
8521 return new PS4OSTargetInfo<X86_64TargetInfo>(Triple, Opts); in AllocateTarget()
8523 return new X86_64TargetInfo(Triple, Opts); in AllocateTarget()
8526 case llvm::Triple::spir: { in AllocateTarget()
8527 if (Triple.getOS() != llvm::Triple::UnknownOS || in AllocateTarget()
8528 Triple.getEnvironment() != llvm::Triple::UnknownEnvironment) in AllocateTarget()
8530 return new SPIR32TargetInfo(Triple, Opts); in AllocateTarget()
8532 case llvm::Triple::spir64: { in AllocateTarget()
8533 if (Triple.getOS() != llvm::Triple::UnknownOS || in AllocateTarget()
8534 Triple.getEnvironment() != llvm::Triple::UnknownEnvironment) in AllocateTarget()
8536 return new SPIR64TargetInfo(Triple, Opts); in AllocateTarget()
8538 case llvm::Triple::wasm32: in AllocateTarget()
8539 if (!(Triple == llvm::Triple("wasm32-unknown-unknown"))) in AllocateTarget()
8541 return new WebAssemblyOSTargetInfo<WebAssembly32TargetInfo>(Triple, Opts); in AllocateTarget()
8542 case llvm::Triple::wasm64: in AllocateTarget()
8543 if (!(Triple == llvm::Triple("wasm64-unknown-unknown"))) in AllocateTarget()
8545 return new WebAssemblyOSTargetInfo<WebAssembly64TargetInfo>(Triple, Opts); in AllocateTarget()
8547 case llvm::Triple::renderscript32: in AllocateTarget()
8548 return new LinuxTargetInfo<RenderScript32TargetInfo>(Triple, Opts); in AllocateTarget()
8549 case llvm::Triple::renderscript64: in AllocateTarget()
8550 return new LinuxTargetInfo<RenderScript64TargetInfo>(Triple, Opts); in AllocateTarget()
8559 llvm::Triple Triple(Opts->Triple); in CreateTargetInfo() local
8562 std::unique_ptr<TargetInfo> Target(AllocateTarget(Triple, *Opts)); in CreateTargetInfo()
8564 Diags.Report(diag::err_target_unknown_triple) << Triple.str(); in CreateTargetInfo()