Lines Matching refs:MSVCIntrin

1125 enum class CodeGenFunction::MSVCIntrin {  enum in CodeGenFunction
1167 static Optional<CodeGenFunction::MSVCIntrin>
1169 using MSVCIntrin = CodeGenFunction::MSVCIntrin; in translateArmToMsvcIntrin() typedef
1175 return MSVCIntrin::_BitScanForward; in translateArmToMsvcIntrin()
1178 return MSVCIntrin::_BitScanReverse; in translateArmToMsvcIntrin()
1180 return MSVCIntrin::_InterlockedAnd; in translateArmToMsvcIntrin()
1182 return MSVCIntrin::_InterlockedExchange; in translateArmToMsvcIntrin()
1184 return MSVCIntrin::_InterlockedExchangeAdd; in translateArmToMsvcIntrin()
1186 return MSVCIntrin::_InterlockedExchangeSub; in translateArmToMsvcIntrin()
1188 return MSVCIntrin::_InterlockedOr; in translateArmToMsvcIntrin()
1190 return MSVCIntrin::_InterlockedXor; in translateArmToMsvcIntrin()
1192 return MSVCIntrin::_InterlockedDecrement; in translateArmToMsvcIntrin()
1194 return MSVCIntrin::_InterlockedIncrement; in translateArmToMsvcIntrin()
1199 return MSVCIntrin::_InterlockedExchangeAdd_acq; in translateArmToMsvcIntrin()
1204 return MSVCIntrin::_InterlockedExchangeAdd_rel; in translateArmToMsvcIntrin()
1209 return MSVCIntrin::_InterlockedExchangeAdd_nf; in translateArmToMsvcIntrin()
1214 return MSVCIntrin::_InterlockedExchange_acq; in translateArmToMsvcIntrin()
1219 return MSVCIntrin::_InterlockedExchange_rel; in translateArmToMsvcIntrin()
1224 return MSVCIntrin::_InterlockedExchange_nf; in translateArmToMsvcIntrin()
1229 return MSVCIntrin::_InterlockedCompareExchange_acq; in translateArmToMsvcIntrin()
1234 return MSVCIntrin::_InterlockedCompareExchange_rel; in translateArmToMsvcIntrin()
1239 return MSVCIntrin::_InterlockedCompareExchange_nf; in translateArmToMsvcIntrin()
1244 return MSVCIntrin::_InterlockedOr_acq; in translateArmToMsvcIntrin()
1249 return MSVCIntrin::_InterlockedOr_rel; in translateArmToMsvcIntrin()
1254 return MSVCIntrin::_InterlockedOr_nf; in translateArmToMsvcIntrin()
1259 return MSVCIntrin::_InterlockedXor_acq; in translateArmToMsvcIntrin()
1264 return MSVCIntrin::_InterlockedXor_rel; in translateArmToMsvcIntrin()
1269 return MSVCIntrin::_InterlockedXor_nf; in translateArmToMsvcIntrin()
1274 return MSVCIntrin::_InterlockedAnd_acq; in translateArmToMsvcIntrin()
1279 return MSVCIntrin::_InterlockedAnd_rel; in translateArmToMsvcIntrin()
1284 return MSVCIntrin::_InterlockedAnd_nf; in translateArmToMsvcIntrin()
1288 return MSVCIntrin::_InterlockedIncrement_acq; in translateArmToMsvcIntrin()
1292 return MSVCIntrin::_InterlockedIncrement_rel; in translateArmToMsvcIntrin()
1296 return MSVCIntrin::_InterlockedIncrement_nf; in translateArmToMsvcIntrin()
1300 return MSVCIntrin::_InterlockedDecrement_acq; in translateArmToMsvcIntrin()
1304 return MSVCIntrin::_InterlockedDecrement_rel; in translateArmToMsvcIntrin()
1308 return MSVCIntrin::_InterlockedDecrement_nf; in translateArmToMsvcIntrin()
1313 static Optional<CodeGenFunction::MSVCIntrin>
1315 using MSVCIntrin = CodeGenFunction::MSVCIntrin; in translateAarch64ToMsvcIntrin() typedef
1321 return MSVCIntrin::_BitScanForward; in translateAarch64ToMsvcIntrin()
1324 return MSVCIntrin::_BitScanReverse; in translateAarch64ToMsvcIntrin()
1326 return MSVCIntrin::_InterlockedAnd; in translateAarch64ToMsvcIntrin()
1328 return MSVCIntrin::_InterlockedExchange; in translateAarch64ToMsvcIntrin()
1330 return MSVCIntrin::_InterlockedExchangeAdd; in translateAarch64ToMsvcIntrin()
1332 return MSVCIntrin::_InterlockedExchangeSub; in translateAarch64ToMsvcIntrin()
1334 return MSVCIntrin::_InterlockedOr; in translateAarch64ToMsvcIntrin()
1336 return MSVCIntrin::_InterlockedXor; in translateAarch64ToMsvcIntrin()
1338 return MSVCIntrin::_InterlockedDecrement; in translateAarch64ToMsvcIntrin()
1340 return MSVCIntrin::_InterlockedIncrement; in translateAarch64ToMsvcIntrin()
1345 return MSVCIntrin::_InterlockedExchangeAdd_acq; in translateAarch64ToMsvcIntrin()
1350 return MSVCIntrin::_InterlockedExchangeAdd_rel; in translateAarch64ToMsvcIntrin()
1355 return MSVCIntrin::_InterlockedExchangeAdd_nf; in translateAarch64ToMsvcIntrin()
1360 return MSVCIntrin::_InterlockedExchange_acq; in translateAarch64ToMsvcIntrin()
1365 return MSVCIntrin::_InterlockedExchange_rel; in translateAarch64ToMsvcIntrin()
1370 return MSVCIntrin::_InterlockedExchange_nf; in translateAarch64ToMsvcIntrin()
1375 return MSVCIntrin::_InterlockedCompareExchange_acq; in translateAarch64ToMsvcIntrin()
1380 return MSVCIntrin::_InterlockedCompareExchange_rel; in translateAarch64ToMsvcIntrin()
1385 return MSVCIntrin::_InterlockedCompareExchange_nf; in translateAarch64ToMsvcIntrin()
1387 return MSVCIntrin::_InterlockedCompareExchange128; in translateAarch64ToMsvcIntrin()
1389 return MSVCIntrin::_InterlockedCompareExchange128_acq; in translateAarch64ToMsvcIntrin()
1391 return MSVCIntrin::_InterlockedCompareExchange128_nf; in translateAarch64ToMsvcIntrin()
1393 return MSVCIntrin::_InterlockedCompareExchange128_rel; in translateAarch64ToMsvcIntrin()
1398 return MSVCIntrin::_InterlockedOr_acq; in translateAarch64ToMsvcIntrin()
1403 return MSVCIntrin::_InterlockedOr_rel; in translateAarch64ToMsvcIntrin()
1408 return MSVCIntrin::_InterlockedOr_nf; in translateAarch64ToMsvcIntrin()
1413 return MSVCIntrin::_InterlockedXor_acq; in translateAarch64ToMsvcIntrin()
1418 return MSVCIntrin::_InterlockedXor_rel; in translateAarch64ToMsvcIntrin()
1423 return MSVCIntrin::_InterlockedXor_nf; in translateAarch64ToMsvcIntrin()
1428 return MSVCIntrin::_InterlockedAnd_acq; in translateAarch64ToMsvcIntrin()
1433 return MSVCIntrin::_InterlockedAnd_rel; in translateAarch64ToMsvcIntrin()
1438 return MSVCIntrin::_InterlockedAnd_nf; in translateAarch64ToMsvcIntrin()
1442 return MSVCIntrin::_InterlockedIncrement_acq; in translateAarch64ToMsvcIntrin()
1446 return MSVCIntrin::_InterlockedIncrement_rel; in translateAarch64ToMsvcIntrin()
1450 return MSVCIntrin::_InterlockedIncrement_nf; in translateAarch64ToMsvcIntrin()
1454 return MSVCIntrin::_InterlockedDecrement_acq; in translateAarch64ToMsvcIntrin()
1458 return MSVCIntrin::_InterlockedDecrement_rel; in translateAarch64ToMsvcIntrin()
1462 return MSVCIntrin::_InterlockedDecrement_nf; in translateAarch64ToMsvcIntrin()
1467 static Optional<CodeGenFunction::MSVCIntrin>
1469 using MSVCIntrin = CodeGenFunction::MSVCIntrin; in translateX86ToMsvcIntrin() typedef
1475 return MSVCIntrin::_BitScanForward; in translateX86ToMsvcIntrin()
1478 return MSVCIntrin::_BitScanReverse; in translateX86ToMsvcIntrin()
1480 return MSVCIntrin::_InterlockedAnd; in translateX86ToMsvcIntrin()
1482 return MSVCIntrin::_InterlockedCompareExchange128; in translateX86ToMsvcIntrin()
1484 return MSVCIntrin::_InterlockedExchange; in translateX86ToMsvcIntrin()
1486 return MSVCIntrin::_InterlockedExchangeAdd; in translateX86ToMsvcIntrin()
1488 return MSVCIntrin::_InterlockedExchangeSub; in translateX86ToMsvcIntrin()
1490 return MSVCIntrin::_InterlockedOr; in translateX86ToMsvcIntrin()
1492 return MSVCIntrin::_InterlockedXor; in translateX86ToMsvcIntrin()
1494 return MSVCIntrin::_InterlockedDecrement; in translateX86ToMsvcIntrin()
1496 return MSVCIntrin::_InterlockedIncrement; in translateX86ToMsvcIntrin()
1502 Value *CodeGenFunction::EmitMSVCBuiltinExpr(MSVCIntrin BuiltinID, in EmitMSVCBuiltinExpr()
1505 case MSVCIntrin::_BitScanForward: in EmitMSVCBuiltinExpr()
1506 case MSVCIntrin::_BitScanReverse: { in EmitMSVCBuiltinExpr()
1531 if (BuiltinID == MSVCIntrin::_BitScanForward) { in EmitMSVCBuiltinExpr()
1552 case MSVCIntrin::_InterlockedAnd: in EmitMSVCBuiltinExpr()
1554 case MSVCIntrin::_InterlockedExchange: in EmitMSVCBuiltinExpr()
1556 case MSVCIntrin::_InterlockedExchangeAdd: in EmitMSVCBuiltinExpr()
1558 case MSVCIntrin::_InterlockedExchangeSub: in EmitMSVCBuiltinExpr()
1560 case MSVCIntrin::_InterlockedOr: in EmitMSVCBuiltinExpr()
1562 case MSVCIntrin::_InterlockedXor: in EmitMSVCBuiltinExpr()
1564 case MSVCIntrin::_InterlockedExchangeAdd_acq: in EmitMSVCBuiltinExpr()
1567 case MSVCIntrin::_InterlockedExchangeAdd_rel: in EmitMSVCBuiltinExpr()
1570 case MSVCIntrin::_InterlockedExchangeAdd_nf: in EmitMSVCBuiltinExpr()
1573 case MSVCIntrin::_InterlockedExchange_acq: in EmitMSVCBuiltinExpr()
1576 case MSVCIntrin::_InterlockedExchange_rel: in EmitMSVCBuiltinExpr()
1579 case MSVCIntrin::_InterlockedExchange_nf: in EmitMSVCBuiltinExpr()
1582 case MSVCIntrin::_InterlockedCompareExchange_acq: in EmitMSVCBuiltinExpr()
1584 case MSVCIntrin::_InterlockedCompareExchange_rel: in EmitMSVCBuiltinExpr()
1586 case MSVCIntrin::_InterlockedCompareExchange_nf: in EmitMSVCBuiltinExpr()
1588 case MSVCIntrin::_InterlockedCompareExchange128: in EmitMSVCBuiltinExpr()
1591 case MSVCIntrin::_InterlockedCompareExchange128_acq: in EmitMSVCBuiltinExpr()
1593 case MSVCIntrin::_InterlockedCompareExchange128_rel: in EmitMSVCBuiltinExpr()
1595 case MSVCIntrin::_InterlockedCompareExchange128_nf: in EmitMSVCBuiltinExpr()
1597 case MSVCIntrin::_InterlockedOr_acq: in EmitMSVCBuiltinExpr()
1600 case MSVCIntrin::_InterlockedOr_rel: in EmitMSVCBuiltinExpr()
1603 case MSVCIntrin::_InterlockedOr_nf: in EmitMSVCBuiltinExpr()
1606 case MSVCIntrin::_InterlockedXor_acq: in EmitMSVCBuiltinExpr()
1609 case MSVCIntrin::_InterlockedXor_rel: in EmitMSVCBuiltinExpr()
1612 case MSVCIntrin::_InterlockedXor_nf: in EmitMSVCBuiltinExpr()
1615 case MSVCIntrin::_InterlockedAnd_acq: in EmitMSVCBuiltinExpr()
1618 case MSVCIntrin::_InterlockedAnd_rel: in EmitMSVCBuiltinExpr()
1621 case MSVCIntrin::_InterlockedAnd_nf: in EmitMSVCBuiltinExpr()
1624 case MSVCIntrin::_InterlockedIncrement_acq: in EmitMSVCBuiltinExpr()
1626 case MSVCIntrin::_InterlockedIncrement_rel: in EmitMSVCBuiltinExpr()
1628 case MSVCIntrin::_InterlockedIncrement_nf: in EmitMSVCBuiltinExpr()
1630 case MSVCIntrin::_InterlockedDecrement_acq: in EmitMSVCBuiltinExpr()
1632 case MSVCIntrin::_InterlockedDecrement_rel: in EmitMSVCBuiltinExpr()
1634 case MSVCIntrin::_InterlockedDecrement_nf: in EmitMSVCBuiltinExpr()
1637 case MSVCIntrin::_InterlockedDecrement: in EmitMSVCBuiltinExpr()
1639 case MSVCIntrin::_InterlockedIncrement: in EmitMSVCBuiltinExpr()
1642 case MSVCIntrin::__fastfail: { in EmitMSVCBuiltinExpr()
4506 EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchange, E)); in EmitBuiltinExpr()
4545 EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedIncrement, E)); in EmitBuiltinExpr()
4549 EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedDecrement, E)); in EmitBuiltinExpr()
4553 return RValue::get(EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedAnd, E)); in EmitBuiltinExpr()
4558 EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchangeAdd, E)); in EmitBuiltinExpr()
4563 EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedExchangeSub, E)); in EmitBuiltinExpr()
4567 return RValue::get(EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedOr, E)); in EmitBuiltinExpr()
4571 return RValue::get(EmitMSVCBuiltinExpr(MSVCIntrin::_InterlockedXor, E)); in EmitBuiltinExpr()
4645 return RValue::get(EmitMSVCBuiltinExpr(MSVCIntrin::__fastfail, E)); in EmitBuiltinExpr()
7805 if (Optional<MSVCIntrin> MsvcIntId = translateArmToMsvcIntrin(BuiltinID)) in EmitARMBuiltinExpr()
10029 if (Optional<MSVCIntrin> MsvcIntId = translateAarch64ToMsvcIntrin(BuiltinID)) in EmitAArch64BuiltinExpr()
12774 if (Optional<MSVCIntrin> MsvcIntId = translateX86ToMsvcIntrin(BuiltinID)) in EmitX86BuiltinExpr()