@cpp-linter/clang-tidy-darwin-arm64 18.1.5 → 20.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/clang-tidy +2 -2
- package/lib/clang/{18 → 20}/include/__clang_cuda_device_functions.h +14 -0
- package/lib/clang/{18 → 20}/include/__clang_cuda_intrinsics.h +1 -3
- package/lib/clang/{18 → 20}/include/__clang_cuda_math.h +5 -0
- package/lib/clang/{18 → 20}/include/__clang_hip_cmath.h +6 -1
- package/lib/clang/{18 → 20}/include/__clang_hip_math.h +5 -0
- package/lib/clang/20/include/__stdarg_header_macro.h +12 -0
- package/lib/clang/20/include/__stddef_header_macro.h +12 -0
- package/lib/clang/{18 → 20}/include/adcintrin.h +5 -0
- package/lib/clang/{18 → 20}/include/adxintrin.h +5 -0
- package/lib/clang/{18 → 20}/include/altivec.h +8 -8
- package/lib/clang/20/include/amdgpuintrin.h +194 -0
- package/lib/clang/20/include/amxavx512intrin.h +382 -0
- package/lib/clang/20/include/amxbf16transposeintrin.h +94 -0
- package/lib/clang/20/include/amxcomplextransposeintrin.h +303 -0
- package/lib/clang/{18 → 20}/include/amxfp16intrin.h +35 -0
- package/lib/clang/20/include/amxfp16transposeintrin.h +94 -0
- package/lib/clang/20/include/amxfp8intrin.h +230 -0
- package/lib/clang/{18 → 20}/include/amxintrin.h +5 -35
- package/lib/clang/20/include/amxmovrsintrin.h +48 -0
- package/lib/clang/20/include/amxmovrstransposeintrin.h +200 -0
- package/lib/clang/20/include/amxtf32intrin.h +108 -0
- package/lib/clang/20/include/amxtf32transposeintrin.h +105 -0
- package/lib/clang/20/include/amxtransposeintrin.h +248 -0
- package/lib/clang/{18 → 20}/include/arm_acle.h +49 -26
- package/lib/clang/{18 → 20}/include/arm_fp16.h +1 -1
- package/lib/clang/{18 → 20}/include/arm_neon.h +45631 -43745
- package/lib/clang/{18 → 20}/include/arm_sme.h +641 -6
- package/lib/clang/{18 → 20}/include/arm_sve.h +28311 -27738
- package/lib/clang/{18 → 20}/include/arm_vector_types.h +92 -5
- package/lib/clang/20/include/avx10_2_512bf16intrin.h +561 -0
- package/lib/clang/20/include/avx10_2_512convertintrin.h +320 -0
- package/lib/clang/20/include/avx10_2_512minmaxintrin.h +127 -0
- package/lib/clang/20/include/avx10_2_512niintrin.h +314 -0
- package/lib/clang/20/include/avx10_2_512satcvtdsintrin.h +303 -0
- package/lib/clang/20/include/avx10_2_512satcvtintrin.h +301 -0
- package/lib/clang/20/include/avx10_2bf16intrin.h +1085 -0
- package/lib/clang/20/include/avx10_2convertintrin.h +589 -0
- package/lib/clang/20/include/avx10_2copyintrin.h +66 -0
- package/lib/clang/20/include/avx10_2minmaxintrin.h +277 -0
- package/lib/clang/20/include/avx10_2niintrin.h +2075 -0
- package/lib/clang/20/include/avx10_2satcvtdsintrin.h +496 -0
- package/lib/clang/20/include/avx10_2satcvtintrin.h +444 -0
- package/lib/clang/{18 → 20}/include/avx2intrin.h +9 -0
- package/lib/clang/{18 → 20}/include/avx512bitalgintrin.h +2 -2
- package/lib/clang/{18 → 20}/include/avx512fintrin.h +22 -14
- package/lib/clang/{18 → 20}/include/avx512fp16intrin.h +38 -38
- package/lib/clang/{18 → 20}/include/avx512vlbitalgintrin.h +4 -4
- package/lib/clang/{18 → 20}/include/avx512vpopcntdqintrin.h +12 -4
- package/lib/clang/{18 → 20}/include/avx512vpopcntdqvlintrin.h +16 -8
- package/lib/clang/{18 → 20}/include/avxintrin.h +88 -60
- package/lib/clang/{18 → 20}/include/avxvnniint16intrin.h +36 -77
- package/lib/clang/{18 → 20}/include/avxvnniint8intrin.h +36 -77
- package/lib/clang/{18 → 20}/include/bmi2intrin.h +15 -17
- package/lib/clang/{18 → 20}/include/bmiintrin.h +33 -41
- package/lib/clang/{18 → 20}/include/builtins.h +3 -0
- package/lib/clang/{18 → 20}/include/cmpccxaddintrin.h +1 -1
- package/lib/clang/{18 → 20}/include/cpuid.h +35 -14
- package/lib/clang/{18 → 20}/include/cuda_wrappers/algorithm +1 -1
- package/lib/clang/{18 → 20}/include/cuda_wrappers/cmath +4 -0
- package/lib/clang/{18 → 20}/include/cuda_wrappers/new +2 -0
- package/lib/clang/{18 → 20}/include/emmintrin.h +442 -277
- package/lib/clang/{18 → 20}/include/float.h +28 -0
- package/lib/clang/{18 → 20}/include/fmaintrin.h +32 -16
- package/lib/clang/{18 → 20}/include/gfniintrin.h +32 -10
- package/lib/clang/20/include/gpuintrin.h +224 -0
- package/lib/clang/{18 → 20}/include/hexagon_types.h +8 -4
- package/lib/clang/{18 → 20}/include/hlsl/hlsl_basic_types.h +57 -4
- package/lib/clang/20/include/hlsl/hlsl_detail.h +84 -0
- package/lib/clang/20/include/hlsl/hlsl_intrinsics.h +2814 -0
- package/lib/clang/{18 → 20}/include/hlsl.h +11 -0
- package/lib/clang/{18 → 20}/include/hvx_hexagon_protos.h +427 -0
- package/lib/clang/{18 → 20}/include/ia32intrin.h +36 -36
- package/lib/clang/{18 → 20}/include/immintrin.h +171 -161
- package/lib/clang/{18 → 20}/include/intrin.h +62 -228
- package/lib/clang/20/include/intrin0.h +256 -0
- package/lib/clang/{18 → 20}/include/inttypes.h +4 -0
- package/lib/clang/{18 → 20}/include/iso646.h +4 -0
- package/lib/clang/{18 → 20}/include/keylockerintrin.h +5 -8
- package/lib/clang/{18 → 20}/include/larchintrin.h +22 -8
- package/lib/clang/{18 → 20}/include/lasxintrin.h +27 -25
- package/lib/clang/{18 → 20}/include/limits.h +12 -4
- package/lib/clang/{18 → 20}/include/llvm_libc_wrappers/assert.h +1 -1
- package/lib/clang/{18 → 20}/include/llvm_libc_wrappers/ctype.h +38 -0
- package/lib/clang/{18 → 20}/include/llvm_libc_wrappers/stdlib.h +8 -0
- package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
- package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
- package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
- package/lib/clang/{18 → 20}/include/lsxintrin.h +27 -25
- package/lib/clang/{18 → 20}/include/lzcntintrin.h +10 -7
- package/lib/clang/20/include/mm3dnow.h +22 -0
- package/lib/clang/{18 → 20}/include/mmintrin.h +285 -239
- package/lib/clang/{18 → 20}/include/module.modulemap +16 -5
- package/lib/clang/20/include/movrs_avx10_2_512intrin.h +98 -0
- package/lib/clang/20/include/movrs_avx10_2intrin.h +174 -0
- package/lib/clang/20/include/movrsintrin.h +59 -0
- package/lib/clang/20/include/nvptxintrin.h +202 -0
- package/lib/clang/{18 → 20}/include/opencl-c-base.h +8 -0
- package/lib/clang/{18 → 20}/include/opencl-c.h +15 -0
- package/lib/clang/{18 → 20}/include/openmp_wrappers/__clang_openmp_device_functions.h +4 -5
- package/lib/clang/{18 → 20}/include/openmp_wrappers/complex_cmath.h +7 -2
- package/lib/clang/{18 → 20}/include/pmmintrin.h +16 -3
- package/lib/clang/{18 → 20}/include/popcntintrin.h +7 -7
- package/lib/clang/{18 → 20}/include/prfchwintrin.h +10 -8
- package/lib/clang/20/include/ptrauth.h +336 -0
- package/lib/clang/20/include/riscv_corev_alu.h +128 -0
- package/lib/clang/{18 → 20}/include/riscv_vector.h +0 -5
- package/lib/clang/20/include/sifive_vector.h +118 -0
- package/lib/clang/20/include/sm4evexintrin.h +32 -0
- package/lib/clang/{18 → 20}/include/smmintrin.h +18 -12
- package/lib/clang/{18 → 20}/include/stdarg.h +15 -19
- package/lib/clang/{18 → 20}/include/stdatomic.h +11 -1
- package/lib/clang/{18 → 20}/include/stdbool.h +5 -0
- package/lib/clang/{18 → 20}/include/stddef.h +38 -22
- package/lib/clang/{18 → 20}/include/stdint.h +5 -0
- package/lib/clang/{18 → 20}/include/stdnoreturn.h +6 -0
- package/lib/clang/{18 → 20}/include/tbmintrin.h +25 -37
- package/lib/clang/{18 → 20}/include/tmmintrin.h +84 -54
- package/lib/clang/{18 → 20}/include/varargs.h +5 -1
- package/lib/clang/{18 → 20}/include/vecintrin.h +1778 -60
- package/lib/clang/{18 → 20}/include/wasm_simd128.h +167 -21
- package/lib/clang/{18 → 20}/include/x86gprintrin.h +7 -14
- package/lib/clang/20/include/x86intrin.h +53 -0
- package/lib/clang/{18 → 20}/include/xmmintrin.h +455 -276
- package/lib/clang/20/include/yvals_core.h +25 -0
- package/lib/clang/20/include/zos_wrappers/builtins.h +18 -0
- package/package.json +6 -6
- package/lib/clang/18/include/avx512erintrin.h +0 -271
- package/lib/clang/18/include/avx512pfintrin.h +0 -92
- package/lib/clang/18/include/hlsl/hlsl_intrinsics.h +0 -624
- package/lib/clang/18/include/mm3dnow.h +0 -157
- package/lib/clang/18/include/sifive_vector.h +0 -16
- package/lib/clang/18/include/x86intrin.h +0 -67
- /package/lib/clang/{18 → 20}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_cuda_complex_builtins.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_cuda_libdevice_declares.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_cuda_math_forward_declares.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_cuda_runtime_wrapper.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_cuda_texture_intrinsics.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_hip_libdevice_declares.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_hip_runtime_wrapper.h +0 -0
- /package/lib/clang/{18 → 20}/include/__clang_hip_stdlib.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stdarg___gnuc_va_list.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stdarg___va_copy.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stdarg_va_arg.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stdarg_va_copy.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stdarg_va_list.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_null.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_nullptr_t.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_offsetof.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_ptrdiff_t.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_rsize_t.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_size_t.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_unreachable.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_wchar_t.h +0 -0
- /package/lib/clang/{18 → 20}/include/__stddef_wint_t.h +0 -0
- /package/lib/clang/{18 → 20}/include/__wmmintrin_aes.h +0 -0
- /package/lib/clang/{18 → 20}/include/__wmmintrin_pclmul.h +0 -0
- /package/lib/clang/{18 → 20}/include/ammintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/amxcomplexintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/arm64intr.h +0 -0
- /package/lib/clang/{18 → 20}/include/arm_bf16.h +0 -0
- /package/lib/clang/{18 → 20}/include/arm_cde.h +0 -0
- /package/lib/clang/{18 → 20}/include/arm_cmse.h +0 -0
- /package/lib/clang/{18 → 20}/include/arm_mve.h +0 -0
- /package/lib/clang/{18 → 20}/include/arm_neon_sve_bridge.h +0 -0
- /package/lib/clang/{18 → 20}/include/armintr.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512bf16intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512bwintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512cdintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512dqintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512ifmaintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512ifmavlintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vbmi2intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vbmiintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vbmivlintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlbf16intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlbwintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlcdintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vldqintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlfp16intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlvbmi2intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlvnniintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vlvp2intersectintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vnniintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avx512vp2intersectintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avxifmaintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avxneconvertintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/avxvnniintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/cet.h +0 -0
- /package/lib/clang/{18 → 20}/include/cetintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/clflushoptintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/clwbintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/clzerointrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/crc32intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/cuda_wrappers/bits/basic_string.h +0 -0
- /package/lib/clang/{18 → 20}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
- /package/lib/clang/{18 → 20}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
- /package/lib/clang/{18 → 20}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{18 → 20}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/f16cintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/fma4intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{18 → 20}/include/hexagon_protos.h +0 -0
- /package/lib/clang/{18 → 20}/include/hresetintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/htmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/llvm_libc_wrappers/inttypes.h +0 -0
- /package/lib/clang/{18 → 20}/include/llvm_libc_wrappers/stdio.h +0 -0
- /package/lib/clang/{18 → 20}/include/llvm_libc_wrappers/string.h +0 -0
- /package/lib/clang/{18 → 20}/include/llvm_libc_wrappers/time.h +0 -0
- /package/lib/clang/{18 → 20}/include/lwpintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/mm_malloc.h +0 -0
- /package/lib/clang/{18 → 20}/include/movdirintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/msa.h +0 -0
- /package/lib/clang/{18 → 20}/include/mwaitxintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/nmmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{18 → 20}/include/openmp_wrappers/complex +0 -0
- /package/lib/clang/{18 → 20}/include/openmp_wrappers/complex.h +0 -0
- /package/lib/clang/{18 → 20}/include/openmp_wrappers/math.h +0 -0
- /package/lib/clang/{18 → 20}/include/openmp_wrappers/new +0 -0
- /package/lib/clang/{18 → 20}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/pkuintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/bmi2intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/bmiintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/emmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/immintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/mm_malloc.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/mmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/nmmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/pmmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/smmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/tmmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/x86gprintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/x86intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ppc_wrappers/xmmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/prfchiintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/raointintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/rdpruintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/rdseedintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/riscv_bitmanip.h +0 -0
- /package/lib/clang/{18 → 20}/include/riscv_crypto.h +0 -0
- /package/lib/clang/{18 → 20}/include/riscv_ntlh.h +0 -0
- /package/lib/clang/{18 → 20}/include/rtmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/s390intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/serializeintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/sgxintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/sha512intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/shaintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/sm3intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/sm4intrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/stdalign.h +0 -0
- /package/lib/clang/{18 → 20}/include/stdckdint.h +0 -0
- /package/lib/clang/{18 → 20}/include/tgmath.h +0 -0
- /package/lib/clang/{18 → 20}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/uintrintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/unwind.h +0 -0
- /package/lib/clang/{18 → 20}/include/usermsrintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/vadefs.h +0 -0
- /package/lib/clang/{18 → 20}/include/vaesintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/velintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/velintrin_approx.h +0 -0
- /package/lib/clang/{18 → 20}/include/velintrin_gen.h +0 -0
- /package/lib/clang/{18 → 20}/include/vpclmulqdqintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/wmmintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/xopintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/xsavecintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{18 → 20}/include/xtestintrin.h +0 -0
|
@@ -17,7 +17,12 @@
|
|
|
17
17
|
/* Allow using the tzcnt intrinsics even for non-BMI targets. Since the TZCNT
|
|
18
18
|
instruction behaves as BSF on non-BMI targets, there is code that expects
|
|
19
19
|
to use it as a potentially faster version of BSF. */
|
|
20
|
+
#if defined(__cplusplus) && (__cplusplus >= 201103L)
|
|
21
|
+
#define __RELAXED_FN_ATTRS \
|
|
22
|
+
__attribute__((__always_inline__, __nodebug__)) constexpr
|
|
23
|
+
#else
|
|
20
24
|
#define __RELAXED_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
|
|
25
|
+
#endif
|
|
21
26
|
|
|
22
27
|
/// Counts the number of trailing zero bits in the operand.
|
|
23
28
|
///
|
|
@@ -31,8 +36,7 @@
|
|
|
31
36
|
/// bits in the operand.
|
|
32
37
|
/// \see _tzcnt_u16
|
|
33
38
|
static __inline__ unsigned short __RELAXED_FN_ATTRS
|
|
34
|
-
__tzcnt_u16(unsigned short __X)
|
|
35
|
-
{
|
|
39
|
+
__tzcnt_u16(unsigned short __X) {
|
|
36
40
|
return __builtin_ia32_tzcnt_u16(__X);
|
|
37
41
|
}
|
|
38
42
|
|
|
@@ -65,8 +69,7 @@ __tzcnt_u16(unsigned short __X)
|
|
|
65
69
|
/// bits in the operand.
|
|
66
70
|
/// \see { _mm_tzcnt_32 _tzcnt_u32 }
|
|
67
71
|
static __inline__ unsigned int __RELAXED_FN_ATTRS
|
|
68
|
-
__tzcnt_u32(unsigned int __X)
|
|
69
|
-
{
|
|
72
|
+
__tzcnt_u32(unsigned int __X) {
|
|
70
73
|
return __builtin_ia32_tzcnt_u32(__X);
|
|
71
74
|
}
|
|
72
75
|
|
|
@@ -82,8 +85,7 @@ __tzcnt_u32(unsigned int __X)
|
|
|
82
85
|
/// the operand.
|
|
83
86
|
/// \see { __tzcnt_u32 _tzcnt_u32 }
|
|
84
87
|
static __inline__ int __RELAXED_FN_ATTRS
|
|
85
|
-
_mm_tzcnt_32(unsigned int __X)
|
|
86
|
-
{
|
|
88
|
+
_mm_tzcnt_32(unsigned int __X) {
|
|
87
89
|
return (int)__builtin_ia32_tzcnt_u32(__X);
|
|
88
90
|
}
|
|
89
91
|
|
|
@@ -118,8 +120,7 @@ _mm_tzcnt_32(unsigned int __X)
|
|
|
118
120
|
/// bits in the operand.
|
|
119
121
|
/// \see { _mm_tzcnt_64 _tzcnt_u64 }
|
|
120
122
|
static __inline__ unsigned long long __RELAXED_FN_ATTRS
|
|
121
|
-
__tzcnt_u64(unsigned long long __X)
|
|
122
|
-
{
|
|
123
|
+
__tzcnt_u64(unsigned long long __X) {
|
|
123
124
|
return __builtin_ia32_tzcnt_u64(__X);
|
|
124
125
|
}
|
|
125
126
|
|
|
@@ -135,8 +136,7 @@ __tzcnt_u64(unsigned long long __X)
|
|
|
135
136
|
/// the operand.
|
|
136
137
|
/// \see { __tzcnt_u64 _tzcnt_u64 }
|
|
137
138
|
static __inline__ long long __RELAXED_FN_ATTRS
|
|
138
|
-
_mm_tzcnt_64(unsigned long long __X)
|
|
139
|
-
{
|
|
139
|
+
_mm_tzcnt_64(unsigned long long __X) {
|
|
140
140
|
return (long long)__builtin_ia32_tzcnt_u64(__X);
|
|
141
141
|
}
|
|
142
142
|
|
|
@@ -161,11 +161,16 @@ _mm_tzcnt_64(unsigned long long __X)
|
|
|
161
161
|
|
|
162
162
|
#undef __RELAXED_FN_ATTRS
|
|
163
163
|
|
|
164
|
-
#if !
|
|
165
|
-
defined(__BMI__)
|
|
164
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__BMI__)
|
|
166
165
|
|
|
167
166
|
/* Define the default attributes for the functions in this file. */
|
|
168
|
-
#
|
|
167
|
+
#if defined(__cplusplus) && (__cplusplus >= 201103L)
|
|
168
|
+
#define __DEFAULT_FN_ATTRS \
|
|
169
|
+
__attribute__((__always_inline__, __nodebug__, __target__("bmi"))) constexpr
|
|
170
|
+
#else
|
|
171
|
+
#define __DEFAULT_FN_ATTRS \
|
|
172
|
+
__attribute__((__always_inline__, __nodebug__, __target__("bmi")))
|
|
173
|
+
#endif
|
|
169
174
|
|
|
170
175
|
/// Performs a bitwise AND of the second operand with the one's
|
|
171
176
|
/// complement of the first operand.
|
|
@@ -182,8 +187,7 @@ _mm_tzcnt_64(unsigned long long __X)
|
|
|
182
187
|
/// operand with the one's complement of the first operand.
|
|
183
188
|
/// \see _andn_u32
|
|
184
189
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
185
|
-
__andn_u32(unsigned int __X, unsigned int __Y)
|
|
186
|
-
{
|
|
190
|
+
__andn_u32(unsigned int __X, unsigned int __Y) {
|
|
187
191
|
return ~__X & __Y;
|
|
188
192
|
}
|
|
189
193
|
|
|
@@ -225,8 +229,7 @@ __andn_u32(unsigned int __X, unsigned int __Y)
|
|
|
225
229
|
/// extracted bits.
|
|
226
230
|
/// \see _bextr_u32
|
|
227
231
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
228
|
-
__bextr_u32(unsigned int __X, unsigned int __Y)
|
|
229
|
-
{
|
|
232
|
+
__bextr_u32(unsigned int __X, unsigned int __Y) {
|
|
230
233
|
return __builtin_ia32_bextr_u32(__X, __Y);
|
|
231
234
|
}
|
|
232
235
|
|
|
@@ -250,9 +253,8 @@ __bextr_u32(unsigned int __X, unsigned int __Y)
|
|
|
250
253
|
/// extracted bits.
|
|
251
254
|
/// \see __bextr_u32
|
|
252
255
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
253
|
-
_bextr_u32(unsigned int __X, unsigned int __Y, unsigned int __Z)
|
|
254
|
-
|
|
255
|
-
return __builtin_ia32_bextr_u32 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
|
|
256
|
+
_bextr_u32(unsigned int __X, unsigned int __Y, unsigned int __Z) {
|
|
257
|
+
return __builtin_ia32_bextr_u32(__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
|
|
256
258
|
}
|
|
257
259
|
|
|
258
260
|
/* Intel-specified, single-leading-underscore version of BEXTR2 */
|
|
@@ -290,8 +292,7 @@ _bextr2_u32(unsigned int __X, unsigned int __Y) {
|
|
|
290
292
|
/// the source operand.
|
|
291
293
|
/// \see _blsi_u32
|
|
292
294
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
293
|
-
__blsi_u32(unsigned int __X)
|
|
294
|
-
{
|
|
295
|
+
__blsi_u32(unsigned int __X) {
|
|
295
296
|
return __X & -__X;
|
|
296
297
|
}
|
|
297
298
|
|
|
@@ -326,8 +327,7 @@ __blsi_u32(unsigned int __X)
|
|
|
326
327
|
/// \returns An unsigned integer containing the newly created mask.
|
|
327
328
|
/// \see _blsmsk_u32
|
|
328
329
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
329
|
-
__blsmsk_u32(unsigned int __X)
|
|
330
|
-
{
|
|
330
|
+
__blsmsk_u32(unsigned int __X) {
|
|
331
331
|
return __X ^ (__X - 1);
|
|
332
332
|
}
|
|
333
333
|
|
|
@@ -362,8 +362,7 @@ __blsmsk_u32(unsigned int __X)
|
|
|
362
362
|
/// operand.
|
|
363
363
|
/// \see _blsr_u32
|
|
364
364
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
365
|
-
__blsr_u32(unsigned int __X)
|
|
366
|
-
{
|
|
365
|
+
__blsr_u32(unsigned int __X) {
|
|
367
366
|
return __X & (__X - 1);
|
|
368
367
|
}
|
|
369
368
|
|
|
@@ -402,8 +401,7 @@ __blsr_u32(unsigned int __X)
|
|
|
402
401
|
/// operand with the one's complement of the first operand.
|
|
403
402
|
/// \see _andn_u64
|
|
404
403
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS
|
|
405
|
-
__andn_u64 (unsigned long long __X, unsigned long long __Y)
|
|
406
|
-
{
|
|
404
|
+
__andn_u64 (unsigned long long __X, unsigned long long __Y) {
|
|
407
405
|
return ~__X & __Y;
|
|
408
406
|
}
|
|
409
407
|
|
|
@@ -446,8 +444,7 @@ __andn_u64 (unsigned long long __X, unsigned long long __Y)
|
|
|
446
444
|
/// extracted bits.
|
|
447
445
|
/// \see _bextr_u64
|
|
448
446
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS
|
|
449
|
-
__bextr_u64(unsigned long long __X, unsigned long long __Y)
|
|
450
|
-
{
|
|
447
|
+
__bextr_u64(unsigned long long __X, unsigned long long __Y) {
|
|
451
448
|
return __builtin_ia32_bextr_u64(__X, __Y);
|
|
452
449
|
}
|
|
453
450
|
|
|
@@ -471,9 +468,8 @@ __bextr_u64(unsigned long long __X, unsigned long long __Y)
|
|
|
471
468
|
/// extracted bits.
|
|
472
469
|
/// \see __bextr_u64
|
|
473
470
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS
|
|
474
|
-
_bextr_u64(unsigned long long __X, unsigned int __Y, unsigned int __Z)
|
|
475
|
-
|
|
476
|
-
return __builtin_ia32_bextr_u64 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
|
|
471
|
+
_bextr_u64(unsigned long long __X, unsigned int __Y, unsigned int __Z) {
|
|
472
|
+
return __builtin_ia32_bextr_u64(__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
|
|
477
473
|
}
|
|
478
474
|
|
|
479
475
|
/* Intel-specified, single-leading-underscore version of BEXTR2 */
|
|
@@ -511,8 +507,7 @@ _bextr2_u64(unsigned long long __X, unsigned long long __Y) {
|
|
|
511
507
|
/// bits from the source operand.
|
|
512
508
|
/// \see _blsi_u64
|
|
513
509
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS
|
|
514
|
-
__blsi_u64(unsigned long long __X)
|
|
515
|
-
{
|
|
510
|
+
__blsi_u64(unsigned long long __X) {
|
|
516
511
|
return __X & -__X;
|
|
517
512
|
}
|
|
518
513
|
|
|
@@ -547,8 +542,7 @@ __blsi_u64(unsigned long long __X)
|
|
|
547
542
|
/// \returns An unsigned 64-bit integer containing the newly created mask.
|
|
548
543
|
/// \see _blsmsk_u64
|
|
549
544
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS
|
|
550
|
-
__blsmsk_u64(unsigned long long __X)
|
|
551
|
-
{
|
|
545
|
+
__blsmsk_u64(unsigned long long __X) {
|
|
552
546
|
return __X ^ (__X - 1);
|
|
553
547
|
}
|
|
554
548
|
|
|
@@ -583,8 +577,7 @@ __blsmsk_u64(unsigned long long __X)
|
|
|
583
577
|
/// source operand.
|
|
584
578
|
/// \see _blsr_u64
|
|
585
579
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS
|
|
586
|
-
__blsr_u64(unsigned long long __X)
|
|
587
|
-
{
|
|
580
|
+
__blsr_u64(unsigned long long __X) {
|
|
588
581
|
return __X & (__X - 1);
|
|
589
582
|
}
|
|
590
583
|
|
|
@@ -610,7 +603,6 @@ __blsr_u64(unsigned long long __X)
|
|
|
610
603
|
|
|
611
604
|
#undef __DEFAULT_FN_ATTRS
|
|
612
605
|
|
|
613
|
-
#endif /* !
|
|
614
|
-
|| defined(__BMI__) */
|
|
606
|
+
#endif /* !defined(__SCE__) || __has_feature(modules) || defined(__BMI__) */
|
|
615
607
|
|
|
616
608
|
#endif /* __BMIINTRIN_H */
|
|
@@ -63,7 +63,7 @@ typedef enum {
|
|
|
63
63
|
(int)(__D))))
|
|
64
64
|
|
|
65
65
|
#define _cmpccxadd_epi64(__A, __B, __C, __D) \
|
|
66
|
-
((long long)(__builtin_ia32_cmpccxadd64((
|
|
66
|
+
((long long)(__builtin_ia32_cmpccxadd64((__A), (long long)(__B), \
|
|
67
67
|
(long long)(__C), (int)(__D))))
|
|
68
68
|
|
|
69
69
|
#endif // __x86_64__
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
#ifndef __CPUID_H
|
|
11
11
|
#define __CPUID_H
|
|
12
12
|
|
|
13
|
-
#if !(__x86_64__
|
|
13
|
+
#if !defined(__x86_64__) && !defined(__i386__)
|
|
14
14
|
#error this header is for x86 only
|
|
15
15
|
#endif
|
|
16
16
|
|
|
@@ -187,19 +187,23 @@
|
|
|
187
187
|
#define bit_ENQCMD 0x20000000
|
|
188
188
|
|
|
189
189
|
/* Features in %edx for leaf 7 sub-leaf 0 */
|
|
190
|
-
#define bit_AVX5124VNNIW
|
|
191
|
-
#define bit_AVX5124FMAPS
|
|
192
|
-
#define bit_UINTR
|
|
193
|
-
#define
|
|
194
|
-
#define
|
|
195
|
-
#define
|
|
196
|
-
#define
|
|
197
|
-
#define
|
|
198
|
-
#define
|
|
199
|
-
#define
|
|
200
|
-
#define
|
|
190
|
+
#define bit_AVX5124VNNIW 0x00000004
|
|
191
|
+
#define bit_AVX5124FMAPS 0x00000008
|
|
192
|
+
#define bit_UINTR 0x00000020
|
|
193
|
+
#define bit_AVX512VP2INTERSECT 0x00000100
|
|
194
|
+
#define bit_SERIALIZE 0x00004000
|
|
195
|
+
#define bit_TSXLDTRK 0x00010000
|
|
196
|
+
#define bit_PCONFIG 0x00040000
|
|
197
|
+
#define bit_IBT 0x00100000
|
|
198
|
+
#define bit_AMXBF16 0x00400000
|
|
199
|
+
#define bit_AVX512FP16 0x00800000
|
|
200
|
+
#define bit_AMXTILE 0x01000000
|
|
201
|
+
#define bit_AMXINT8 0x02000000
|
|
201
202
|
|
|
202
203
|
/* Features in %eax for leaf 7 sub-leaf 1 */
|
|
204
|
+
#define bit_SHA512 0x00000001
|
|
205
|
+
#define bit_SM3 0x00000002
|
|
206
|
+
#define bit_SM4 0x00000004
|
|
203
207
|
#define bit_RAOINT 0x00000008
|
|
204
208
|
#define bit_AVXVNNI 0x00000010
|
|
205
209
|
#define bit_AVX512BF16 0x00000020
|
|
@@ -211,7 +215,12 @@
|
|
|
211
215
|
/* Features in %edx for leaf 7 sub-leaf 1 */
|
|
212
216
|
#define bit_AVXVNNIINT8 0x00000010
|
|
213
217
|
#define bit_AVXNECONVERT 0x00000020
|
|
218
|
+
#define bit_AMXCOMPLEX 0x00000100
|
|
219
|
+
#define bit_AVXVNNIINT16 0x00000400
|
|
214
220
|
#define bit_PREFETCHI 0x00004000
|
|
221
|
+
#define bit_USERMSR 0x00008000
|
|
222
|
+
#define bit_AVX10 0x00080000
|
|
223
|
+
#define bit_APXF 0x00200000
|
|
215
224
|
|
|
216
225
|
/* Features in %eax for leaf 13 sub-leaf 1 */
|
|
217
226
|
#define bit_XSAVEOPT 0x00000001
|
|
@@ -244,8 +253,11 @@
|
|
|
244
253
|
#define bit_RDPRU 0x00000010
|
|
245
254
|
#define bit_WBNOINVD 0x00000200
|
|
246
255
|
|
|
256
|
+
/* Features in %ebx for leaf 0x24 */
|
|
257
|
+
#define bit_AVX10_256 0x00020000
|
|
258
|
+
#define bit_AVX10_512 0x00040000
|
|
247
259
|
|
|
248
|
-
#
|
|
260
|
+
#ifdef __i386__
|
|
249
261
|
#define __cpuid(__leaf, __eax, __ebx, __ecx, __edx) \
|
|
250
262
|
__asm("cpuid" : "=a"(__eax), "=b" (__ebx), "=c"(__ecx), "=d"(__edx) \
|
|
251
263
|
: "0"(__leaf))
|
|
@@ -274,7 +286,7 @@ static __inline unsigned int __get_cpuid_max (unsigned int __leaf,
|
|
|
274
286
|
unsigned int *__sig)
|
|
275
287
|
{
|
|
276
288
|
unsigned int __eax, __ebx, __ecx, __edx;
|
|
277
|
-
#
|
|
289
|
+
#ifdef __i386__
|
|
278
290
|
int __cpuid_supported;
|
|
279
291
|
|
|
280
292
|
__asm(" pushfl\n"
|
|
@@ -328,4 +340,13 @@ static __inline int __get_cpuid_count (unsigned int __leaf,
|
|
|
328
340
|
return 1;
|
|
329
341
|
}
|
|
330
342
|
|
|
343
|
+
// In some configurations, __cpuidex is defined as a builtin (primarily
|
|
344
|
+
// -fms-extensions) which will conflict with the __cpuidex definition below.
|
|
345
|
+
#if !(__has_builtin(__cpuidex))
|
|
346
|
+
static __inline void __cpuidex(int __cpu_info[4], int __leaf, int __subleaf) {
|
|
347
|
+
__cpuid_count(__leaf, __subleaf, __cpu_info[0], __cpu_info[1], __cpu_info[2],
|
|
348
|
+
__cpu_info[3]);
|
|
349
|
+
}
|
|
350
|
+
#endif
|
|
351
|
+
|
|
331
352
|
#endif /* __CPUID_H */
|
|
@@ -99,7 +99,7 @@ template <class __T>
|
|
|
99
99
|
__attribute__((enable_if(true, "")))
|
|
100
100
|
inline _CPP14_CONSTEXPR __host__ __device__ const __T &
|
|
101
101
|
min(const __T &__a, const __T &__b) {
|
|
102
|
-
return
|
|
102
|
+
return __b < __a ? __b : __a;
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
#pragma pop_macro("_CPP14_CONSTEXPR")
|
|
@@ -24,7 +24,11 @@
|
|
|
24
24
|
#ifndef __CLANG_CUDA_WRAPPERS_CMATH
|
|
25
25
|
#define __CLANG_CUDA_WRAPPERS_CMATH
|
|
26
26
|
|
|
27
|
+
#if __has_include_next(<cmath>)
|
|
27
28
|
#include_next <cmath>
|
|
29
|
+
#else
|
|
30
|
+
#error "Could not find standard C++ header 'cmath'. Add -v to your compilation command to check the include paths being searched. You may need to install the appropriate standard C++ library package corresponding to the search path."
|
|
31
|
+
#endif
|
|
28
32
|
|
|
29
33
|
#if defined(_LIBCPP_STD_VER)
|
|
30
34
|
|
|
@@ -91,12 +91,14 @@ __device__ inline void operator delete[](void *ptr,
|
|
|
91
91
|
#endif
|
|
92
92
|
|
|
93
93
|
// Device overrides for placement new and delete.
|
|
94
|
+
#if !(_LIBCPP_STD_VER >= 26 || __cpp_lib_constexpr_new >= 202406L)
|
|
94
95
|
__device__ inline void *operator new(__SIZE_TYPE__, void *__ptr) CUDA_NOEXCEPT {
|
|
95
96
|
return __ptr;
|
|
96
97
|
}
|
|
97
98
|
__device__ inline void *operator new[](__SIZE_TYPE__, void *__ptr) CUDA_NOEXCEPT {
|
|
98
99
|
return __ptr;
|
|
99
100
|
}
|
|
101
|
+
#endif
|
|
100
102
|
__device__ inline void operator delete(void *, void *) CUDA_NOEXCEPT {}
|
|
101
103
|
__device__ inline void operator delete[](void *, void *) CUDA_NOEXCEPT {}
|
|
102
104
|
|