@cpp-linter/clang-tidy-darwin-x64 14.0.0 → 17.0.6
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/{14.0.0 → 17}/include/__clang_cuda_intrinsics.h +198 -7
- package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_math.h +1 -1
- package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_texture_intrinsics.h +2 -0
- package/lib/clang/{14.0.0 → 17}/include/__clang_hip_cmath.h +1 -1
- package/lib/clang/{14.0.0 → 17}/include/__clang_hip_libdevice_declares.h +37 -30
- package/lib/clang/{14.0.0 → 17}/include/__clang_hip_math.h +66 -84
- package/lib/clang/{14.0.0 → 17}/include/__clang_hip_runtime_wrapper.h +14 -0
- package/lib/clang/17/include/__clang_hip_stdlib.h +43 -0
- package/lib/clang/{14.0.0 → 17}/include/__wmmintrin_pclmul.h +10 -10
- package/lib/clang/17/include/adxintrin.h +227 -0
- package/lib/clang/{14.0.0 → 17}/include/altivec.h +597 -346
- package/lib/clang/17/include/amxcomplexintrin.h +169 -0
- package/lib/clang/17/include/amxfp16intrin.h +58 -0
- package/lib/clang/{14.0.0 → 17}/include/amxintrin.h +32 -2
- package/lib/clang/{14.0.0 → 17}/include/arm_acle.h +86 -81
- package/lib/clang/{14.0.0 → 17}/include/arm_fp16.h +90 -90
- package/lib/clang/{14.0.0 → 17}/include/arm_neon.h +28567 -28574
- package/lib/clang/{14.0.0 → 17}/include/arm_neon_sve_bridge.h +0 -2
- package/lib/clang/17/include/arm_sme_draft_spec_subject_to_change.h +642 -0
- package/lib/clang/{14.0.0 → 17}/include/arm_sve.h +7916 -8009
- package/lib/clang/17/include/avx2intrin.h +5263 -0
- package/lib/clang/{14.0.0 → 17}/include/avx512bf16intrin.h +18 -15
- package/lib/clang/{14.0.0 → 17}/include/avx512bwintrin.h +12 -12
- package/lib/clang/{14.0.0 → 17}/include/avx512fintrin.h +95 -82
- package/lib/clang/{14.0.0 → 17}/include/avx512fp16intrin.h +18 -17
- package/lib/clang/{14.0.0 → 17}/include/avx512ifmavlintrin.h +13 -27
- package/lib/clang/{14.0.0 → 17}/include/avx512vlbf16intrin.h +31 -38
- package/lib/clang/{14.0.0 → 17}/include/avx512vlbwintrin.h +360 -8
- package/lib/clang/{14.0.0 → 17}/include/avx512vlfp16intrin.h +3 -0
- package/lib/clang/{14.0.0 → 17}/include/avx512vlintrin.h +81 -95
- package/lib/clang/{14.0.0 → 17}/include/avx512vlvnniintrin.h +16 -16
- package/lib/clang/17/include/avxifmaintrin.h +177 -0
- package/lib/clang/{14.0.0 → 17}/include/avxintrin.h +97 -39
- package/lib/clang/17/include/avxneconvertintrin.h +484 -0
- package/lib/clang/17/include/avxvnniint16intrin.h +473 -0
- package/lib/clang/17/include/avxvnniint8intrin.h +471 -0
- package/lib/clang/{14.0.0 → 17}/include/avxvnniintrin.h +16 -16
- package/lib/clang/17/include/bmi2intrin.h +255 -0
- package/lib/clang/{14.0.0 → 17}/include/bmiintrin.h +6 -2
- package/lib/clang/{14.0.0 → 17}/include/cetintrin.h +12 -6
- package/lib/clang/{14.0.0 → 17}/include/clflushoptintrin.h +9 -0
- package/lib/clang/{14.0.0 → 17}/include/clzerointrin.h +7 -5
- package/lib/clang/17/include/cmpccxaddintrin.h +70 -0
- package/lib/clang/{14.0.0 → 17}/include/cpuid.h +12 -1
- package/lib/clang/17/include/cuda_wrappers/bits/basic_string.h +9 -0
- package/lib/clang/17/include/cuda_wrappers/bits/basic_string.tcc +9 -0
- package/lib/clang/17/include/cuda_wrappers/bits/shared_ptr_base.h +9 -0
- package/lib/clang/17/include/cuda_wrappers/cmath +90 -0
- package/lib/clang/{14.0.0 → 17}/include/emmintrin.h +559 -769
- package/lib/clang/{14.0.0 → 17}/include/f16cintrin.h +3 -3
- package/lib/clang/{14.0.0 → 17}/include/float.h +17 -10
- package/lib/clang/17/include/fmaintrin.h +780 -0
- package/lib/clang/{14.0.0 → 17}/include/gfniintrin.h +7 -5
- package/lib/clang/17/include/hlsl/hlsl_basic_types.h +67 -0
- package/lib/clang/17/include/hlsl/hlsl_intrinsics.h +480 -0
- package/lib/clang/17/include/hlsl.h +15 -0
- package/lib/clang/{14.0.0 → 17}/include/hresetintrin.h +2 -2
- package/lib/clang/{14.0.0 → 17}/include/ia32intrin.h +11 -11
- package/lib/clang/{14.0.0 → 17}/include/immintrin.h +166 -26
- package/lib/clang/{14.0.0 → 17}/include/intrin.h +12 -21
- package/lib/clang/{14.0.0 → 17}/include/keylockerintrin.h +22 -22
- package/lib/clang/17/include/larchintrin.h +234 -0
- package/lib/clang/{14.0.0 → 17}/include/limits.h +8 -3
- package/lib/clang/17/include/llvm_libc_wrappers/ctype.h +85 -0
- package/lib/clang/17/include/llvm_libc_wrappers/inttypes.h +34 -0
- package/lib/clang/17/include/llvm_libc_wrappers/stdio.h +34 -0
- package/lib/clang/17/include/llvm_libc_wrappers/stdlib.h +42 -0
- package/lib/clang/17/include/llvm_libc_wrappers/string.h +37 -0
- package/lib/clang/{14.0.0 → 17}/include/mm_malloc.h +3 -3
- package/lib/clang/17/include/mwaitxintrin.h +62 -0
- package/lib/clang/{14.0.0 → 17}/include/opencl-c-base.h +32 -0
- package/lib/clang/{14.0.0 → 17}/include/opencl-c.h +6904 -7100
- package/lib/clang/{14.0.0 → 17}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -1
- package/lib/clang/{14.0.0 → 17}/include/openmp_wrappers/new +1 -1
- package/lib/clang/{14.0.0 → 17}/include/pmmintrin.h +13 -7
- package/lib/clang/17/include/ppc_wrappers/bmi2intrin.h +134 -0
- package/lib/clang/17/include/ppc_wrappers/bmiintrin.h +165 -0
- package/lib/clang/17/include/ppc_wrappers/emmintrin.h +2269 -0
- package/lib/clang/17/include/ppc_wrappers/immintrin.h +27 -0
- package/lib/clang/{14.0.0 → 17}/include/ppc_wrappers/mm_malloc.h +12 -17
- package/lib/clang/{14.0.0 → 17}/include/ppc_wrappers/mmintrin.h +389 -387
- package/lib/clang/17/include/ppc_wrappers/pmmintrin.h +145 -0
- package/lib/clang/17/include/ppc_wrappers/smmintrin.h +663 -0
- package/lib/clang/17/include/ppc_wrappers/tmmintrin.h +453 -0
- package/lib/clang/{14.0.0/include/stdnoreturn.h → 17/include/ppc_wrappers/x86gprintrin.h} +7 -6
- package/lib/clang/17/include/ppc_wrappers/x86intrin.h +28 -0
- package/lib/clang/17/include/ppc_wrappers/xmmintrin.h +1827 -0
- package/lib/clang/17/include/prfchiintrin.h +61 -0
- package/lib/clang/17/include/raointintrin.h +203 -0
- package/lib/clang/17/include/rdpruintrin.h +57 -0
- package/lib/clang/17/include/rdseedintrin.h +105 -0
- package/lib/clang/17/include/riscv_ntlh.h +28 -0
- package/lib/clang/17/include/riscv_vector.h +400 -0
- package/lib/clang/{14.0.0 → 17}/include/rtmintrin.h +1 -1
- package/lib/clang/17/include/sha512intrin.h +200 -0
- package/lib/clang/17/include/shaintrin.h +189 -0
- package/lib/clang/17/include/sifive_vector.h +16 -0
- package/lib/clang/17/include/sm3intrin.h +238 -0
- package/lib/clang/17/include/sm4intrin.h +269 -0
- package/lib/clang/{14.0.0 → 17}/include/smmintrin.h +236 -259
- package/lib/clang/{14.0.0 → 17}/include/stdalign.h +5 -0
- package/lib/clang/{14.0.0 → 17}/include/stdarg.h +23 -7
- package/lib/clang/{14.0.0 → 17}/include/stdatomic.h +15 -8
- package/lib/clang/{14.0.0 → 17}/include/stdbool.h +10 -7
- package/lib/clang/{14.0.0 → 17}/include/stddef.h +14 -2
- package/lib/clang/{14.0.0 → 17}/include/stdint.h +158 -40
- package/lib/clang/17/include/stdnoreturn.h +29 -0
- package/lib/clang/{14.0.0 → 17}/include/uintrintrin.h +8 -8
- package/lib/clang/{14.0.0 → 17}/include/unwind.h +10 -6
- package/lib/clang/17/include/velintrin.h +71 -0
- package/lib/clang/17/include/velintrin_approx.h +120 -0
- package/lib/clang/17/include/velintrin_gen.h +1257 -0
- package/lib/clang/{14.0.0 → 17}/include/wasm_simd128.h +134 -14
- package/lib/clang/17/include/x86gprintrin.h +65 -0
- package/lib/clang/{14.0.0 → 17}/include/x86intrin.h +4 -0
- package/lib/clang/{14.0.0 → 17}/include/xmmintrin.h +10 -5
- package/lib/clang/17/include/xsavecintrin.h +84 -0
- package/package.json +6 -6
- package/lib/clang/14.0.0/include/adxintrin.h +0 -72
- package/lib/clang/14.0.0/include/avx2intrin.h +0 -1148
- package/lib/clang/14.0.0/include/bmi2intrin.h +0 -81
- package/lib/clang/14.0.0/include/fmaintrin.h +0 -216
- package/lib/clang/14.0.0/include/mwaitxintrin.h +0 -33
- package/lib/clang/14.0.0/include/ppc_wrappers/emmintrin.h +0 -2325
- package/lib/clang/14.0.0/include/ppc_wrappers/pmmintrin.h +0 -151
- package/lib/clang/14.0.0/include/ppc_wrappers/smmintrin.h +0 -110
- package/lib/clang/14.0.0/include/ppc_wrappers/tmmintrin.h +0 -496
- package/lib/clang/14.0.0/include/ppc_wrappers/xmmintrin.h +0 -1844
- package/lib/clang/14.0.0/include/rdseedintrin.h +0 -42
- package/lib/clang/14.0.0/include/riscv_vector.h +0 -95423
- package/lib/clang/14.0.0/include/shaintrin.h +0 -61
- package/lib/clang/14.0.0/include/x86gprintrin.h +0 -35
- package/lib/clang/14.0.0/include/xsavecintrin.h +0 -34
- /package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_complex_builtins.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_device_functions.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_libdevice_declares.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_math_forward_declares.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__clang_cuda_runtime_wrapper.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/__wmmintrin_aes.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/ammintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/arm64intr.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/arm_bf16.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/arm_cde.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/arm_cmse.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/arm_mve.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/armintr.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512bitalgintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512cdintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512dqintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512erintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512ifmaintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512pfintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vbmi2intrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vbmiintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vbmivlintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vlbitalgintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vlcdintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vldqintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vlvbmi2intrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vlvp2intersectintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vnniintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vp2intersectintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vpopcntdqintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/avx512vpopcntdqvlintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/builtins.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/cet.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/clwbintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/crc32intrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/cuda_wrappers/algorithm +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/cuda_wrappers/new +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/fma4intrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/hexagon_protos.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/hexagon_types.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/htmintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/hvx_hexagon_protos.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/inttypes.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/iso646.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/lwpintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/lzcntintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/mm3dnow.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/mmintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/module.modulemap +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/movdirintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/msa.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/nmmintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/openmp_wrappers/complex +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/openmp_wrappers/complex.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/openmp_wrappers/complex_cmath.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/openmp_wrappers/math.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/pkuintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/popcntintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/prfchwintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/s390intrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/serializeintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/sgxintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/tbmintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/tgmath.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/tmmintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/vadefs.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/vaesintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/varargs.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/vecintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/vpclmulqdqintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/wmmintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/xopintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{14.0.0 → 17}/include/xtestintrin.h +0 -0
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
*/
|
|
41
41
|
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
42
42
|
__bsfd(int __A) {
|
|
43
|
-
return __builtin_ctz(__A);
|
|
43
|
+
return __builtin_ctz((unsigned int)__A);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
/** Find the first set bit starting from the msb. Result is undefined if
|
|
@@ -57,7 +57,7 @@ __bsfd(int __A) {
|
|
|
57
57
|
*/
|
|
58
58
|
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
59
59
|
__bsrd(int __A) {
|
|
60
|
-
return 31 - __builtin_clz(__A);
|
|
60
|
+
return 31 - __builtin_clz((unsigned int)__A);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
/** Swaps the bytes in the input. Converting little endian to big endian or
|
|
@@ -73,12 +73,12 @@ __bsrd(int __A) {
|
|
|
73
73
|
*/
|
|
74
74
|
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
75
75
|
__bswapd(int __A) {
|
|
76
|
-
return __builtin_bswap32(__A);
|
|
76
|
+
return (int)__builtin_bswap32((unsigned int)__A);
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
80
80
|
_bswap(int __A) {
|
|
81
|
-
return __builtin_bswap32(__A);
|
|
81
|
+
return (int)__builtin_bswap32((unsigned int)__A);
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
#define _bit_scan_forward(A) __bsfd((A))
|
|
@@ -99,7 +99,7 @@ _bswap(int __A) {
|
|
|
99
99
|
*/
|
|
100
100
|
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
101
101
|
__bsfq(long long __A) {
|
|
102
|
-
return __builtin_ctzll(__A);
|
|
102
|
+
return (long long)__builtin_ctzll((unsigned long long)__A);
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
/** Find the first set bit starting from the msb. Result is undefined if
|
|
@@ -116,7 +116,7 @@ __bsfq(long long __A) {
|
|
|
116
116
|
*/
|
|
117
117
|
static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
118
118
|
__bsrq(long long __A) {
|
|
119
|
-
return 63 - __builtin_clzll(__A);
|
|
119
|
+
return 63 - __builtin_clzll((unsigned long long)__A);
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
/** Swaps the bytes in the input. Converting little endian to big endian or
|
|
@@ -132,7 +132,7 @@ __bsrq(long long __A) {
|
|
|
132
132
|
*/
|
|
133
133
|
static __inline__ long long __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
134
134
|
__bswapq(long long __A) {
|
|
135
|
-
return __builtin_bswap64(__A);
|
|
135
|
+
return (long long)__builtin_bswap64((unsigned long long)__A);
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
#define _bswap64(A) __bswapq((A))
|
|
@@ -395,23 +395,23 @@ __rorw(unsigned short __X, int __C) {
|
|
|
395
395
|
|
|
396
396
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
397
397
|
__rold(unsigned int __X, int __C) {
|
|
398
|
-
return __builtin_rotateleft32(__X, __C);
|
|
398
|
+
return __builtin_rotateleft32(__X, (unsigned int)__C);
|
|
399
399
|
}
|
|
400
400
|
|
|
401
401
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
402
402
|
__rord(unsigned int __X, int __C) {
|
|
403
|
-
return __builtin_rotateright32(__X, __C);
|
|
403
|
+
return __builtin_rotateright32(__X, (unsigned int)__C);
|
|
404
404
|
}
|
|
405
405
|
|
|
406
406
|
#ifdef __x86_64__
|
|
407
407
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
408
408
|
__rolq(unsigned long long __X, int __C) {
|
|
409
|
-
return __builtin_rotateleft64(__X, __C);
|
|
409
|
+
return __builtin_rotateleft64(__X, (unsigned long long)__C);
|
|
410
410
|
}
|
|
411
411
|
|
|
412
412
|
static __inline__ unsigned long long __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
413
413
|
__rorq(unsigned long long __X, int __C) {
|
|
414
|
-
return __builtin_rotateright64(__X, __C);
|
|
414
|
+
return __builtin_rotateright64(__X, (unsigned long long)__C);
|
|
415
415
|
}
|
|
416
416
|
#endif /* __x86_64__ */
|
|
417
417
|
|
|
@@ -189,6 +189,11 @@
|
|
|
189
189
|
#include <avx512ifmavlintrin.h>
|
|
190
190
|
#endif
|
|
191
191
|
|
|
192
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
193
|
+
defined(__AVXIFMA__)
|
|
194
|
+
#include <avxifmaintrin.h>
|
|
195
|
+
#endif
|
|
196
|
+
|
|
192
197
|
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
193
198
|
defined(__AVX512VBMI__)
|
|
194
199
|
#include <avx512vbmiintrin.h>
|
|
@@ -214,17 +219,13 @@
|
|
|
214
219
|
#include <avx512pfintrin.h>
|
|
215
220
|
#endif
|
|
216
221
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
* We use __AVX512FP16__ to identify if float16 is supported or not, so
|
|
220
|
-
* when float16 is not supported, the related header is not included.
|
|
221
|
-
*
|
|
222
|
-
*/
|
|
223
|
-
#if defined(__AVX512FP16__)
|
|
222
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
223
|
+
defined(__AVX512FP16__)
|
|
224
224
|
#include <avx512fp16intrin.h>
|
|
225
225
|
#endif
|
|
226
226
|
|
|
227
|
-
#if defined(
|
|
227
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
228
|
+
(defined(__AVX512VL__) && defined(__AVX512FP16__))
|
|
228
229
|
#include <avx512vlfp16intrin.h>
|
|
229
230
|
#endif
|
|
230
231
|
|
|
@@ -258,6 +259,36 @@
|
|
|
258
259
|
#include <gfniintrin.h>
|
|
259
260
|
#endif
|
|
260
261
|
|
|
262
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
263
|
+
defined(__AVXVNNIINT8__)
|
|
264
|
+
#include <avxvnniint8intrin.h>
|
|
265
|
+
#endif
|
|
266
|
+
|
|
267
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
268
|
+
defined(__AVXNECONVERT__)
|
|
269
|
+
#include <avxneconvertintrin.h>
|
|
270
|
+
#endif
|
|
271
|
+
|
|
272
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
273
|
+
defined(__SHA512__)
|
|
274
|
+
#include <sha512intrin.h>
|
|
275
|
+
#endif
|
|
276
|
+
|
|
277
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
278
|
+
defined(__SM3__)
|
|
279
|
+
#include <sm3intrin.h>
|
|
280
|
+
#endif
|
|
281
|
+
|
|
282
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
283
|
+
defined(__SM4__)
|
|
284
|
+
#include <sm4intrin.h>
|
|
285
|
+
#endif
|
|
286
|
+
|
|
287
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
288
|
+
defined(__AVXVNNIINT16__)
|
|
289
|
+
#include <avxvnniint16intrin.h>
|
|
290
|
+
#endif
|
|
291
|
+
|
|
261
292
|
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
262
293
|
defined(__RDPID__)
|
|
263
294
|
/// Returns the value of the IA32_TSC_AUX MSR (0xc0000103).
|
|
@@ -273,72 +304,172 @@ _rdpid_u32(void) {
|
|
|
273
304
|
|
|
274
305
|
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
275
306
|
defined(__RDRND__)
|
|
307
|
+
/// Returns a 16-bit hardware-generated random value.
|
|
308
|
+
///
|
|
309
|
+
/// \headerfile <immintrin.h>
|
|
310
|
+
///
|
|
311
|
+
/// This intrinsic corresponds to the <c> RDRAND </c> instruction.
|
|
312
|
+
///
|
|
313
|
+
/// \param __p
|
|
314
|
+
/// A pointer to a 16-bit memory location to place the random value.
|
|
315
|
+
/// \returns 1 if the value was successfully generated, 0 otherwise.
|
|
276
316
|
static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd")))
|
|
277
317
|
_rdrand16_step(unsigned short *__p)
|
|
278
318
|
{
|
|
279
|
-
return __builtin_ia32_rdrand16_step(__p);
|
|
319
|
+
return (int)__builtin_ia32_rdrand16_step(__p);
|
|
280
320
|
}
|
|
281
321
|
|
|
322
|
+
/// Returns a 32-bit hardware-generated random value.
|
|
323
|
+
///
|
|
324
|
+
/// \headerfile <immintrin.h>
|
|
325
|
+
///
|
|
326
|
+
/// This intrinsic corresponds to the <c> RDRAND </c> instruction.
|
|
327
|
+
///
|
|
328
|
+
/// \param __p
|
|
329
|
+
/// A pointer to a 32-bit memory location to place the random value.
|
|
330
|
+
/// \returns 1 if the value was successfully generated, 0 otherwise.
|
|
282
331
|
static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd")))
|
|
283
332
|
_rdrand32_step(unsigned int *__p)
|
|
284
333
|
{
|
|
285
|
-
return __builtin_ia32_rdrand32_step(__p);
|
|
334
|
+
return (int)__builtin_ia32_rdrand32_step(__p);
|
|
286
335
|
}
|
|
287
336
|
|
|
288
|
-
|
|
337
|
+
/// Returns a 64-bit hardware-generated random value.
|
|
338
|
+
///
|
|
339
|
+
/// \headerfile <immintrin.h>
|
|
340
|
+
///
|
|
341
|
+
/// This intrinsic corresponds to the <c> RDRAND </c> instruction.
|
|
342
|
+
///
|
|
343
|
+
/// \param __p
|
|
344
|
+
/// A pointer to a 64-bit memory location to place the random value.
|
|
345
|
+
/// \returns 1 if the value was successfully generated, 0 otherwise.
|
|
289
346
|
static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("rdrnd")))
|
|
290
347
|
_rdrand64_step(unsigned long long *__p)
|
|
291
348
|
{
|
|
292
|
-
|
|
293
|
-
|
|
349
|
+
#ifdef __x86_64__
|
|
350
|
+
return (int)__builtin_ia32_rdrand64_step(__p);
|
|
351
|
+
#else
|
|
352
|
+
// We need to emulate the functionality of 64-bit rdrand with 2 32-bit
|
|
353
|
+
// rdrand instructions.
|
|
354
|
+
unsigned int __lo, __hi;
|
|
355
|
+
unsigned int __res_lo = __builtin_ia32_rdrand32_step(&__lo);
|
|
356
|
+
unsigned int __res_hi = __builtin_ia32_rdrand32_step(&__hi);
|
|
357
|
+
if (__res_lo && __res_hi) {
|
|
358
|
+
*__p = ((unsigned long long)__hi << 32) | (unsigned long long)__lo;
|
|
359
|
+
return 1;
|
|
360
|
+
} else {
|
|
361
|
+
*__p = 0;
|
|
362
|
+
return 0;
|
|
363
|
+
}
|
|
294
364
|
#endif
|
|
365
|
+
}
|
|
295
366
|
#endif /* __RDRND__ */
|
|
296
367
|
|
|
297
368
|
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
298
369
|
defined(__FSGSBASE__)
|
|
299
370
|
#ifdef __x86_64__
|
|
371
|
+
/// Reads the FS base register.
|
|
372
|
+
///
|
|
373
|
+
/// \headerfile <immintrin.h>
|
|
374
|
+
///
|
|
375
|
+
/// This intrinsic corresponds to the <c> RDFSBASE </c> instruction.
|
|
376
|
+
///
|
|
377
|
+
/// \returns The lower 32 bits of the FS base register.
|
|
300
378
|
static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
301
379
|
_readfsbase_u32(void)
|
|
302
380
|
{
|
|
303
381
|
return __builtin_ia32_rdfsbase32();
|
|
304
382
|
}
|
|
305
383
|
|
|
384
|
+
/// Reads the FS base register.
|
|
385
|
+
///
|
|
386
|
+
/// \headerfile <immintrin.h>
|
|
387
|
+
///
|
|
388
|
+
/// This intrinsic corresponds to the <c> RDFSBASE </c> instruction.
|
|
389
|
+
///
|
|
390
|
+
/// \returns The contents of the FS base register.
|
|
306
391
|
static __inline__ unsigned long long __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
307
392
|
_readfsbase_u64(void)
|
|
308
393
|
{
|
|
309
394
|
return __builtin_ia32_rdfsbase64();
|
|
310
395
|
}
|
|
311
396
|
|
|
397
|
+
/// Reads the GS base register.
|
|
398
|
+
///
|
|
399
|
+
/// \headerfile <immintrin.h>
|
|
400
|
+
///
|
|
401
|
+
/// This intrinsic corresponds to the <c> RDGSBASE </c> instruction.
|
|
402
|
+
///
|
|
403
|
+
/// \returns The lower 32 bits of the GS base register.
|
|
312
404
|
static __inline__ unsigned int __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
313
405
|
_readgsbase_u32(void)
|
|
314
406
|
{
|
|
315
407
|
return __builtin_ia32_rdgsbase32();
|
|
316
408
|
}
|
|
317
409
|
|
|
410
|
+
/// Reads the GS base register.
|
|
411
|
+
///
|
|
412
|
+
/// \headerfile <immintrin.h>
|
|
413
|
+
///
|
|
414
|
+
/// This intrinsic corresponds to the <c> RDGSBASE </c> instruction.
|
|
415
|
+
///
|
|
416
|
+
/// \returns The contents of the GS base register.
|
|
318
417
|
static __inline__ unsigned long long __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
319
418
|
_readgsbase_u64(void)
|
|
320
419
|
{
|
|
321
420
|
return __builtin_ia32_rdgsbase64();
|
|
322
421
|
}
|
|
323
422
|
|
|
423
|
+
/// Modifies the FS base register.
|
|
424
|
+
///
|
|
425
|
+
/// \headerfile <immintrin.h>
|
|
426
|
+
///
|
|
427
|
+
/// This intrinsic corresponds to the <c> WRFSBASE </c> instruction.
|
|
428
|
+
///
|
|
429
|
+
/// \param __V
|
|
430
|
+
/// Value to use for the lower 32 bits of the FS base register.
|
|
324
431
|
static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
325
432
|
_writefsbase_u32(unsigned int __V)
|
|
326
433
|
{
|
|
327
434
|
__builtin_ia32_wrfsbase32(__V);
|
|
328
435
|
}
|
|
329
436
|
|
|
437
|
+
/// Modifies the FS base register.
|
|
438
|
+
///
|
|
439
|
+
/// \headerfile <immintrin.h>
|
|
440
|
+
///
|
|
441
|
+
/// This intrinsic corresponds to the <c> WRFSBASE </c> instruction.
|
|
442
|
+
///
|
|
443
|
+
/// \param __V
|
|
444
|
+
/// Value to use for the FS base register.
|
|
330
445
|
static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
331
446
|
_writefsbase_u64(unsigned long long __V)
|
|
332
447
|
{
|
|
333
448
|
__builtin_ia32_wrfsbase64(__V);
|
|
334
449
|
}
|
|
335
450
|
|
|
451
|
+
/// Modifies the GS base register.
|
|
452
|
+
///
|
|
453
|
+
/// \headerfile <immintrin.h>
|
|
454
|
+
///
|
|
455
|
+
/// This intrinsic corresponds to the <c> WRGSBASE </c> instruction.
|
|
456
|
+
///
|
|
457
|
+
/// \param __V
|
|
458
|
+
/// Value to use for the lower 32 bits of the GS base register.
|
|
336
459
|
static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
337
460
|
_writegsbase_u32(unsigned int __V)
|
|
338
461
|
{
|
|
339
462
|
__builtin_ia32_wrgsbase32(__V);
|
|
340
463
|
}
|
|
341
464
|
|
|
465
|
+
/// Modifies the GS base register.
|
|
466
|
+
///
|
|
467
|
+
/// \headerfile <immintrin.h>
|
|
468
|
+
///
|
|
469
|
+
/// This intrinsic corresponds to the <c> WRFSBASE </c> instruction.
|
|
470
|
+
///
|
|
471
|
+
/// \param __V
|
|
472
|
+
/// Value to use for GS base register.
|
|
342
473
|
static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("fsgsbase")))
|
|
343
474
|
_writegsbase_u64(unsigned long long __V)
|
|
344
475
|
{
|
|
@@ -360,50 +491,50 @@ _writegsbase_u64(unsigned long long __V)
|
|
|
360
491
|
static __inline__ short __attribute__((__always_inline__, __nodebug__, __target__("movbe")))
|
|
361
492
|
_loadbe_i16(void const * __P) {
|
|
362
493
|
struct __loadu_i16 {
|
|
363
|
-
short __v;
|
|
494
|
+
unsigned short __v;
|
|
364
495
|
} __attribute__((__packed__, __may_alias__));
|
|
365
|
-
return __builtin_bswap16(((const struct __loadu_i16*)__P)->__v);
|
|
496
|
+
return (short)__builtin_bswap16(((const struct __loadu_i16*)__P)->__v);
|
|
366
497
|
}
|
|
367
498
|
|
|
368
499
|
static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe")))
|
|
369
500
|
_storebe_i16(void * __P, short __D) {
|
|
370
501
|
struct __storeu_i16 {
|
|
371
|
-
short __v;
|
|
502
|
+
unsigned short __v;
|
|
372
503
|
} __attribute__((__packed__, __may_alias__));
|
|
373
|
-
((struct __storeu_i16*)__P)->__v = __builtin_bswap16(__D);
|
|
504
|
+
((struct __storeu_i16*)__P)->__v = __builtin_bswap16((unsigned short)__D);
|
|
374
505
|
}
|
|
375
506
|
|
|
376
507
|
static __inline__ int __attribute__((__always_inline__, __nodebug__, __target__("movbe")))
|
|
377
508
|
_loadbe_i32(void const * __P) {
|
|
378
509
|
struct __loadu_i32 {
|
|
379
|
-
int __v;
|
|
510
|
+
unsigned int __v;
|
|
380
511
|
} __attribute__((__packed__, __may_alias__));
|
|
381
|
-
return __builtin_bswap32(((const struct __loadu_i32*)__P)->__v);
|
|
512
|
+
return (int)__builtin_bswap32(((const struct __loadu_i32*)__P)->__v);
|
|
382
513
|
}
|
|
383
514
|
|
|
384
515
|
static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe")))
|
|
385
516
|
_storebe_i32(void * __P, int __D) {
|
|
386
517
|
struct __storeu_i32 {
|
|
387
|
-
int __v;
|
|
518
|
+
unsigned int __v;
|
|
388
519
|
} __attribute__((__packed__, __may_alias__));
|
|
389
|
-
((struct __storeu_i32*)__P)->__v = __builtin_bswap32(__D);
|
|
520
|
+
((struct __storeu_i32*)__P)->__v = __builtin_bswap32((unsigned int)__D);
|
|
390
521
|
}
|
|
391
522
|
|
|
392
523
|
#ifdef __x86_64__
|
|
393
524
|
static __inline__ long long __attribute__((__always_inline__, __nodebug__, __target__("movbe")))
|
|
394
525
|
_loadbe_i64(void const * __P) {
|
|
395
526
|
struct __loadu_i64 {
|
|
396
|
-
long long __v;
|
|
527
|
+
unsigned long long __v;
|
|
397
528
|
} __attribute__((__packed__, __may_alias__));
|
|
398
|
-
return __builtin_bswap64(((const struct __loadu_i64*)__P)->__v);
|
|
529
|
+
return (long long)__builtin_bswap64(((const struct __loadu_i64*)__P)->__v);
|
|
399
530
|
}
|
|
400
531
|
|
|
401
532
|
static __inline__ void __attribute__((__always_inline__, __nodebug__, __target__("movbe")))
|
|
402
533
|
_storebe_i64(void * __P, long long __D) {
|
|
403
534
|
struct __storeu_i64 {
|
|
404
|
-
long long __v;
|
|
535
|
+
unsigned long long __v;
|
|
405
536
|
} __attribute__((__packed__, __may_alias__));
|
|
406
|
-
((struct __storeu_i64*)__P)->__v = __builtin_bswap64(__D);
|
|
537
|
+
((struct __storeu_i64*)__P)->__v = __builtin_bswap64((unsigned long long)__D);
|
|
407
538
|
}
|
|
408
539
|
#endif
|
|
409
540
|
#endif /* __MOVBE */
|
|
@@ -495,6 +626,10 @@ _storebe_i64(void * __P, long long __D) {
|
|
|
495
626
|
defined(__INVPCID__)
|
|
496
627
|
#include <invpcidintrin.h>
|
|
497
628
|
#endif
|
|
629
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
630
|
+
defined(__AMX_FP16__)
|
|
631
|
+
#include <amxfp16intrin.h>
|
|
632
|
+
#endif
|
|
498
633
|
|
|
499
634
|
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
500
635
|
defined(__KL__) || defined(__WIDEKL__)
|
|
@@ -502,10 +637,15 @@ _storebe_i64(void * __P, long long __D) {
|
|
|
502
637
|
#endif
|
|
503
638
|
|
|
504
639
|
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
505
|
-
defined(
|
|
640
|
+
defined(__AMX_TILE__) || defined(__AMX_INT8__) || defined(__AMX_BF16__)
|
|
506
641
|
#include <amxintrin.h>
|
|
507
642
|
#endif
|
|
508
643
|
|
|
644
|
+
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
645
|
+
defined(__AMX_COMPLEX__)
|
|
646
|
+
#include <amxcomplexintrin.h>
|
|
647
|
+
#endif
|
|
648
|
+
|
|
509
649
|
#if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \
|
|
510
650
|
defined(__AVX512VP2INTERSECT__)
|
|
511
651
|
#include <avx512vp2intersectintrin.h>
|
|
@@ -534,27 +534,6 @@ static __inline__ void __DEFAULT_FN_ATTRS __stosq(unsigned __int64 *__dst,
|
|
|
534
534
|
|* Misc
|
|
535
535
|
\*----------------------------------------------------------------------------*/
|
|
536
536
|
#if defined(__i386__) || defined(__x86_64__)
|
|
537
|
-
#if defined(__i386__)
|
|
538
|
-
#define __cpuid_count(__leaf, __count, __eax, __ebx, __ecx, __edx) \
|
|
539
|
-
__asm("cpuid" \
|
|
540
|
-
: "=a"(__eax), "=b"(__ebx), "=c"(__ecx), "=d"(__edx) \
|
|
541
|
-
: "0"(__leaf), "2"(__count))
|
|
542
|
-
#else
|
|
543
|
-
/* x86-64 uses %rbx as the base register, so preserve it. */
|
|
544
|
-
#define __cpuid_count(__leaf, __count, __eax, __ebx, __ecx, __edx) \
|
|
545
|
-
__asm("xchg{q} {%%rbx, %q1|%q1, rbx}\n" \
|
|
546
|
-
"cpuid\n" \
|
|
547
|
-
"xchg{q} {%%rbx, %q1|%q1, rbx}" \
|
|
548
|
-
: "=a"(__eax), "=r"(__ebx), "=c"(__ecx), "=d"(__edx) \
|
|
549
|
-
: "0"(__leaf), "2"(__count))
|
|
550
|
-
#endif
|
|
551
|
-
static __inline__ void __DEFAULT_FN_ATTRS __cpuid(int __info[4], int __level) {
|
|
552
|
-
__cpuid_count(__level, 0, __info[0], __info[1], __info[2], __info[3]);
|
|
553
|
-
}
|
|
554
|
-
static __inline__ void __DEFAULT_FN_ATTRS __cpuidex(int __info[4], int __level,
|
|
555
|
-
int __ecx) {
|
|
556
|
-
__cpuid_count(__level, __ecx, __info[0], __info[1], __info[2], __info[3]);
|
|
557
|
-
}
|
|
558
537
|
static __inline__ void __DEFAULT_FN_ATTRS __halt(void) {
|
|
559
538
|
__asm__ volatile("hlt");
|
|
560
539
|
}
|
|
@@ -581,6 +560,18 @@ unsigned __int64 __cdecl _byteswap_uint64(unsigned __int64 val);
|
|
|
581
560
|
|
|
582
561
|
__int64 __mulh(__int64 __a, __int64 __b);
|
|
583
562
|
unsigned __int64 __umulh(unsigned __int64 __a, unsigned __int64 __b);
|
|
563
|
+
|
|
564
|
+
void __break(int);
|
|
565
|
+
|
|
566
|
+
void __writex18byte(unsigned long offset, unsigned char data);
|
|
567
|
+
void __writex18word(unsigned long offset, unsigned short data);
|
|
568
|
+
void __writex18dword(unsigned long offset, unsigned long data);
|
|
569
|
+
void __writex18qword(unsigned long offset, unsigned __int64 data);
|
|
570
|
+
|
|
571
|
+
unsigned char __readx18byte(unsigned long offset);
|
|
572
|
+
unsigned short __readx18word(unsigned long offset);
|
|
573
|
+
unsigned long __readx18dword(unsigned long offset);
|
|
574
|
+
unsigned __int64 __readx18qword(unsigned long offset);
|
|
584
575
|
#endif
|
|
585
576
|
|
|
586
577
|
/*----------------------------------------------------------------------------*\
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
///
|
|
47
47
|
/// This intrinsic corresponds to the <c> LOADIWKEY </c> instructions.
|
|
48
48
|
///
|
|
49
|
-
/// \operation
|
|
49
|
+
/// \code{.operation}
|
|
50
50
|
/// IF CPL > 0 // LOADKWKEY only allowed at ring 0 (supervisor mode)
|
|
51
51
|
/// GP (0)
|
|
52
52
|
/// FI
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
/// AF := 0
|
|
92
92
|
/// PF := 0
|
|
93
93
|
/// CF := 0
|
|
94
|
-
/// \
|
|
94
|
+
/// \endcode
|
|
95
95
|
static __inline__ void __DEFAULT_FN_ATTRS
|
|
96
96
|
_mm_loadiwkey (unsigned int __ctl, __m128i __intkey,
|
|
97
97
|
__m128i __enkey_lo, __m128i __enkey_hi) {
|
|
@@ -106,7 +106,7 @@ _mm_loadiwkey (unsigned int __ctl, __m128i __intkey,
|
|
|
106
106
|
///
|
|
107
107
|
/// This intrinsic corresponds to the <c> ENCODEKEY128 </c> instructions.
|
|
108
108
|
///
|
|
109
|
-
/// \operation
|
|
109
|
+
/// \code{.operation}
|
|
110
110
|
/// InputKey[127:0] := __key[127:0]
|
|
111
111
|
/// KeyMetadata[2:0] := __htype[2:0]
|
|
112
112
|
/// KeyMetadata[23:3] := 0 // Reserved for future usage
|
|
@@ -126,7 +126,7 @@ _mm_loadiwkey (unsigned int __ctl, __m128i __intkey,
|
|
|
126
126
|
/// AF := 0
|
|
127
127
|
/// PF := 0
|
|
128
128
|
/// CF := 0
|
|
129
|
-
/// \
|
|
129
|
+
/// \endcode
|
|
130
130
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
131
131
|
_mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) {
|
|
132
132
|
return __builtin_ia32_encodekey128_u32(__htype, (__v2di)__key, __h);
|
|
@@ -141,7 +141,7 @@ _mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) {
|
|
|
141
141
|
///
|
|
142
142
|
/// This intrinsic corresponds to the <c> ENCODEKEY256 </c> instructions.
|
|
143
143
|
///
|
|
144
|
-
/// \operation
|
|
144
|
+
/// \code{.operation}
|
|
145
145
|
/// InputKey[127:0] := __key_lo[127:0]
|
|
146
146
|
/// InputKey[255:128] := __key_hi[255:128]
|
|
147
147
|
/// KeyMetadata[2:0] := __htype[2:0]
|
|
@@ -163,7 +163,7 @@ _mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) {
|
|
|
163
163
|
/// AF := 0
|
|
164
164
|
/// PF := 0
|
|
165
165
|
/// CF := 0
|
|
166
|
-
/// \
|
|
166
|
+
/// \endcode
|
|
167
167
|
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
168
168
|
_mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi,
|
|
169
169
|
void *__h) {
|
|
@@ -179,7 +179,7 @@ _mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi,
|
|
|
179
179
|
///
|
|
180
180
|
/// This intrinsic corresponds to the <c> AESENC128KL </c> instructions.
|
|
181
181
|
///
|
|
182
|
-
/// \operation
|
|
182
|
+
/// \code{.operation}
|
|
183
183
|
/// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic.
|
|
184
184
|
/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) ||
|
|
185
185
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -202,7 +202,7 @@ _mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi,
|
|
|
202
202
|
/// AF := 0
|
|
203
203
|
/// PF := 0
|
|
204
204
|
/// CF := 0
|
|
205
|
-
/// \
|
|
205
|
+
/// \endcode
|
|
206
206
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
207
207
|
_mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
208
208
|
return __builtin_ia32_aesenc128kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
|
|
@@ -216,7 +216,7 @@ _mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
216
216
|
///
|
|
217
217
|
/// This intrinsic corresponds to the <c> AESENC256KL </c> instructions.
|
|
218
218
|
///
|
|
219
|
-
/// \operation
|
|
219
|
+
/// \code{.operation}
|
|
220
220
|
/// Handle[511:0] := MEM[__h+511:__h] // Load is not guaranteed to be atomic.
|
|
221
221
|
/// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) ||
|
|
222
222
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -241,7 +241,7 @@ _mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
241
241
|
/// AF := 0
|
|
242
242
|
/// PF := 0
|
|
243
243
|
/// CF := 0
|
|
244
|
-
/// \
|
|
244
|
+
/// \endcode
|
|
245
245
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
246
246
|
_mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
247
247
|
return __builtin_ia32_aesenc256kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
|
|
@@ -255,7 +255,7 @@ _mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
255
255
|
///
|
|
256
256
|
/// This intrinsic corresponds to the <c> AESDEC128KL </c> instructions.
|
|
257
257
|
///
|
|
258
|
-
/// \operation
|
|
258
|
+
/// \code{.operation}
|
|
259
259
|
/// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic.
|
|
260
260
|
/// IllegalHandle := (HandleReservedBitSet (Handle[383:0]) ||
|
|
261
261
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -280,7 +280,7 @@ _mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
280
280
|
/// AF := 0
|
|
281
281
|
/// PF := 0
|
|
282
282
|
/// CF := 0
|
|
283
|
-
/// \
|
|
283
|
+
/// \endcode
|
|
284
284
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
285
285
|
_mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
286
286
|
return __builtin_ia32_aesdec128kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
|
|
@@ -294,7 +294,7 @@ _mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
294
294
|
///
|
|
295
295
|
/// This intrinsic corresponds to the <c> AESDEC256KL </c> instructions.
|
|
296
296
|
///
|
|
297
|
-
/// \operation
|
|
297
|
+
/// \code{.operation}
|
|
298
298
|
/// Handle[511:0] := MEM[__h+511:__h]
|
|
299
299
|
/// IllegalHandle := (HandleReservedBitSet (Handle[511:0]) ||
|
|
300
300
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -319,7 +319,7 @@ _mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
319
319
|
/// AF := 0
|
|
320
320
|
/// PF := 0
|
|
321
321
|
/// CF := 0
|
|
322
|
-
/// \
|
|
322
|
+
/// \endcode
|
|
323
323
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
324
324
|
_mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
325
325
|
return __builtin_ia32_aesdec256kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
|
|
@@ -346,7 +346,7 @@ _mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
346
346
|
///
|
|
347
347
|
/// This intrinsic corresponds to the <c> AESENCWIDE128KL </c> instructions.
|
|
348
348
|
///
|
|
349
|
-
/// \operation
|
|
349
|
+
/// \code{.operation}
|
|
350
350
|
/// Handle := MEM[__h+383:__h]
|
|
351
351
|
/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) ||
|
|
352
352
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -377,7 +377,7 @@ _mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
|
|
|
377
377
|
/// AF := 0
|
|
378
378
|
/// PF := 0
|
|
379
379
|
/// CF := 0
|
|
380
|
-
/// \
|
|
380
|
+
/// \endcode
|
|
381
381
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
382
382
|
_mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
|
|
383
383
|
return __builtin_ia32_aesencwide128kl_u8((__v2di *)__odata,
|
|
@@ -392,7 +392,7 @@ _mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
|
|
|
392
392
|
///
|
|
393
393
|
/// This intrinsic corresponds to the <c> AESENCWIDE256KL </c> instructions.
|
|
394
394
|
///
|
|
395
|
-
/// \operation
|
|
395
|
+
/// \code{.operation}
|
|
396
396
|
/// Handle[511:0] := MEM[__h+511:__h]
|
|
397
397
|
/// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) ||
|
|
398
398
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -423,7 +423,7 @@ _mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
|
|
|
423
423
|
/// AF := 0
|
|
424
424
|
/// PF := 0
|
|
425
425
|
/// CF := 0
|
|
426
|
-
/// \
|
|
426
|
+
/// \endcode
|
|
427
427
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
428
428
|
_mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
|
|
429
429
|
return __builtin_ia32_aesencwide256kl_u8((__v2di *)__odata,
|
|
@@ -438,7 +438,7 @@ _mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
|
|
|
438
438
|
///
|
|
439
439
|
/// This intrinsic corresponds to the <c> AESDECWIDE128KL </c> instructions.
|
|
440
440
|
///
|
|
441
|
-
/// \operation
|
|
441
|
+
/// \code{.operation}
|
|
442
442
|
/// Handle[383:0] := MEM[__h+383:__h]
|
|
443
443
|
/// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) ||
|
|
444
444
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -469,7 +469,7 @@ _mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
|
|
|
469
469
|
/// AF := 0
|
|
470
470
|
/// PF := 0
|
|
471
471
|
/// CF := 0
|
|
472
|
-
/// \
|
|
472
|
+
/// \endcode
|
|
473
473
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
474
474
|
_mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
|
|
475
475
|
return __builtin_ia32_aesdecwide128kl_u8((__v2di *)__odata,
|
|
@@ -484,7 +484,7 @@ _mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
|
|
|
484
484
|
///
|
|
485
485
|
/// This intrinsic corresponds to the <c> AESDECWIDE256KL </c> instructions.
|
|
486
486
|
///
|
|
487
|
-
/// \operation
|
|
487
|
+
/// \code{.operation}
|
|
488
488
|
/// Handle[511:0] := MEM[__h+511:__h]
|
|
489
489
|
/// IllegalHandle = ( HandleReservedBitSet (Handle[511:0]) ||
|
|
490
490
|
/// (Handle[127:0] AND (CPL > 0)) ||
|
|
@@ -515,7 +515,7 @@ _mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
|
|
|
515
515
|
/// AF := 0
|
|
516
516
|
/// PF := 0
|
|
517
517
|
/// CF := 0
|
|
518
|
-
/// \
|
|
518
|
+
/// \endcode
|
|
519
519
|
static __inline__ unsigned char __DEFAULT_FN_ATTRS
|
|
520
520
|
_mm_aesdecwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
|
|
521
521
|
return __builtin_ia32_aesdecwide256kl_u8((__v2di *)__odata,
|