Lines Matching refs:Triple

74                                          const llvm::Triple &Triple) {
75 if (Triple.getArch() == llvm::Triple::sparcv9) {
511 static bool isSignedCharDefault(const llvm::Triple &Triple) {
512 switch (Triple.getArch()) {
516 case llvm::Triple::aarch64:
517 case llvm::Triple::aarch64_be:
518 case llvm::Triple::arm:
519 case llvm::Triple::armeb:
520 case llvm::Triple::thumb:
521 case llvm::Triple::thumbeb:
522 if (Triple.isOSDarwin() || Triple.isOSWindows())
526 case llvm::Triple::ppc:
527 case llvm::Triple::ppc64:
528 if (Triple.isOSDarwin())
532 case llvm::Triple::hexagon:
533 case llvm::Triple::ppc64le:
534 case llvm::Triple::systemz:
535 case llvm::Triple::xcore:
540 static bool isNoCommonDefault(const llvm::Triple &Triple) {
541 switch (Triple.getArch()) {
545 case llvm::Triple::xcore:
546 case llvm::Triple::wasm32:
547 case llvm::Triple::wasm64:
555 static int getARMSubArchVersionNumber(const llvm::Triple &Triple) {
556 llvm::StringRef Arch = Triple.getArchName();
561 static bool isARMMProfile(const llvm::Triple &Triple) {
562 llvm::StringRef Arch = Triple.getArchName();
628 const llvm::Triple &Triple) {
631 std::string MArch = arm::getARMArch(ArchName, Triple);
641 const llvm::Triple &Triple) {
644 std::string CPU = arm::getARMTargetCPU(CPUName, ArchName, Triple);
645 if (arm::getLLVMArchSuffixForARM(CPU, ArchName, Triple).empty() ||
650 static bool useAAPCSForMachO(const llvm::Triple &T) {
653 return T.getEnvironment() == llvm::Triple::EABI ||
654 T.getOS() == llvm::Triple::UnknownOS || isARMMProfile(T);
661 const llvm::Triple Triple(TC.ComputeEffectiveClangTriple(Args));
662 auto SubArch = getARMSubArchVersionNumber(Triple);
685 if (Triple.isOSBinFormatMachO() && !useAAPCSForMachO(Triple) &&
688 << Triple.getArchName();
694 switch (Triple.getOS()) {
695 case llvm::Triple::Darwin:
696 case llvm::Triple::MacOSX:
697 case llvm::Triple::IOS:
698 case llvm::Triple::TvOS: {
703 case llvm::Triple::WatchOS:
708 case llvm::Triple::Win32:
712 case llvm::Triple::FreeBSD:
713 switch (Triple.getEnvironment()) {
714 case llvm::Triple::GNUEABIHF:
725 switch (Triple.getEnvironment()) {
726 case llvm::Triple::GNUEABIHF:
727 case llvm::Triple::EABIHF:
730 case llvm::Triple::GNUEABI:
731 case llvm::Triple::EABI:
735 case llvm::Triple::Android:
741 if (Triple.getOS() != llvm::Triple::UnknownOS ||
742 !Triple.isOSBinFormatMachO())
754 const llvm::Triple &Triple,
812 checkARMArchName(D, WaArch, Args, ArchName, Features, Triple);
817 checkARMArchName(D, ArchArg, Args, ArchName, Features, Triple);
828 checkARMCPUName(D, WaCPU, Args, CPUName, ArchName, Features, Triple);
831 checkARMCPUName(D, CPUArg, Args, CPUName, ArchName, Features, Triple);
882 if (Triple.getSubArch() == llvm::Triple::SubArchType::ARMSubArch_v8_1a) {
893 } else if (KernelOrKext && (!Triple.isiOS() || Triple.isOSVersionLT(6)) &&
894 !Triple.isWatchOS()) {
905 if (Triple.getSubArch() == llvm::Triple::SubArchType::ARMSubArch_v6m)
923 int VersionNum = getARMSubArchVersionNumber(Triple);
924 if (Triple.isOSDarwin() || Triple.isOSNetBSD()) {
926 Triple.getSubArch() == llvm::Triple::SubArchType::ARMSubArch_v6m)
928 } else if (Triple.isOSLinux() || Triple.isOSNaCl()) {
946 void Clang::AddARMTargetArgs(const llvm::Triple &Triple, const ArgList &Args,
954 } else if (Triple.isOSBinFormatMachO()) {
955 if (useAAPCSForMachO(Triple)) {
957 } else if (Triple.isWatchOS()) {
962 } else if (Triple.isOSWindows()) {
967 switch (Triple.getEnvironment()) {
968 case llvm::Triple::Android:
969 case llvm::Triple::GNUEABI:
970 case llvm::Triple::GNUEABIHF:
973 case llvm::Triple::EABIHF:
974 case llvm::Triple::EABI:
978 if (Triple.getOS() == llvm::Triple::NetBSD)
1053 llvm::Triple Triple(TripleStr);
1067 else if (Triple.isOSDarwin())
1082 } else if (Triple.isAndroid()) {
1101 void mips::getMipsCPUAndABI(const ArgList &Args, const llvm::Triple &Triple,
1108 if (Triple.getVendor() == llvm::Triple::ImaginationTechnologies &&
1109 Triple.getEnvironment() == llvm::Triple::GNU) {
1115 if (Triple.isAndroid())
1119 if (Triple.getOS() == llvm::Triple::OpenBSD)
1137 switch (Triple.getArch()) {
1140 case llvm::Triple::mips:
1141 case llvm::Triple::mipsel:
1144 case llvm::Triple::mips64:
1145 case llvm::Triple::mips64el:
1153 if (Triple.getArch() == llvm::Triple::mips ||
1154 Triple.getArch() == llvm::Triple::mipsel)
1172 const llvm::Triple &Triple) {
1174 tools::mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
1236 static void getMIPSTargetFeatures(const Driver &D, const llvm::Triple &Triple,
1241 mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
1300 } else if (mips::shouldUseFPXX(Args, Triple, CPUName, ABIName, FloatABI)) {
1314 const llvm::Triple &Triple = getToolChain().getTriple();
1315 mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
1428 static void getPPCTargetFeatures(const Driver &D, const llvm::Triple &Triple,
1435 !(Triple.getArch() == llvm::Triple::ppc64 ||
1436 Triple.getArch() == llvm::Triple::ppc64le))
1439 (Triple.getArch() == llvm::Triple::ppc64 ||
1440 Triple.getArch() == llvm::Triple::ppc64le))
1484 case llvm::Triple::ppc64: {
1500 case llvm::Triple::ppc64le:
1560 std::string Triple = getToolChain().ComputeEffectiveClangTriple(Args);
1576 << Triple;
1605 const llvm::Triple &Triple) {
1608 if (Triple.isOSDarwin() && Triple.getArchName() == "x86_64h")
1628 if (Triple.getArch() == llvm::Triple::x86) {
1648 if (Triple.getArch() != llvm::Triple::x86_64 &&
1649 Triple.getArch() != llvm::Triple::x86)
1652 bool Is64Bit = Triple.getArch() == llvm::Triple::x86_64;
1655 if (Triple.isOSDarwin()) {
1656 if (Triple.getArchName() == "x86_64h")
1662 if (Triple.isPS4CPU())
1666 if (Triple.isAndroid())
1673 switch (Triple.getOS()) {
1674 case llvm::Triple::FreeBSD:
1675 case llvm::Triple::NetBSD:
1676 case llvm::Triple::OpenBSD:
1678 case llvm::Triple::Haiku:
1680 case llvm::Triple::Bitrig:
1707 static std::string getCPUName(const ArgList &Args, const llvm::Triple &T,
1713 case llvm::Triple::aarch64:
1714 case llvm::Triple::aarch64_be:
1717 case llvm::Triple::arm:
1718 case llvm::Triple::armeb:
1719 case llvm::Triple::thumb:
1720 case llvm::Triple::thumbeb: {
1725 case llvm::Triple::mips:
1726 case llvm::Triple::mipsel:
1727 case llvm::Triple::mips64:
1728 case llvm::Triple::mips64el: {
1735 case llvm::Triple::nvptx:
1736 case llvm::Triple::nvptx64:
1741 case llvm::Triple::ppc:
1742 case llvm::Triple::ppc64:
1743 case llvm::Triple::ppc64le: {
1749 if (T.getArch() == llvm::Triple::ppc64)
1751 else if (T.getArch() == llvm::Triple::ppc64le)
1759 case llvm::Triple::sparc:
1760 case llvm::Triple::sparcel:
1761 case llvm::Triple::sparcv9:
1766 case llvm::Triple::x86:
1767 case llvm::Triple::x86_64:
1770 case llvm::Triple::hexagon:
1774 case llvm::Triple::systemz:
1777 case llvm::Triple::r600:
1778 case llvm::Triple::amdgcn:
1781 case llvm::Triple::wasm32:
1782 case llvm::Triple::wasm64:
1953 static void getX86TargetFeatures(const Driver &D, const llvm::Triple &Triple,
1967 if (Triple.getArchName() == "x86_64h") {
1978 const llvm::Triple::ArchType ArchType = Triple.getArch();
1980 if (Triple.isAndroid()) {
1981 if (ArchType == llvm::Triple::x86_64) {
1993 if (ArchType == llvm::Triple::x86_64 || ArchType == llvm::Triple::x86) {
2000 if (ArchType == llvm::Triple::x86) {
2280 static void getTargetFeatures(const ToolChain &TC, const llvm::Triple &Triple,
2285 switch (Triple.getArch()) {
2288 case llvm::Triple::mips:
2289 case llvm::Triple::mipsel:
2290 case llvm::Triple::mips64:
2291 case llvm::Triple::mips64el:
2292 getMIPSTargetFeatures(D, Triple, Args, Features);
2295 case llvm::Triple::arm:
2296 case llvm::Triple::armeb:
2297 case llvm::Triple::thumb:
2298 case llvm::Triple::thumbeb:
2299 getARMTargetFeatures(TC, Triple, Args, Features, ForAS);
2302 case llvm::Triple::ppc:
2303 case llvm::Triple::ppc64:
2304 case llvm::Triple::ppc64le:
2305 getPPCTargetFeatures(D, Triple, Args, Features);
2307 case llvm::Triple::systemz:
2310 case llvm::Triple::aarch64:
2311 case llvm::Triple::aarch64_be:
2314 case llvm::Triple::x86:
2315 case llvm::Triple::x86_64:
2316 getX86TargetFeatures(D, Triple, Args, Features);
2318 case llvm::Triple::hexagon:
2321 case llvm::Triple::wasm32:
2322 case llvm::Triple::wasm64:
2351 const llvm::Triple &Triple) {
2358 if (!Triple.isMacOSX())
2361 return (!Triple.isMacOSXVersionLT(10, 5) &&
2362 (Triple.getArch() == llvm::Triple::x86_64 ||
2363 Triple.getArch() == llvm::Triple::arm));
2375 const llvm::Triple &Triple = TC.getTriple();
2400 EH |= shouldUseExceptionTablesForObjCExceptions(objcRuntime, Triple);
2406 bool CXXExceptionsEnabled = Triple.getArch() != llvm::Triple::xcore &&
2407 !Triple.isPS4CPU() &&
2408 !Triple.isWindowsMSVCEnvironment();
2418 if (Triple.isPS4CPU()) {
2597 case llvm::Triple::mips:
2598 case llvm::Triple::mipsel:
2599 case llvm::Triple::mips64:
2600 case llvm::Triple::mips64el:
2782 if (TC.getTriple().getOS() != llvm::Triple::FreeBSD)
2871 const llvm::Triple &Triple) {
2872 switch (Triple.getArch()) {
2873 case llvm::Triple::xcore:
2874 case llvm::Triple::wasm32:
2875 case llvm::Triple::wasm64:
2883 if (Triple.isOSLinux()) {
2884 switch (Triple.getArch()) {
2886 case llvm::Triple::mips64:
2887 case llvm::Triple::mips64el:
2888 case llvm::Triple::mips:
2889 case llvm::Triple::mipsel:
2890 case llvm::Triple::systemz:
2891 case llvm::Triple::x86:
2892 case llvm::Triple::x86_64:
2899 if (Triple.isOSWindows()) {
2900 switch (Triple.getArch()) {
2901 case llvm::Triple::x86:
2903 case llvm::Triple::arm:
2904 case llvm::Triple::thumb:
2918 const llvm::Triple &Triple) {
2925 return shouldUseFramePointerForTarget(Args, Triple);
2929 const llvm::Triple &Triple) {
2936 if (Triple.isPS4CPU())
2939 return shouldUseFramePointerForTarget(Args, Triple);
3096 const llvm::Triple &Triple,
3133 Triple.getEnvironmentVersion(Major, Minor, Micro);
3260 ParsePICArgs(const ToolChain &ToolChain, const llvm::Triple &Triple,
3263 // ToolChain.getTriple() and Triple?
3278 case llvm::Triple::arm:
3279 case llvm::Triple::armeb:
3280 case llvm::Triple::thumb:
3281 case llvm::Triple::thumbeb:
3282 case llvm::Triple::aarch64:
3283 case llvm::Triple::mips:
3284 case llvm::Triple::mipsel:
3285 case llvm::Triple::mips64:
3286 case llvm::Triple::mips64el:
3290 case llvm::Triple::x86:
3291 case llvm::Triple::x86_64:
3302 if (ToolChain.getTriple().getOS() == llvm::Triple::OpenBSD) {
3304 case llvm::Triple::mips64:
3305 case llvm::Triple::mips64el:
3306 case llvm::Triple::sparcel:
3307 case llvm::Triple::x86:
3308 case llvm::Triple::x86_64:
3312 case llvm::Triple::ppc:
3313 case llvm::Triple::sparc:
3314 case llvm::Triple::sparcv9:
3345 if (Triple.isPS4CPU()) {
3361 if (PIC && (ToolChain.getTriple().isOSDarwin() || Triple.isPS4CPU()))
3366 if (KernelOrKext && ((!Triple.isiOS() || Triple.isOSVersionLT(6)) &&
3367 !Triple.isWatchOS()))
3423 const llvm::Triple Triple(TripleStr);
3473 if (Triple.isOSWindows() && (Triple.getArch() == llvm::Triple::arm ||
3474 Triple.getArch() == llvm::Triple::thumb)) {
3475 unsigned Offset = Triple.getArch() == llvm::Triple::arm ? 4 : 6;
3477 Triple.getArchName().substr(Offset).getAsInteger(10, Version);
3479 D.Diag(diag::err_target_unsupported_arch) << Triple.getArchName()
3612 if (getToolChain().getTriple().getVendor() == llvm::Triple::Apple)
3659 ParsePICArgs(getToolChain(), Triple, Args);
3718 if (getToolChain().getArch() != llvm::Triple::x86) {
3970 std::string CPU = getCPUName(Args, Triple, /*FromAs*/ false);
3982 getTargetFeatures(getToolChain(), Triple, Args, CmdArgs, false);
3989 case llvm::Triple::arm:
3990 case llvm::Triple::armeb:
3991 case llvm::Triple::thumb:
3992 case llvm::Triple::thumbeb:
3994 AddARMTargetArgs(Triple, Args, CmdArgs, KernelOrKext);
3997 case llvm::Triple::aarch64:
3998 case llvm::Triple::aarch64_be:
4002 case llvm::Triple::mips:
4003 case llvm::Triple::mipsel:
4004 case llvm::Triple::mips64:
4005 case llvm::Triple::mips64el:
4009 case llvm::Triple::ppc:
4010 case llvm::Triple::ppc64:
4011 case llvm::Triple::ppc64le:
4015 case llvm::Triple::sparc:
4016 case llvm::Triple::sparcel:
4017 case llvm::Triple::sparcv9:
4021 case llvm::Triple::x86:
4022 case llvm::Triple::x86_64:
4026 case llvm::Triple::hexagon:
4030 case llvm::Triple::wasm32:
4031 case llvm::Triple::wasm64:
4071 getToolChain().getArch() == llvm::Triple::x86) {
4197 bool UseSeparateSections = Triple.getOS() == llvm::Triple::CloudABI ||
4198 Triple.getArch() == llvm::Triple::wasm32 ||
4199 Triple.getArch() == llvm::Triple::wasm64;
4558 bool EmulatedTLSDefault = Triple.isAndroid();
4601 const llvm::Triple::ArchType Arch = getToolChain().getArch();
4602 if (!(Arch == llvm::Triple::ppc || Arch == llvm::Triple::ppc64 ||
4603 Arch == llvm::Triple::ppc64le))
4722 case llvm::Triple::aarch64:
4723 case llvm::Triple::aarch64_be:
4724 case llvm::Triple::arm:
4725 case llvm::Triple::armeb:
4726 case llvm::Triple::thumb:
4727 case llvm::Triple::thumbeb:
4744 } else if (Triple.isOSWindows() &&
4745 (Triple.getArch() == llvm::Triple::arm ||
4746 Triple.getArch() == llvm::Triple::thumb)) {
4950 getToolChain().getArch() == llvm::Triple::hexagon))
4969 getToolChain().getTriple().getOS() != llvm::Triple::Solaris &&
4970 getToolChain().getArch() != llvm::Triple::hexagon &&
4971 getToolChain().getArch() != llvm::Triple::xcore &&
4973 llvm::Triple::MipsTechnologies) ||
5073 if (getToolChain().getArch() == llvm::Triple::x86 &&
5404 if (getToolChain().getArch() == llvm::Triple::le32) {
5413 (getToolChain().getArch() == llvm::Triple::arm ||
5414 getToolChain().getArch() == llvm::Triple::thumb)) {
5847 if (getToolChain().getArch() == llvm::Triple::x86_64 ||
5848 getToolChain().getArch() == llvm::Triple::x86)
5907 const llvm::Triple &Triple = getToolChain().getTriple();
5908 mips::getMipsCPUAndABI(Args, Triple, CPUName, ABIName);
5925 const llvm::Triple Triple(TripleStr);
5954 std::string CPU = getCPUName(Args, Triple, /*FromAs*/ true);
5961 getTargetFeatures(getToolChain(), Triple, Args, CmdArgs, true);
6014 ParsePICArgs(getToolChain(), Triple, Args);
6049 case llvm::Triple::mips:
6050 case llvm::Triple::mipsel:
6051 case llvm::Triple::mips64:
6052 case llvm::Triple::mips64el:
6142 case llvm::Triple::x86:
6143 case llvm::Triple::ppc:
6146 case llvm::Triple::x86_64:
6147 case llvm::Triple::ppc64:
6148 case llvm::Triple::ppc64le:
6151 case llvm::Triple::sparcel:
6572 const std::string arm::getARMArch(StringRef Arch, const llvm::Triple &Triple) {
6577 MArch = Triple.getArchName();
6585 StringRef Suffix = arm::getLLVMArchSuffixForARM(CPU, MArch, Triple);
6599 StringRef arm::getARMCPUForMArch(StringRef Arch, const llvm::Triple &Triple) {
6600 std::string MArch = getARMArch(Arch, Triple);
6608 return Triple.getARMCPUForArch(MArch);
6613 const llvm::Triple &Triple) {
6625 return getARMCPUForMArch(Arch, Triple);
6632 const llvm::Triple &Triple) {
6635 std::string ARMArch = tools::arm::getARMArch(Arch, Triple);
6639 // extract arch from default cpu of the Triple
6640 ArchKind = llvm::ARM::parseCPUArch(Triple.getARMCPUForArch(ARMArch));
6654 const llvm::Triple &Triple) {
6660 if (getARMSubArchVersionNumber(Triple) >= 7 || isARMMProfile(Triple))
6697 bool mips::isNaN2008(const ArgList &Args, const llvm::Triple &Triple) {
6705 return llvm::StringSwitch<bool>(getCPUName(Args, Triple))
6712 bool mips::isFPXXDefault(const llvm::Triple &Triple, StringRef CPUName,
6714 if (Triple.getVendor() != llvm::Triple::ImaginationTechnologies &&
6715 Triple.getVendor() != llvm::Triple::MipsTechnologies)
6733 bool mips::shouldUseFPXX(const ArgList &Args, const llvm::Triple &Triple,
6736 bool UseFPXX = isFPXXDefault(Triple, CPUName, ABIName, FloatABI);
6747 llvm::Triple::ArchType darwin::getArchTypeForMachOArchName(StringRef Str) {
6760 return llvm::StringSwitch<llvm::Triple::ArchType>(Str)
6761 .Cases("ppc", "ppc601", "ppc603", "ppc604", "ppc604e", llvm::Triple::ppc)
6762 .Cases("ppc750", "ppc7400", "ppc7450", "ppc970", llvm::Triple::ppc)
6763 .Case("ppc64", llvm::Triple::ppc64)
6764 .Cases("i386", "i486", "i486SX", "i586", "i686", llvm::Triple::x86)
6766 llvm::Triple::x86)
6767 .Cases("x86_64", "x86_64h", llvm::Triple::x86_64)
6769 .Cases("arm", "armv4t", "armv5", "armv6", "armv6m", llvm::Triple::arm)
6770 .Cases("armv7", "armv7em", "armv7k", "armv7m", llvm::Triple::arm)
6771 .Cases("armv7s", "xscale", llvm::Triple::arm)
6772 .Case("arm64", llvm::Triple::aarch64)
6773 .Case("r600", llvm::Triple::r600)
6774 .Case("amdgcn", llvm::Triple::amdgcn)
6775 .Case("nvptx", llvm::Triple::nvptx)
6776 .Case("nvptx64", llvm::Triple::nvptx64)
6777 .Case("amdil", llvm::Triple::amdil)
6778 .Case("spir", llvm::Triple::spir)
6779 .Default(llvm::Triple::UnknownArch);
6782 void darwin::setTripleTypeForMachOArchName(llvm::Triple &T, StringRef Str) {
6783 const llvm::Triple::ArchType Arch = getArchTypeForMachOArchName(Str);
6789 T.setOS(llvm::Triple::UnknownOS);
6790 T.setObjectFormat(llvm::Triple::MachO);
6908 const llvm::Triple &T(getToolChain().getTriple());
6926 if (getToolChain().getArch() == llvm::Triple::x86 ||
6927 getToolChain().getArch() == llvm::Triple::x86_64 ||
6931 if (getToolChain().getArch() != llvm::Triple::x86_64 &&
7491 case llvm::Triple::x86:
7497 case llvm::Triple::ppc:
7502 case llvm::Triple::sparc:
7503 case llvm::Triple::sparcel: {
7511 case llvm::Triple::sparcv9: {
7519 case llvm::Triple::mips64:
7520 case llvm::Triple::mips64el: {
7528 if (getToolChain().getArch() == llvm::Triple::mips64)
7569 if (getToolChain().getArch() == llvm::Triple::mips64)
7571 else if (getToolChain().getArch() == llvm::Triple::mips64el)
7620 std::string Triple = getToolChain().getTripleString();
7621 if (Triple.substr(0, 6) == "x86_64")
7622 Triple.replace(0, 6, "amd64");
7624 Args.MakeArgString("-L/usr/lib/gcc-lib/" + Triple + "/4.2.1"));
7776 case llvm::Triple::arm:
7779 case llvm::Triple::x86:
7782 case llvm::Triple::x86_64:
7817 case llvm::Triple::x86:
7820 case llvm::Triple::ppc:
7823 case llvm::Triple::mips:
7824 case llvm::Triple::mipsel:
7825 case llvm::Triple::mips64:
7826 case llvm::Triple::mips64el: {
7837 if (getToolChain().getArch() == llvm::Triple::mips ||
7838 getToolChain().getArch() == llvm::Triple::mips64)
7852 case llvm::Triple::arm:
7853 case llvm::Triple::armeb:
7854 case llvm::Triple::thumb:
7855 case llvm::Triple::thumbeb: {
7864 case llvm::Triple::GNUEABIHF:
7865 case llvm::Triple::GNUEABI:
7866 case llvm::Triple::EABI:
7875 case llvm::Triple::sparc:
7876 case llvm::Triple::sparcel:
7877 case llvm::Triple::sparcv9: {
7905 const llvm::Triple::ArchType Arch = ToolChain.getArch();
7938 if (Arch == llvm::Triple::arm || Arch == llvm::Triple::sparc ||
7939 Arch == llvm::Triple::x86 || Arch == llvm::Triple::x86_64) {
7948 if (Arch == llvm::Triple::x86) {
7953 if (Arch == llvm::Triple::ppc) {
7959 if (ToolChain.getArch() == llvm::Triple::mips ||
7960 ToolChain.getArch() == llvm::Triple::mipsel ||
7961 ToolChain.getArch() == llvm::Triple::mips64 ||
7962 ToolChain.getArch() == llvm::Triple::mips64el) {
8098 case llvm::Triple::x86:
8101 case llvm::Triple::arm:
8102 case llvm::Triple::armeb:
8103 case llvm::Triple::thumb:
8104 case llvm::Triple::thumbeb: {
8113 case llvm::Triple::mips:
8114 case llvm::Triple::mipsel:
8115 case llvm::Triple::mips64:
8116 case llvm::Triple::mips64el: {
8127 if (getToolChain().getArch() == llvm::Triple::mips ||
8128 getToolChain().getArch() == llvm::Triple::mips64)
8137 case llvm::Triple::sparc:
8138 case llvm::Triple::sparcel: {
8146 case llvm::Triple::sparcv9: {
8198 case llvm::Triple::x86:
8202 case llvm::Triple::arm:
8203 case llvm::Triple::thumb:
8206 case llvm::Triple::EABI:
8207 case llvm::Triple::GNUEABI:
8210 case llvm::Triple::EABIHF:
8211 case llvm::Triple::GNUEABIHF:
8219 case llvm::Triple::armeb:
8220 case llvm::Triple::thumbeb:
8223 llvm::Triple(getToolChain().ComputeEffectiveClangTriple(Args)));
8226 case llvm::Triple::EABI:
8227 case llvm::Triple::GNUEABI:
8230 case llvm::Triple::EABIHF:
8231 case llvm::Triple::GNUEABIHF:
8239 case llvm::Triple::mips64:
8240 case llvm::Triple::mips64el:
8243 if (getToolChain().getArch() == llvm::Triple::mips64)
8249 if (getToolChain().getArch() == llvm::Triple::mips64)
8255 case llvm::Triple::ppc:
8260 case llvm::Triple::ppc64:
8261 case llvm::Triple::ppc64le:
8266 case llvm::Triple::sparc:
8271 case llvm::Triple::sparcv9:
8318 case llvm::Triple::aarch64:
8319 case llvm::Triple::arm:
8320 case llvm::Triple::armeb:
8321 case llvm::Triple::thumb:
8322 case llvm::Triple::thumbeb:
8323 case llvm::Triple::ppc:
8324 case llvm::Triple::ppc64:
8325 case llvm::Triple::ppc64le:
8326 case llvm::Triple::sparc:
8327 case llvm::Triple::sparcv9:
8328 case llvm::Triple::x86:
8329 case llvm::Triple::x86_64:
8388 llvm::Triple Triple = llvm::Triple(TripleStr);
8396 ParsePICArgs(getToolChain(), Triple, Args);
8403 case llvm::Triple::x86:
8406 case llvm::Triple::x86_64:
8407 if (getToolChain().getTriple().getEnvironment() == llvm::Triple::GNUX32)
8412 case llvm::Triple::ppc:
8417 case llvm::Triple::ppc64:
8422 case llvm::Triple::ppc64le:
8428 case llvm::Triple::sparc:
8429 case llvm::Triple::sparcel: {
8436 case llvm::Triple::sparcv9: {
8443 case llvm::Triple::arm:
8444 case llvm::Triple::armeb:
8445 case llvm::Triple::thumb:
8446 case llvm::Triple::thumbeb: {
8447 const llvm::Triple &Triple2 = getToolChain().getTriple();
8449 case llvm::Triple::ARMSubArch_v7:
8452 case llvm::Triple::ARMSubArch_v8:
8486 case llvm::Triple::mips:
8487 case llvm::Triple::mipsel:
8488 case llvm::Triple::mips64:
8489 case llvm::Triple::mips64el: {
8510 if (getToolChain().getArch() == llvm::Triple::mips ||
8511 getToolChain().getArch() == llvm::Triple::mips64)
8568 case llvm::Triple::systemz: {
8598 static void AddLibgcc(const llvm::Triple &Triple, const Driver &D,
8600 bool isAndroid = Triple.isAndroid();
8601 bool isCygMing = Triple.isOSCygMing();
8634 const llvm::Triple::ArchType Arch = ToolChain.getArch();
8641 } else if (Arch == llvm::Triple::x86 || Arch == llvm::Triple::sparc ||
8642 Arch == llvm::Triple::sparcel)
8644 else if (Arch == llvm::Triple::aarch64)
8646 else if (Arch == llvm::Triple::aarch64_be)
8648 else if (Arch == llvm::Triple::arm || Arch == llvm::Triple::thumb) {
8649 if (ToolChain.getTriple().getEnvironment() == llvm::Triple::GNUEABIHF ||
8654 } else if (Arch == llvm::Triple::armeb || Arch == llvm::Triple::thumbeb) {
8656 if (ToolChain.getTriple().getEnvironment() == llvm::Triple::GNUEABIHF ||
8661 } else if (Arch == llvm::Triple::mips || Arch == llvm::Triple::mipsel ||
8662 Arch == llvm::Triple::mips64 || Arch == llvm::Triple::mips64el) {
8670 bool LE = (ToolChain.getTriple().getArch() == llvm::Triple::mipsel) ||
8671 (ToolChain.getTriple().getArch() == llvm::Triple::mips64el);
8677 } else if (Arch == llvm::Triple::ppc)
8679 else if (Arch == llvm::Triple::ppc64) {
8683 } else if (Arch == llvm::Triple::ppc64le) {
8687 } else if (Arch == llvm::Triple::systemz)
8689 else if (Arch == llvm::Triple::sparcv9)
8691 else if (Arch == llvm::Triple::x86_64 &&
8692 ToolChain.getTriple().getEnvironment() == llvm::Triple::GNUX32)
8708 case llvm::Triple::Win32:
8709 case llvm::Triple::Linux:
8720 static const char *getLDMOption(const llvm::Triple &T, const ArgList &Args) {
8722 case llvm::Triple::x86:
8724 case llvm::Triple::aarch64:
8726 case llvm::Triple::aarch64_be:
8728 case llvm::Triple::arm:
8729 case llvm::Triple::thumb:
8731 case llvm::Triple::armeb:
8732 case llvm::Triple::thumbeb:
8734 case llvm::Triple::ppc:
8736 case llvm::Triple::ppc64:
8738 case llvm::Triple::ppc64le:
8740 case llvm::Triple::sparc:
8741 case llvm::Triple::sparcel:
8743 case llvm::Triple::sparcv9:
8745 case llvm::Triple::mips:
8747 case llvm::Triple::mipsel:
8749 case llvm::Triple::mips64:
8753 case llvm::Triple::mips64el:
8757 case llvm::Triple::systemz:
8759 case llvm::Triple::x86_64:
8760 if (T.getEnvironment() == llvm::Triple::GNUX32)
8778 llvm::Triple Triple = llvm::Triple(TripleStr);
8780 const llvm::Triple::ArchType Arch = ToolChain.getArch();
8787 (ToolChain.getTriple().getVendor() != llvm::Triple::MipsTechnologies);
8819 if (Arch == llvm::Triple::armeb || Arch == llvm::Triple::thumbeb)
8820 arm::appendEBLinkFlags(Args, CmdArgs, Triple);
8833 if (Arch == llvm::Triple::arm || Arch == llvm::Triple::armeb ||
8834 Arch == llvm::Triple::thumb || Arch == llvm::Triple::thumbeb)
8842 if (Arch == llvm::Triple::arm || Arch == llvm::Triple::armeb ||
8843 Arch == llvm::Triple::thumb || Arch == llvm::Triple::thumbeb ||
9021 const llvm::Triple::ArchType Arch = ToolChain.getArch();
9052 if (Arch == llvm::Triple::x86)
9054 else if (Arch == llvm::Triple::arm)
9056 else if (Arch == llvm::Triple::x86_64)
9058 else if (Arch == llvm::Triple::mipsel)
9121 if (getToolChain().getArch() == llvm::Triple::mipsel)
9138 if (getToolChain().getArch() == llvm::Triple::mipsel)
9245 if (getToolChain().getArch() == llvm::Triple::x86)
9289 if (getToolChain().getArch() == llvm::Triple::x86) {
9431 case llvm::Triple::x86:
9434 case llvm::Triple::x86_64:
9437 case llvm::Triple::arm:
9686 if (getToolChain().getArch() == llvm::Triple::x86) {
9688 } else if (getToolChain().getArch() == llvm::Triple::x86_64) {
9772 if (TC.getArch() == llvm::Triple::x86)
9774 if (TC.getArch() == llvm::Triple::x86_64)
9776 if (TC.getArch() == llvm::Triple::arm)
9797 if (TC.getArch() == llvm::Triple::x86)
9976 case llvm::Triple::arm:
9977 case llvm::Triple::thumb:
9979 case llvm::Triple::x86:
9982 case llvm::Triple::x86_64:
10008 const llvm::Triple &T = TC.getTriple();
10036 case llvm::Triple::arm:
10037 case llvm::Triple::thumb:
10041 case llvm::Triple::x86:
10045 case llvm::Triple::x86_64:
10054 case llvm::Triple::arm:
10055 case llvm::Triple::thumb:
10056 case llvm::Triple::x86_64:
10059 case llvm::Triple::x86:
10141 CmdArgs.push_back(Args.MakeArgString(TC.getArch() == llvm::Triple::x86
10248 const llvm::Triple &T = TC.getTriple();
10255 if (T.getArch() == llvm::Triple::sparc)
10293 if (T.getOS() == llvm::Triple::RTEMS) {