1058 case llvm::ELF::EF_AMDGPU_MACH_R600_R600:
1060 case llvm::ELF::EF_AMDGPU_MACH_R600_R630:
1062 case llvm::ELF::EF_AMDGPU_MACH_R600_RS880:
1064 case llvm::ELF::EF_AMDGPU_MACH_R600_RV670:
1066 case llvm::ELF::EF_AMDGPU_MACH_R600_RV710:
1068 case llvm::ELF::EF_AMDGPU_MACH_R600_RV730:
1070 case llvm::ELF::EF_AMDGPU_MACH_R600_RV770:
1072 case llvm::ELF::EF_AMDGPU_MACH_R600_CEDAR:
1074 case llvm::ELF::EF_AMDGPU_MACH_R600_CYPRESS:
1076 case llvm::ELF::EF_AMDGPU_MACH_R600_JUNIPER:
1078 case llvm::ELF::EF_AMDGPU_MACH_R600_REDWOOD:
1080 case llvm::ELF::EF_AMDGPU_MACH_R600_SUMO:
1082 case llvm::ELF::EF_AMDGPU_MACH_R600_BARTS:
1084 case llvm::ELF::EF_AMDGPU_MACH_R600_CAICOS:
1086 case llvm::ELF::EF_AMDGPU_MACH_R600_CAYMAN:
1088 case llvm::ELF::EF_AMDGPU_MACH_R600_TURKS:
1090 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX600:
1092 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX601:
1094 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX602:
1096 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX700:
1098 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX701:
1100 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX702:
1102 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX703:
1104 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX704:
1106 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX705:
1108 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX801:
1110 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX802:
1112 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX803:
1114 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX805:
1116 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX810:
1118 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX900:
1120 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX902:
1122 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX904:
1124 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX906:
1126 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX908:
1128 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX909:
1130 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX90A:
1132 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX90C:
1134 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX942:
1136 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX950:
1138 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1010:
1140 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1011:
1142 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1012:
1144 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1013:
1146 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1030:
1148 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1031:
1150 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1032:
1152 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1033:
1154 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1034:
1156 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1035:
1158 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1036:
1160 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1100:
1162 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1101:
1164 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1102:
1166 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1103:
1168 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1150:
1170 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1151:
1172 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1152:
1174 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1153:
1176 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1154:
1178 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1170:
1180 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1171:
1182 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1172:
1184 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1200:
1186 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1201:
1188 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1250_STRICT:
1189 return "gfx1250-strict";
1190 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1250:
1192 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1251:
1194 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX1310:
1196 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX9_GENERIC:
1197 return "gfx9-generic";
1198 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX9_4_GENERIC:
1199 return "gfx9-4-generic";
1200 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_1_GENERIC:
1201 return "gfx10-1-generic";
1202 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX10_3_GENERIC:
1203 return "gfx10-3-generic";
1204 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX11_GENERIC:
1205 return "gfx11-generic";
1206 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX12_GENERIC:
1207 return "gfx12-generic";
1208 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX12_5_GENERIC:
1209 return "gfx12-5-generic";
1210 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX11_7_GENERIC:
1211 return "gfx11-7-generic";
1212 case llvm::ELF::EF_AMDGPU_MACH_AMDGCN_GFX13_GENERIC:
1213 return "gfx13-generic";
1217 return llvm::StringRef(
"unknown");
1455 const llvm::Triple &lhs_triple =
GetTriple();
1456 const llvm::Triple &rhs_triple = rhs.
GetTriple();
1458 const llvm::Triple::VendorType lhs_triple_vendor = lhs_triple.getVendor();
1459 const llvm::Triple::VendorType rhs_triple_vendor = rhs_triple.getVendor();
1461 const llvm::Triple::OSType lhs_triple_os = lhs_triple.getOS();
1462 const llvm::Triple::OSType rhs_triple_os = rhs_triple.getOS();
1464 bool both_windows = lhs_triple.isOSWindows() && rhs_triple.isOSWindows();
1468 if ((lhs_triple_vendor != rhs_triple_vendor) &&
1474 if (rhs_vendor_specified && lhs_vendor_specified)
1478 if (lhs_triple_vendor != llvm::Triple::UnknownVendor &&
1479 rhs_triple_vendor != llvm::Triple::UnknownVendor)
1483 const llvm::Triple::EnvironmentType lhs_triple_env =
1484 lhs_triple.getEnvironment();
1485 const llvm::Triple::EnvironmentType rhs_triple_env =
1486 rhs_triple.getEnvironment();
1490 if ((lhs_triple_os == llvm::Triple::IOS &&
1491 lhs_triple_env == llvm::Triple::MacABI &&
1492 rhs_triple_os == llvm::Triple::MacOSX) ||
1493 (lhs_triple_os == llvm::Triple::MacOSX &&
1494 rhs_triple_os == llvm::Triple::IOS &&
1495 rhs_triple_env == llvm::Triple::MacABI))
1498 if ((lhs_triple_os == llvm::Triple::DriverKit &&
1499 rhs_triple_os == llvm::Triple::MacOSX) ||
1500 (lhs_triple_os == llvm::Triple::MacOSX &&
1501 rhs_triple_os == llvm::Triple::DriverKit))
1506 if (lhs_triple_os == llvm::Triple::IOS &&
1507 rhs_triple_os == llvm::Triple::IOS &&
1508 (lhs_triple_env == llvm::Triple::MacABI ||
1509 rhs_triple_env == llvm::Triple::MacABI) &&
1510 lhs_triple_env != rhs_triple_env)
1513 if (lhs_triple_os != rhs_triple_os) {
1517 if (lhs_os_specified && rhs_os_specified)
1522 ((!lhs_os_specified && !lhs_triple.hasEnvironment()) ||
1523 (!rhs_os_specified && !rhs_triple.hasEnvironment())))