| (builtin_compatibility)= |
| |
| # GCC Compatibility of Builtins |
| |
| LLVM-libc is written with Clang as the reference compiler but is expected to |
| build under GCC as well. Many headers reach for compiler intrinsics |
| (`__builtin_*`) for fast paths and for IEEE-754 semantics. Not every |
| `__builtin_*` exists in every compiler. a large family is Clang-only, |
| and several others were added in specific GCC releases. This page records |
| which builtins the libc code base references today and the minimum GCC |
| basepoint that ships each one. |
| |
| | Builtin | gcc-5 | gcc-6 | gcc-7 | gcc-8 | gcc-9 | gcc-10 | gcc-11 | gcc-12 | gcc-13 | gcc-14 | gcc-15 | gcc-16 | gcc-17 | |
| | ------------------------------------ | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | |
| | `__builtin_aarch64_get_fpcr` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_aarch64_get_fpsr` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_aarch64_set_fpcr` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_aarch64_set_fpsr` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_aarch64_wsr64` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_abs` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_addc` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_addcb` | | | | | | | | | | | | | | |
| | `__builtin_addcl` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_addcll` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_addcs` | | | | | | | | | | | | | | |
| | `__builtin_add_overflow` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_addressof` | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_align_down` | | | | | | | | | | | | | | |
| | `__builtin_align_up` | | | | | | | | | | | | | | |
| | `__builtin_alloca` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_amdgcn_ldexp` | | | | | | | | | | | | | | |
| | `__builtin_amdgcn_ldexpf` | | | | | | | | | | | | | | |
| | `__builtin_amdgcn_s_sendmsg` | | | | | | | | | | | | | | |
| | `__builtin_amdgcn_s_sleep` | | | | | | | | | | | | | | |
| | `__builtin_amdgcn_workitem_id_x` | | | | | | | | | | | | | | |
| | `__builtin_arm_get_fpscr` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_arm_isb` | | | | | | | | | | | | | | |
| | `__builtin_arm_set_fpscr` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_arm_wsr64` | | | | | | | | | | | | | | |
| | `__builtin_assume` | | | | | | | | | | | | | | |
| | `__builtin_assume_aligned` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_bcmp` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_bit_cast` | | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_bswap16` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_bswap32` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_bswap64` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ceil` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ceilf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_clear_padding` | | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_clz` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_clzg` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_clzl` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_clzll` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_clzs` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_complex` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_convertvector` | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_copysign` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_copysignf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_copysignf16` | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ctz` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ctzg` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ctzl` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ctzll` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ctzs` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_elementwise_abs` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_canonicalize` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_ceil` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_copysign` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_floor` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_fma` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_fmod` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_max` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_min` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_nearbyint` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_rint` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_round` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_roundeven` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_sqrt` | | | | | | | | | | | | | | |
| | `__builtin_elementwise_trunc` | | | | | | | | | | | | | | |
| | `__builtin_expect` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fabs` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fabsf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fabsf16` | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_floor` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_floorf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_flt_rounds` | | | | | | | | | | | | | | |
| | `__builtin_fma` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fmaf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fmax` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fmaxf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fmaxf16` | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fmin` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fminf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fminf16` | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fmod` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fmodf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_fpclassify` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_frame_address` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_frexp` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_frexpf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_func` | | | | | | | | | | | | | | |
| | `__builtin_huge_val` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_huge_valf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ia32_ldmxcsr` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ia32_pause` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ia32_stmxcsr` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_inff` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_is_aligned` | | | | | | | | | | | | | | |
| | `__builtin_is_constant_evaluated` | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_isfinite` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_isinf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_isnan` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_isnormal` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_launder` | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ldexp` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_ldexpf` | | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_masked_compress_store` | | | | | | | | | | | | | | |
| | `__builtin_masked_expand_load` | | | | | | | | | | | | | | |
| | `__builtin_masked_gather` | | | | | | | | | | | | | | |
| | `__builtin_masked_load` | | | | | | | | | | | | | | |
| | `__builtin_masked_scatter` | | | | | | | | | | | | | | |
| | `__builtin_masked_store` | | | | | | | | | | | | | | |
| | `__builtin_memcmp` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_memcmp_inline` | | | | | | | | | | | | | | |
| | `__builtin_memcpy` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_memcpy_inline` | | | | | | | | | | | | | | |
| | `__builtin_memmove` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_memset` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_memset_inline` | | | | | | | | | | | | | | |
| | `__builtin_mul_overflow` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_nanf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_nans` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_nansf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_nansl` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_nearbyint` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_nearbyintf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_nondeterministic_value` | | | | | | | | | | | | | | |
| | `__builtin_nontemporal_store` | | | | | | | | | | | | | | |
| | `__builtin_offsetof` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_popcount` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_popcountg` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_popcountl` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_popcountll` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_prefetch` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_readcyclecounter` | | | | | | | | | | | | | | |
| | `__builtin_readsteadycounter` | | | | | | | | | | | | | | |
| | `__builtin_reduce_add` | | | | | | | | | | | | | | |
| | `__builtin_reduce_and` | | | | | | | | | | | | | | |
| | `__builtin_reduce_max` | | | | | | | | | | | | | | |
| | `__builtin_reduce_min` | | | | | | | | | | | | | | |
| | `__builtin_reduce_mul` | | | | | | | | | | | | | | |
| | `__builtin_reduce_or` | | | | | | | | | | | | | | |
| | `__builtin_reduce_xor` | | | | | | | | | | | | | | |
| | `__builtin_remainder` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_remainderf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_return_address` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_rint` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_rintf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_round` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_roundeven` | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_roundevenf` | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_roundf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_sadd_overflow` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_shufflevector` | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_signbit` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_snprintf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_sqrt` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_sqrtf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_strlen` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_subc` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_subcb` | | | | | | | | | | | | | | |
| | `__builtin_subcl` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_subcll` | | | | | | | | | | | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_subcs` | | | | | | | | | | | | | | |
| | `__builtin_sub_overflow` | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_trap` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_trunc` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_truncf` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_unreachable` | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |
| | `__builtin_vectorelements` | | | | | | | | | | | | | | |
| | `__has_builtin` | | | | | | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | {{ check }} | |