Lines Matching defs:Builtin

2090   unsigned Builtin = E->getBuiltinCallee();
2091 return (Builtin == Builtin::BI__builtin___CFStringMakeConstantString ||
2092 Builtin == Builtin::BI__builtin___NSStringMakeConstantString ||
2093 Builtin == Builtin::BI__builtin_ptrauth_sign_constant ||
2094 Builtin == Builtin::BI__builtin_function_start);
8129 if (CallCE->getBuiltinCallee() == Builtin::BI__builtin_constant_p)
8995 case Builtin::BIas_const:
8996 case Builtin::BIforward:
8997 case Builtin::BIforward_like:
8998 case Builtin::BImove:
8999 case Builtin::BImove_if_noexcept:
9861 case Builtin::BIaddressof:
9862 case Builtin::BI__addressof:
9863 case Builtin::BI__builtin_addressof:
9865 case Builtin::BI__builtin_assume_aligned: {
9916 case Builtin::BI__builtin_align_up:
9917 case Builtin::BI__builtin_align_down: {
9941 BuiltinOp == Builtin::BI__builtin_align_down
9953 case Builtin::BI__builtin_operator_new:
9955 case Builtin::BI__builtin_launder:
9957 case Builtin::BIstrchr:
9958 case Builtin::BIwcschr:
9959 case Builtin::BImemchr:
9960 case Builtin::BIwmemchr:
9968 case Builtin::BI__builtin_strchr:
9969 case Builtin::BI__builtin_wcschr:
9970 case Builtin::BI__builtin_memchr:
9971 case Builtin::BI__builtin_char_memchr:
9972 case Builtin::BI__builtin_wmemchr: {
9979 if (BuiltinOp != Builtin::BIstrchr &&
9980 BuiltinOp != Builtin::BIwcschr &&
9981 BuiltinOp != Builtin::BI__builtin_strchr &&
9982 BuiltinOp != Builtin::BI__builtin_wcschr) {
9995 bool IsRawByte = BuiltinOp == Builtin::BImemchr ||
9996 BuiltinOp == Builtin::BI__builtin_memchr;
10017 case Builtin::BIstrchr:
10018 case Builtin::BI__builtin_strchr:
10028 case Builtin::BImemchr:
10029 case Builtin::BI__builtin_memchr:
10030 case Builtin::BI__builtin_char_memchr:
10037 case Builtin::BIwcschr:
10038 case Builtin::BI__builtin_wcschr:
10041 case Builtin::BIwmemchr:
10042 case Builtin::BI__builtin_wmemchr:
10064 case Builtin::BImemcpy:
10065 case Builtin::BImemmove:
10066 case Builtin::BIwmemcpy:
10067 case Builtin::BIwmemmove:
10075 case Builtin::BI__builtin_memcpy:
10076 case Builtin::BI__builtin_memmove:
10077 case Builtin::BI__builtin_wmemcpy:
10078 case Builtin::BI__builtin_wmemmove: {
10079 bool WChar = BuiltinOp == Builtin::BIwmemcpy ||
10080 BuiltinOp == Builtin::BIwmemmove ||
10081 BuiltinOp == Builtin::BI__builtin_wmemcpy ||
10082 BuiltinOp == Builtin::BI__builtin_wmemmove;
10083 bool Move = BuiltinOp == Builtin::BImemmove ||
10084 BuiltinOp == Builtin::BIwmemmove ||
10085 BuiltinOp == Builtin::BI__builtin_memmove ||
10086 BuiltinOp == Builtin::BI__builtin_wmemmove;
11396 case Builtin::BI__builtin_elementwise_popcount:
11397 case Builtin::BI__builtin_elementwise_bitreverse: {
11410 case Builtin::BI__builtin_elementwise_popcount:
11415 case Builtin::BI__builtin_elementwise_bitreverse:
11425 case Builtin::BI__builtin_elementwise_add_sat:
11426 case Builtin::BI__builtin_elementwise_sub_sat: {
11441 case Builtin::BI__builtin_elementwise_add_sat:
11446 case Builtin::BI__builtin_elementwise_sub_sat:
12253 case Type::Builtin:
12868 case Builtin::BI__builtin_dynamic_object_size:
12869 case Builtin::BI__builtin_object_size: {
12898 case Builtin::BI__builtin_os_log_format_buffer_size: {
12904 case Builtin::BI__builtin_is_aligned: {
12938 case Builtin::BI__builtin_align_up: {
12951 case Builtin::BI__builtin_align_down: {
12964 case Builtin::BI__builtin_bitreverse8:
12965 case Builtin::BI__builtin_bitreverse16:
12966 case Builtin::BI__builtin_bitreverse32:
12967 case Builtin::BI__builtin_bitreverse64:
12968 case Builtin::BI__builtin_elementwise_bitreverse: {
12976 case Builtin::BI__builtin_bswap16:
12977 case Builtin::BI__builtin_bswap32:
12978 case Builtin::BI__builtin_bswap64: {
12986 case Builtin::BI__builtin_classify_type:
12989 case Builtin::BI__builtin_clrsb:
12990 case Builtin::BI__builtin_clrsbl:
12991 case Builtin::BI__builtin_clrsbll: {
12999 case Builtin::BI__builtin_clz:
13000 case Builtin::BI__builtin_clzl:
13001 case Builtin::BI__builtin_clzll:
13002 case Builtin::BI__builtin_clzs:
13003 case Builtin::BI__builtin_clzg:
13004 case Builtin::BI__lzcnt16: // Microsoft variants of count leading-zeroes
13005 case Builtin::BI__lzcnt:
13006 case Builtin::BI__lzcnt64: {
13012 if (BuiltinOp == Builtin::BI__builtin_clzg && E->getNumArgs() > 1) {
13026 bool ZeroIsUndefined = BuiltinOp != Builtin::BI__lzcnt16 &&
13027 BuiltinOp != Builtin::BI__lzcnt &&
13028 BuiltinOp != Builtin::BI__lzcnt64;
13037 case Builtin::BI__builtin_constant_p: {
13051 case Builtin::BI__noop:
13055 case Builtin::BI__builtin_is_constant_evaluated: {
13075 case Builtin::BI__builtin_is_within_lifetime:
13080 case Builtin::BI__builtin_ctz:
13081 case Builtin::BI__builtin_ctzl:
13082 case Builtin::BI__builtin_ctzll:
13083 case Builtin::BI__builtin_ctzs:
13084 case Builtin::BI__builtin_ctzg: {
13090 if (BuiltinOp == Builtin::BI__builtin_ctzg && E->getNumArgs() > 1) {
13107 case Builtin::BI__builtin_eh_return_data_regno: {
13113 case Builtin::BI__builtin_expect:
13114 case Builtin::BI__builtin_expect_with_probability:
13117 case Builtin::BI__builtin_ptrauth_string_discriminator: {
13124 case Builtin::BI__builtin_ffs:
13125 case Builtin::BI__builtin_ffsl:
13126 case Builtin::BI__builtin_ffsll: {
13135 case Builtin::BI__builtin_fpclassify: {
13149 case Builtin::BI__builtin_isinf_sign: {
13155 case Builtin::BI__builtin_isinf: {
13161 case Builtin::BI__builtin_isfinite: {
13167 case Builtin::BI__builtin_isnan: {
13173 case Builtin::BI__builtin_isnormal: {
13179 case Builtin::BI__builtin_issubnormal: {
13185 case Builtin::BI__builtin_iszero: {
13191 case Builtin::BI__builtin_signbit:
13192 case Builtin::BI__builtin_signbitf:
13193 case Builtin::BI__builtin_signbitl: {
13199 case Builtin::BI__builtin_isgreater:
13200 case Builtin::BI__builtin_isgreaterequal:
13201 case Builtin::BI__builtin_isless:
13202 case Builtin::BI__builtin_islessequal:
13203 case Builtin::BI__builtin_islessgreater:
13204 case Builtin::BI__builtin_isunordered: {
13214 case Builtin::BI__builtin_isgreater:
13216 case Builtin::BI__builtin_isgreaterequal:
13218 case Builtin::BI__builtin_isless:
13220 case Builtin::BI__builtin_islessequal:
13222 case Builtin::BI__builtin_islessgreater: {
13227 case Builtin::BI__builtin_isunordered:
13239 case Builtin::BI__builtin_issignaling: {
13245 case Builtin::BI__builtin_isfpclass: {
13255 case Builtin::BI__builtin_parity:
13256 case Builtin::BI__builtin_parityl:
13257 case Builtin::BI__builtin_parityll: {
13265 case Builtin::BI__builtin_abs:
13266 case Builtin::BI__builtin_labs:
13267 case Builtin::BI__builtin_llabs: {
13279 case Builtin::BI__builtin_popcount:
13280 case Builtin::BI__builtin_popcountl:
13281 case Builtin::BI__builtin_popcountll:
13282 case Builtin::BI__builtin_popcountg:
13283 case Builtin::BI__builtin_elementwise_popcount:
13284 case Builtin::BI__popcnt16: // Microsoft variants of popcount
13285 case Builtin::BI__popcnt:
13286 case Builtin::BI__popcnt64: {
13294 case Builtin::BI__builtin_rotateleft8:
13295 case Builtin::BI__builtin_rotateleft16:
13296 case Builtin::BI__builtin_rotateleft32:
13297 case Builtin::BI__builtin_rotateleft64:
13298 case Builtin::BI_rotl8: // Microsoft variants of rotate right
13299 case Builtin::BI_rotl16:
13300 case Builtin::BI_rotl:
13301 case Builtin::BI_lrotl:
13302 case Builtin::BI_rotl64: {
13311 case Builtin::BI__builtin_rotateright8:
13312 case Builtin::BI__builtin_rotateright16:
13313 case Builtin::BI__builtin_rotateright32:
13314 case Builtin::BI__builtin_rotateright64:
13315 case Builtin::BI_rotr8: // Microsoft variants of rotate right
13316 case Builtin::BI_rotr16:
13317 case Builtin::BI_rotr:
13318 case Builtin::BI_lrotr:
13319 case Builtin::BI_rotr64: {
13328 case Builtin::BI__builtin_elementwise_add_sat: {
13337 case Builtin::BI__builtin_elementwise_sub_sat: {
13347 case Builtin::BIstrlen:
13348 case Builtin::BIwcslen:
13357 case Builtin::BI__builtin_strlen:
13358 case Builtin::BI__builtin_wcslen: {
13367 case Builtin::BIstrcmp:
13368 case Builtin::BIwcscmp:
13369 case Builtin::BIstrncmp:
13370 case Builtin::BIwcsncmp:
13371 case Builtin::BImemcmp:
13372 case Builtin::BIbcmp:
13373 case Builtin::BIwmemcmp:
13382 case Builtin::BI__builtin_strcmp:
13383 case Builtin::BI__builtin_wcscmp:
13384 case Builtin::BI__builtin_strncmp:
13385 case Builtin::BI__builtin_wcsncmp:
13386 case Builtin::BI__builtin_memcmp:
13387 case Builtin::BI__builtin_bcmp:
13388 case Builtin::BI__builtin_wmemcmp: {
13395 if (BuiltinOp != Builtin::BIstrcmp &&
13396 BuiltinOp != Builtin::BIwcscmp &&
13397 BuiltinOp != Builtin::BI__builtin_strcmp &&
13398 BuiltinOp != Builtin::BI__builtin_wcscmp) {
13417 bool IsRawByte = BuiltinOp == Builtin::BImemcmp ||
13418 BuiltinOp == Builtin::BIbcmp ||
13419 BuiltinOp == Builtin::BI__builtin_memcmp ||
13420 BuiltinOp == Builtin::BI__builtin_bcmp;
13449 (BuiltinOp != Builtin::BImemcmp && BuiltinOp != Builtin::BIbcmp &&
13450 BuiltinOp != Builtin::BIwmemcmp &&
13451 BuiltinOp != Builtin::BI__builtin_memcmp &&
13452 BuiltinOp != Builtin::BI__builtin_bcmp &&
13453 BuiltinOp != Builtin::BI__builtin_wmemcmp);
13454 bool IsWide = BuiltinOp == Builtin::BIwcscmp ||
13455 BuiltinOp == Builtin::BIwcsncmp ||
13456 BuiltinOp == Builtin::BIwmemcmp ||
13457 BuiltinOp == Builtin::BI__builtin_wcscmp ||
13458 BuiltinOp == Builtin::BI__builtin_wcsncmp ||
13459 BuiltinOp == Builtin::BI__builtin_wmemcmp;
13481 case Builtin::BI__atomic_always_lock_free:
13482 case Builtin::BI__atomic_is_lock_free:
13483 case Builtin::BI__c11_atomic_is_lock_free: {
13504 if (BuiltinOp == Builtin::BI__c11_atomic_is_lock_free ||
13538 return BuiltinOp == Builtin::BI__atomic_always_lock_free ?
13541 case Builtin::BI__builtin_addcb:
13542 case Builtin::BI__builtin_addcs:
13543 case Builtin::BI__builtin_addc:
13544 case Builtin::BI__builtin_addcl:
13545 case Builtin::BI__builtin_addcll:
13546 case Builtin::BI__builtin_subcb:
13547 case Builtin::BI__builtin_subcs:
13548 case Builtin::BI__builtin_subc:
13549 case Builtin::BI__builtin_subcl:
13550 case Builtin::BI__builtin_subcll: {
13568 case Builtin::BI__builtin_addcb:
13569 case Builtin::BI__builtin_addcs:
13570 case Builtin::BI__builtin_addc:
13571 case Builtin::BI__builtin_addcl:
13572 case Builtin::BI__builtin_addcll:
13576 case Builtin::BI__builtin_subcb:
13577 case Builtin::BI__builtin_subcs:
13578 case Builtin::BI__builtin_subc:
13579 case Builtin::BI__builtin_subcl:
13580 case Builtin::BI__builtin_subcll:
13594 case Builtin::BI__builtin_add_overflow:
13595 case Builtin::BI__builtin_sub_overflow:
13596 case Builtin::BI__builtin_mul_overflow:
13597 case Builtin::BI__builtin_sadd_overflow:
13598 case Builtin::BI__builtin_uadd_overflow:
13599 case Builtin::BI__builtin_uaddl_overflow:
13600 case Builtin::BI__builtin_uaddll_overflow:
13601 case Builtin::BI__builtin_usub_overflow:
13602 case Builtin::BI__builtin_usubl_overflow:
13603 case Builtin::BI__builtin_usubll_overflow:
13604 case Builtin::BI__builtin_umul_overflow:
13605 case Builtin::BI__builtin_umull_overflow:
13606 case Builtin::BI__builtin_umulll_overflow:
13607 case Builtin::BI__builtin_saddl_overflow:
13608 case Builtin::BI__builtin_saddll_overflow:
13609 case Builtin::BI__builtin_ssub_overflow:
13610 case Builtin::BI__builtin_ssubl_overflow:
13611 case Builtin::BI__builtin_ssubll_overflow:
13612 case Builtin::BI__builtin_smul_overflow:
13613 case Builtin::BI__builtin_smull_overflow:
13614 case Builtin::BI__builtin_smulll_overflow: {
13628 if (BuiltinOp == Builtin::BI__builtin_add_overflow ||
13629 BuiltinOp == Builtin::BI__builtin_sub_overflow ||
13630 BuiltinOp == Builtin::BI__builtin_mul_overflow) {
13656 case Builtin::BI__builtin_add_overflow:
13657 case Builtin::BI__builtin_sadd_overflow:
13658 case Builtin::BI__builtin_saddl_overflow:
13659 case Builtin::BI__builtin_saddll_overflow:
13660 case Builtin::BI__builtin_uadd_overflow:
13661 case Builtin::BI__builtin_uaddl_overflow:
13662 case Builtin::BI__builtin_uaddll_overflow:
13666 case Builtin::BI__builtin_sub_overflow:
13667 case Builtin::BI__builtin_ssub_overflow:
13668 case Builtin::BI__builtin_ssubl_overflow:
13669 case Builtin::BI__builtin_ssubll_overflow:
13670 case Builtin::BI__builtin_usub_overflow:
13671 case Builtin::BI__builtin_usubl_overflow:
13672 case Builtin::BI__builtin_usubll_overflow:
13676 case Builtin::BI__builtin_mul_overflow:
13677 case Builtin::BI__builtin_smul_overflow:
13678 case Builtin::BI__builtin_smull_overflow:
13679 case Builtin::BI__builtin_smulll_overflow:
13680 case Builtin::BI__builtin_umul_overflow:
13681 case Builtin::BI__builtin_umull_overflow:
13682 case Builtin::BI__builtin_umulll_overflow:
13690 if (BuiltinOp == Builtin::BI__builtin_add_overflow ||
13691 BuiltinOp == Builtin::BI__builtin_sub_overflow ||
13692 BuiltinOp == Builtin::BI__builtin_mul_overflow) {
13712 case Builtin::BI__builtin_reduce_add:
13713 case Builtin::BI__builtin_reduce_mul:
13714 case Builtin::BI__builtin_reduce_and:
13715 case Builtin::BI__builtin_reduce_or:
13716 case Builtin::BI__builtin_reduce_xor:
13717 case Builtin::BI__builtin_reduce_min:
13718 case Builtin::BI__builtin_reduce_max: {
13729 case Builtin::BI__builtin_reduce_add: {
13736 case Builtin::BI__builtin_reduce_mul: {
13743 case Builtin::BI__builtin_reduce_and: {
13747 case Builtin::BI__builtin_reduce_or: {
13751 case Builtin::BI__builtin_reduce_xor: {
13755 case Builtin::BI__builtin_reduce_min: {
13759 case Builtin::BI__builtin_reduce_max: {
15526 case Builtin::BI__builtin_huge_val:
15527 case Builtin::BI__builtin_huge_valf:
15528 case Builtin::BI__builtin_huge_vall:
15529 case Builtin::BI__builtin_huge_valf16:
15530 case Builtin::BI__builtin_huge_valf128:
15531 case Builtin::BI__builtin_inf:
15532 case Builtin::BI__builtin_inff:
15533 case Builtin::BI__builtin_infl:
15534 case Builtin::BI__builtin_inff16:
15535 case Builtin::BI__builtin_inff128: {
15542 case Builtin::BI__builtin_nans:
15543 case Builtin::BI__builtin_nansf:
15544 case Builtin::BI__builtin_nansl:
15545 case Builtin::BI__builtin_nansf16:
15546 case Builtin::BI__builtin_nansf128:
15552 case Builtin::BI__builtin_nan:
15553 case Builtin::BI__builtin_nanf:
15554 case Builtin::BI__builtin_nanl:
15555 case Builtin::BI__builtin_nanf16:
15556 case Builtin::BI__builtin_nanf128:
15564 case Builtin::BI__builtin_fabs:
15565 case Builtin::BI__builtin_fabsf:
15566 case Builtin::BI__builtin_fabsl:
15567 case Builtin::BI__builtin_fabsf128:
15580 case Builtin::BI__arithmetic_fence:
15583 // FIXME: Builtin::BI__builtin_powi
15584 // FIXME: Builtin::BI__builtin_powif
15585 // FIXME: Builtin::BI__builtin_powil
15587 case Builtin::BI__builtin_copysign:
15588 case Builtin::BI__builtin_copysignf:
15589 case Builtin::BI__builtin_copysignl:
15590 case Builtin::BI__builtin_copysignf128: {
15599 case Builtin::BI__builtin_fmax:
15600 case Builtin::BI__builtin_fmaxf:
15601 case Builtin::BI__builtin_fmaxl:
15602 case Builtin::BI__builtin_fmaxf16:
15603 case Builtin::BI__builtin_fmaxf128: {
15617 case Builtin::BI__builtin_fmin:
15618 case Builtin::BI__builtin_fminf:
15619 case Builtin::BI__builtin_fminl:
15620 case Builtin::BI__builtin_fminf16:
15621 case Builtin::BI__builtin_fminf128: {
15635 case Builtin::BI__builtin_fmaximum_num:
15636 case Builtin::BI__builtin_fmaximum_numf:
15637 case Builtin::BI__builtin_fmaximum_numl:
15638 case Builtin::BI__builtin_fmaximum_numf16:
15639 case Builtin::BI__builtin_fmaximum_numf128: {
15648 case Builtin::BI__builtin_fminimum_num:
15649 case Builtin::BI__builtin_fminimum_numf:
15650 case Builtin::BI__builtin_fminimum_numl:
15651 case Builtin::BI__builtin_fminimum_numf16:
15652 case Builtin::BI__builtin_fminimum_numf128: {
16315 case Builtin::BI__builtin_complex:
16408 case Builtin::BI__assume:
16409 case Builtin::BI__builtin_assume:
16413 case Builtin::BI__builtin_operator_delete:
17523 if (CallCE->getBuiltinCallee() == Builtin::BI__builtin_constant_p)
17971 assert(E->getBuiltinCallee() == Builtin::BI__builtin_is_within_lifetime);