@cpp-linter/clang-tidy-win32-x64 15.0.2 → 16.0.3
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.exe +2 -2
- package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_texture_intrinsics.h +2 -0
- package/lib/clang/{15.0.2 → 16}/include/__clang_hip_libdevice_declares.h +5 -0
- package/lib/clang/{15.0.2 → 16}/include/__clang_hip_math.h +10 -13
- package/lib/clang/{15.0.2 → 16}/include/__clang_hip_runtime_wrapper.h +1 -0
- package/lib/clang/16/include/__clang_hip_stdlib.h +43 -0
- package/lib/clang/{15.0.2 → 16}/include/altivec.h +14 -14
- package/lib/clang/16/include/amxfp16intrin.h +58 -0
- package/lib/clang/{15.0.2 → 16}/include/amxintrin.h +32 -0
- package/lib/clang/{15.0.2 → 16}/include/arm_acle.h +76 -75
- package/lib/clang/{15.0.2 → 16}/include/arm_fp16.h +1 -1
- package/lib/clang/{15.0.2 → 16}/include/arm_neon.h +26428 -26598
- package/lib/clang/{15.0.2 → 16}/include/arm_neon_sve_bridge.h +0 -2
- package/lib/clang/{15.0.2 → 16}/include/arm_sve.h +7784 -7936
- package/lib/clang/{15.0.2 → 16}/include/avx512bf16intrin.h +18 -15
- package/lib/clang/{15.0.2 → 16}/include/avx512fintrin.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/avx512fp16intrin.h +6 -9
- package/lib/clang/{15.0.2 → 16}/include/avx512ifmavlintrin.h +13 -27
- package/lib/clang/{15.0.2 → 16}/include/avx512vlbf16intrin.h +31 -38
- package/lib/clang/{15.0.2 → 16}/include/avx512vlbwintrin.h +352 -0
- package/lib/clang/{15.0.2 → 16}/include/avx512vlfp16intrin.h +3 -0
- package/lib/clang/16/include/avxifmaintrin.h +177 -0
- package/lib/clang/{15.0.2 → 16}/include/avxintrin.h +12 -2
- package/lib/clang/16/include/avxneconvertintrin.h +484 -0
- package/lib/clang/16/include/avxvnniint8intrin.h +471 -0
- package/lib/clang/16/include/cmpccxaddintrin.h +70 -0
- package/lib/clang/{15.0.2 → 16}/include/cpuid.h +11 -1
- package/lib/clang/16/include/cuda_wrappers/cmath +90 -0
- package/lib/clang/{15.0.2 → 16}/include/emmintrin.h +11 -1
- package/lib/clang/{15.0.2 → 16}/include/float.h +17 -10
- package/lib/clang/{15.0.2 → 16}/include/gfniintrin.h +7 -5
- package/lib/clang/{15.0.2 → 16}/include/hlsl/hlsl_basic_types.h +3 -0
- package/lib/clang/16/include/hlsl/hlsl_intrinsics.h +223 -0
- package/lib/clang/{15.0.2 → 16}/include/immintrin.h +41 -9
- package/lib/clang/16/include/larchintrin.h +234 -0
- package/lib/clang/{15.0.2 → 16}/include/limits.h +3 -2
- package/lib/clang/{15.0.2 → 16}/include/opencl-c-base.h +19 -0
- package/lib/clang/{15.0.2 → 16}/include/opencl-c.h +175 -145
- package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/emmintrin.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/mm_malloc.h +1 -1
- package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/mmintrin.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/pmmintrin.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/smmintrin.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/tmmintrin.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/xmmintrin.h +2 -2
- package/lib/clang/16/include/prfchiintrin.h +61 -0
- package/lib/clang/16/include/raointintrin.h +203 -0
- package/lib/clang/{15.0.2 → 16}/include/riscv_vector.h +62 -53
- package/lib/clang/{15.0.2 → 16}/include/smmintrin.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/stdarg.h +23 -7
- package/lib/clang/{15.0.2 → 16}/include/stdatomic.h +6 -3
- package/lib/clang/{15.0.2 → 16}/include/stdbool.h +2 -2
- package/lib/clang/{15.0.2 → 16}/include/stddef.h +8 -1
- package/lib/clang/{15.0.2 → 16}/include/stdint.h +158 -40
- package/lib/clang/{15.0.2 → 16}/include/stdnoreturn.h +1 -1
- package/lib/clang/{15.0.2 → 16}/include/unwind.h +2 -1
- package/lib/clang/{15.0.2 → 16}/include/velintrin.h +1 -1
- package/lib/clang/{15.0.2 → 16}/include/x86gprintrin.h +19 -7
- package/lib/clang/{15.0.2 → 16}/include/xmmintrin.h +1 -2
- package/package.json +6 -6
- package/lib/clang/15.0.2/include/hlsl/hlsl_intrinsics.h +0 -15
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_complex_builtins.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_device_functions.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_intrinsics.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_libdevice_declares.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_math.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_math_forward_declares.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_cuda_runtime_wrapper.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__clang_hip_cmath.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__wmmintrin_aes.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/__wmmintrin_pclmul.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/adxintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ammintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/arm64intr.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/arm_bf16.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/arm_cde.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/arm_cmse.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/arm_mve.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/armintr.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx2intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512bitalgintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512bwintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512cdintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512dqintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512erintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512ifmaintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512pfintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vbmi2intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vbmiintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vbmivlintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vlbitalgintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vlcdintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vldqintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vlintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vlvbmi2intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vlvnniintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vlvp2intersectintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vnniintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vp2intersectintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vpopcntdqintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avx512vpopcntdqvlintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/avxvnniintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/bmi2intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/bmiintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/builtins.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/cet.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/cetintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/clflushoptintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/clwbintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/clzerointrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/crc32intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/cuda_wrappers/algorithm +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/cuda_wrappers/new +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/f16cintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/fma4intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/fmaintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/hexagon_protos.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/hexagon_types.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/hlsl.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/hresetintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/htmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/hvx_hexagon_protos.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ia32intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/inttypes.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/iso646.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/keylockerintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/lwpintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/lzcntintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/mm3dnow.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/mm_malloc.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/mmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/module.modulemap +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/movdirintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/msa.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/mwaitxintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/nmmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/openmp_wrappers/complex +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/openmp_wrappers/complex.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/openmp_wrappers/complex_cmath.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/openmp_wrappers/math.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/openmp_wrappers/new +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/pkuintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/pmmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/popcntintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/bmi2intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/bmiintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/immintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/x86gprintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ppc_wrappers/x86intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/prfchwintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/rdpruintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/rdseedintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/rtmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/s390intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/serializeintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/sgxintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/shaintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/stdalign.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/tbmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/tgmath.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/tmmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/uintrintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/vadefs.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/vaesintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/varargs.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/vecintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/velintrin_approx.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/velintrin_gen.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/vpclmulqdqintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/wasm_simd128.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/wmmintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/x86intrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/xopintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/xsavecintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{15.0.2 → 16}/include/xtestintrin.h +0 -0
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# @cpp-linter/clang-tidy-win32-x64
|
|
2
2
|
|
|
3
|
-
The Windows x64 binary of clang-tidy from LLVM
|
|
3
|
+
The Windows x64 binary of clang-tidy from LLVM 16.0.3, for [`@cpp-linter/clang-tidy`](https://www.npmjs.com/package/@cpp-linter/clang-tidy).
|
|
4
4
|
|
|
5
5
|
Install `@cpp-linter/clang-tidy` instead of this package: npm picks the binary for your platform.
|
|
6
6
|
|
|
7
|
-
The binary is a static build from the release [`llvm-
|
|
7
|
+
The binary is a static build from the release [`llvm-16.0.3-2`](https://github.com/cpp-linter/clang-tools-static-binaries/releases/tag/llvm-16.0.3-2) of [cpp-linter/clang-tools-static-binaries](https://github.com/cpp-linter/clang-tools-static-binaries). LLVM is licensed under the Apache License v2.0 with LLVM Exceptions (see `LICENSE.TXT`).
|
package/bin/clang-tidy.exe
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
[diffend] Oversized file quarantined before diffing.
|
|
2
2
|
name: package/bin/clang-tidy.exe
|
|
3
|
-
size:
|
|
4
|
-
sha256:
|
|
3
|
+
size: 56313344 bytes
|
|
4
|
+
sha256: ab529f465e647397c98f2f5d18189d95c4b6d90b88da9133efdf63231d4a9c8c
|
|
@@ -666,6 +666,7 @@ __device__ static void __tex_fetch(__T *__ptr, cudaTextureObject_t __handle,
|
|
|
666
666
|
__tex_fetch_v4<__op>::template __run<__FetchT>(__handle, __args...));
|
|
667
667
|
}
|
|
668
668
|
|
|
669
|
+
#if CUDA_VERSION < 12000
|
|
669
670
|
// texture<> objects get magically converted into a texture reference. However,
|
|
670
671
|
// there's no way to convert them to cudaTextureObject_t on C++ level. So, we
|
|
671
672
|
// cheat a bit and use inline assembly to do it. It costs us an extra register
|
|
@@ -713,6 +714,7 @@ __tex_fetch(__DataT *, __RetT *__ptr,
|
|
|
713
714
|
__tex_fetch_v4<__op>::template __run<__FetchT>(
|
|
714
715
|
__tex_handle_to_obj(__handle), __args...));
|
|
715
716
|
}
|
|
717
|
+
#endif // CUDA_VERSION
|
|
716
718
|
} // namespace __cuda_tex
|
|
717
719
|
} // namespace
|
|
718
720
|
#pragma pop_macro("__ASM_OUT")
|
|
@@ -288,12 +288,17 @@ __llvm_amdgcn_rsq_f64(double __x) {
|
|
|
288
288
|
|
|
289
289
|
__device__ __attribute__((const)) _Float16 __ocml_ceil_f16(_Float16);
|
|
290
290
|
__device__ _Float16 __ocml_cos_f16(_Float16);
|
|
291
|
+
__device__ __attribute__((const)) _Float16 __ocml_cvtrtn_f16_f32(float);
|
|
292
|
+
__device__ __attribute__((const)) _Float16 __ocml_cvtrtp_f16_f32(float);
|
|
293
|
+
__device__ __attribute__((const)) _Float16 __ocml_cvtrtz_f16_f32(float);
|
|
291
294
|
__device__ __attribute__((pure)) _Float16 __ocml_exp_f16(_Float16);
|
|
292
295
|
__device__ __attribute__((pure)) _Float16 __ocml_exp10_f16(_Float16);
|
|
293
296
|
__device__ __attribute__((pure)) _Float16 __ocml_exp2_f16(_Float16);
|
|
294
297
|
__device__ __attribute__((const)) _Float16 __ocml_floor_f16(_Float16);
|
|
295
298
|
__device__ __attribute__((const)) _Float16 __ocml_fma_f16(_Float16, _Float16,
|
|
296
299
|
_Float16);
|
|
300
|
+
__device__ __attribute__((const)) _Float16 __ocml_fmax_f16(_Float16, _Float16);
|
|
301
|
+
__device__ __attribute__((const)) _Float16 __ocml_fmin_f16(_Float16, _Float16);
|
|
297
302
|
__device__ __attribute__((const)) _Float16 __ocml_fabs_f16(_Float16);
|
|
298
303
|
__device__ __attribute__((const)) int __ocml_isinf_f16(_Float16);
|
|
299
304
|
__device__ __attribute__((const)) int __ocml_isnan_f16(_Float16);
|
|
@@ -70,9 +70,9 @@ __DEVICE__ void __static_assert_equal_size() {
|
|
|
70
70
|
#endif
|
|
71
71
|
|
|
72
72
|
__DEVICE__
|
|
73
|
-
uint64_t __make_mantissa_base8(const char *__tagp) {
|
|
73
|
+
uint64_t __make_mantissa_base8(const char *__tagp __attribute__((nonnull))) {
|
|
74
74
|
uint64_t __r = 0;
|
|
75
|
-
while (__tagp) {
|
|
75
|
+
while (*__tagp != '\0') {
|
|
76
76
|
char __tmp = *__tagp;
|
|
77
77
|
|
|
78
78
|
if (__tmp >= '0' && __tmp <= '7')
|
|
@@ -87,9 +87,9 @@ uint64_t __make_mantissa_base8(const char *__tagp) {
|
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
__DEVICE__
|
|
90
|
-
uint64_t __make_mantissa_base10(const char *__tagp) {
|
|
90
|
+
uint64_t __make_mantissa_base10(const char *__tagp __attribute__((nonnull))) {
|
|
91
91
|
uint64_t __r = 0;
|
|
92
|
-
while (__tagp) {
|
|
92
|
+
while (*__tagp != '\0') {
|
|
93
93
|
char __tmp = *__tagp;
|
|
94
94
|
|
|
95
95
|
if (__tmp >= '0' && __tmp <= '9')
|
|
@@ -104,9 +104,9 @@ uint64_t __make_mantissa_base10(const char *__tagp) {
|
|
|
104
104
|
}
|
|
105
105
|
|
|
106
106
|
__DEVICE__
|
|
107
|
-
uint64_t __make_mantissa_base16(const char *__tagp) {
|
|
107
|
+
uint64_t __make_mantissa_base16(const char *__tagp __attribute__((nonnull))) {
|
|
108
108
|
uint64_t __r = 0;
|
|
109
|
-
while (__tagp) {
|
|
109
|
+
while (*__tagp != '\0') {
|
|
110
110
|
char __tmp = *__tagp;
|
|
111
111
|
|
|
112
112
|
if (__tmp >= '0' && __tmp <= '9')
|
|
@@ -125,10 +125,7 @@ uint64_t __make_mantissa_base16(const char *__tagp) {
|
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
__DEVICE__
|
|
128
|
-
uint64_t __make_mantissa(const char *__tagp) {
|
|
129
|
-
if (!__tagp)
|
|
130
|
-
return 0u;
|
|
131
|
-
|
|
128
|
+
uint64_t __make_mantissa(const char *__tagp __attribute__((nonnull))) {
|
|
132
129
|
if (*__tagp == '0') {
|
|
133
130
|
++__tagp;
|
|
134
131
|
|
|
@@ -233,7 +230,7 @@ __DEVICE__
|
|
|
233
230
|
float expm1f(float __x) { return __ocml_expm1_f32(__x); }
|
|
234
231
|
|
|
235
232
|
__DEVICE__
|
|
236
|
-
float fabsf(float __x) { return
|
|
233
|
+
float fabsf(float __x) { return __builtin_fabsf(__x); }
|
|
237
234
|
|
|
238
235
|
__DEVICE__
|
|
239
236
|
float fdimf(float __x, float __y) { return __ocml_fdim_f32(__x, __y); }
|
|
@@ -359,7 +356,7 @@ float modff(float __x, float *__iptr) {
|
|
|
359
356
|
}
|
|
360
357
|
|
|
361
358
|
__DEVICE__
|
|
362
|
-
float nanf(const char *__tagp) {
|
|
359
|
+
float nanf(const char *__tagp __attribute__((nonnull))) {
|
|
363
360
|
union {
|
|
364
361
|
float val;
|
|
365
362
|
struct ieee_float {
|
|
@@ -792,7 +789,7 @@ __DEVICE__
|
|
|
792
789
|
double expm1(double __x) { return __ocml_expm1_f64(__x); }
|
|
793
790
|
|
|
794
791
|
__DEVICE__
|
|
795
|
-
double fabs(double __x) { return
|
|
792
|
+
double fabs(double __x) { return __builtin_fabs(__x); }
|
|
796
793
|
|
|
797
794
|
__DEVICE__
|
|
798
795
|
double fdim(double __x, double __y) { return __ocml_fdim_f64(__x, __y); }
|
|
@@ -113,6 +113,7 @@ __attribute__((weak)) inline __device__ void free(void *__ptr) {
|
|
|
113
113
|
|
|
114
114
|
#include <__clang_hip_libdevice_declares.h>
|
|
115
115
|
#include <__clang_hip_math.h>
|
|
116
|
+
#include <__clang_hip_stdlib.h>
|
|
116
117
|
|
|
117
118
|
#if defined(__HIPCC_RTC__)
|
|
118
119
|
#include <__clang_hip_cmath.h>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/*===---- __clang_hip_stdlib.h - Device-side HIP math support --------------===
|
|
2
|
+
*
|
|
3
|
+
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
4
|
+
* See https://llvm.org/LICENSE.txt for license information.
|
|
5
|
+
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
6
|
+
*
|
|
7
|
+
*===-----------------------------------------------------------------------===
|
|
8
|
+
*/
|
|
9
|
+
#ifndef __CLANG_HIP_STDLIB_H__
|
|
10
|
+
|
|
11
|
+
#if !defined(__HIP__) && !defined(__OPENMP_AMDGCN__)
|
|
12
|
+
#error "This file is for HIP and OpenMP AMDGCN device compilation only."
|
|
13
|
+
#endif
|
|
14
|
+
|
|
15
|
+
#if !defined(__cplusplus)
|
|
16
|
+
|
|
17
|
+
#include <limits.h>
|
|
18
|
+
|
|
19
|
+
#ifdef __OPENMP_AMDGCN__
|
|
20
|
+
#define __DEVICE__ static inline __attribute__((always_inline, nothrow))
|
|
21
|
+
#else
|
|
22
|
+
#define __DEVICE__ static __device__ inline __attribute__((always_inline))
|
|
23
|
+
#endif
|
|
24
|
+
|
|
25
|
+
__DEVICE__
|
|
26
|
+
int abs(int __x) {
|
|
27
|
+
int __sgn = __x >> (sizeof(int) * CHAR_BIT - 1);
|
|
28
|
+
return (__x ^ __sgn) - __sgn;
|
|
29
|
+
}
|
|
30
|
+
__DEVICE__
|
|
31
|
+
long labs(long __x) {
|
|
32
|
+
long __sgn = __x >> (sizeof(long) * CHAR_BIT - 1);
|
|
33
|
+
return (__x ^ __sgn) - __sgn;
|
|
34
|
+
}
|
|
35
|
+
__DEVICE__
|
|
36
|
+
long long llabs(long long __x) {
|
|
37
|
+
long long __sgn = __x >> (sizeof(long long) * CHAR_BIT - 1);
|
|
38
|
+
return (__x ^ __sgn) - __sgn;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
#endif // !defined(__cplusplus)
|
|
42
|
+
|
|
43
|
+
#endif // #define __CLANG_HIP_STDLIB_H__
|
|
@@ -17323,32 +17323,32 @@ provided.
|
|
|
17323
17323
|
#define vec_ncipherlast_be __builtin_altivec_crypto_vncipherlast
|
|
17324
17324
|
|
|
17325
17325
|
#ifdef __VSX__
|
|
17326
|
-
static __inline__ vector unsigned
|
|
17327
|
-
__builtin_crypto_vsbox(vector unsigned
|
|
17326
|
+
static __inline__ vector unsigned char __attribute__((__always_inline__))
|
|
17327
|
+
__builtin_crypto_vsbox(vector unsigned char __a) {
|
|
17328
17328
|
return __builtin_altivec_crypto_vsbox(__a);
|
|
17329
17329
|
}
|
|
17330
17330
|
|
|
17331
|
-
static __inline__ vector unsigned
|
|
17332
|
-
__builtin_crypto_vcipher(vector unsigned
|
|
17333
|
-
vector unsigned
|
|
17331
|
+
static __inline__ vector unsigned char __attribute__((__always_inline__))
|
|
17332
|
+
__builtin_crypto_vcipher(vector unsigned char __a,
|
|
17333
|
+
vector unsigned char __b) {
|
|
17334
17334
|
return __builtin_altivec_crypto_vcipher(__a, __b);
|
|
17335
17335
|
}
|
|
17336
17336
|
|
|
17337
|
-
static __inline__ vector unsigned
|
|
17338
|
-
__builtin_crypto_vcipherlast(vector unsigned
|
|
17339
|
-
vector unsigned
|
|
17337
|
+
static __inline__ vector unsigned char __attribute__((__always_inline__))
|
|
17338
|
+
__builtin_crypto_vcipherlast(vector unsigned char __a,
|
|
17339
|
+
vector unsigned char __b) {
|
|
17340
17340
|
return __builtin_altivec_crypto_vcipherlast(__a, __b);
|
|
17341
17341
|
}
|
|
17342
17342
|
|
|
17343
|
-
static __inline__ vector unsigned
|
|
17344
|
-
__builtin_crypto_vncipher(vector unsigned
|
|
17345
|
-
vector unsigned
|
|
17343
|
+
static __inline__ vector unsigned char __attribute__((__always_inline__))
|
|
17344
|
+
__builtin_crypto_vncipher(vector unsigned char __a,
|
|
17345
|
+
vector unsigned char __b) {
|
|
17346
17346
|
return __builtin_altivec_crypto_vncipher(__a, __b);
|
|
17347
17347
|
}
|
|
17348
17348
|
|
|
17349
|
-
static __inline__ vector unsigned
|
|
17350
|
-
__builtin_crypto_vncipherlast(vector unsigned
|
|
17351
|
-
vector unsigned
|
|
17349
|
+
static __inline__ vector unsigned char __attribute__((__always_inline__))
|
|
17350
|
+
__builtin_crypto_vncipherlast(vector unsigned char __a,
|
|
17351
|
+
vector unsigned char __b) {
|
|
17352
17352
|
return __builtin_altivec_crypto_vncipherlast(__a, __b);
|
|
17353
17353
|
}
|
|
17354
17354
|
#endif /* __VSX__ */
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/*===------------- amxfp16intrin.h - AMX_FP16 intrinsics -*- C++ -*---------===
|
|
2
|
+
*
|
|
3
|
+
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
4
|
+
* See https://llvm.org/LICENSE.txt for license information.
|
|
5
|
+
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
6
|
+
*
|
|
7
|
+
*===------------------------------------------------------------------------===
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
#ifndef __IMMINTRIN_H
|
|
11
|
+
#error "Never use <amxfp16intrin.h> directly; use <immintrin.h> instead."
|
|
12
|
+
#endif /* __IMMINTRIN_H */
|
|
13
|
+
|
|
14
|
+
#ifndef __AMX_FP16INTRIN_H
|
|
15
|
+
#define __AMX_FP16INTRIN_H
|
|
16
|
+
#ifdef __x86_64__
|
|
17
|
+
|
|
18
|
+
/// Compute dot-product of FP16 (16-bit) floating-point pairs in tiles \a a
|
|
19
|
+
/// and \a b, accumulating the intermediate single-precision (32-bit)
|
|
20
|
+
/// floating-point elements with elements in \a dst, and store the 32-bit
|
|
21
|
+
/// result back to tile \a dst.
|
|
22
|
+
///
|
|
23
|
+
/// \headerfile <immintrin.h>
|
|
24
|
+
///
|
|
25
|
+
/// \code
|
|
26
|
+
/// void _tile_dpfp16ps (__tile dst, __tile a, __tile b)
|
|
27
|
+
/// \endcode
|
|
28
|
+
///
|
|
29
|
+
/// \code{.operation}
|
|
30
|
+
/// FOR m := 0 TO dst.rows - 1
|
|
31
|
+
/// tmp := dst.row[m]
|
|
32
|
+
/// FOR k := 0 TO (a.colsb / 4) - 1
|
|
33
|
+
/// FOR n := 0 TO (dst.colsb / 4) - 1
|
|
34
|
+
/// tmp.fp32[n] += FP32(a.row[m].fp16[2*k+0]) *
|
|
35
|
+
/// FP32(b.row[k].fp16[2*n+0])
|
|
36
|
+
/// tmp.fp32[n] += FP32(a.row[m].fp16[2*k+1]) *
|
|
37
|
+
/// FP32(b.row[k].fp16[2*n+1])
|
|
38
|
+
/// ENDFOR
|
|
39
|
+
/// ENDFOR
|
|
40
|
+
/// write_row_and_zero(dst, m, tmp, dst.colsb)
|
|
41
|
+
/// ENDFOR
|
|
42
|
+
/// zero_upper_rows(dst, dst.rows)
|
|
43
|
+
/// zero_tileconfig_start()
|
|
44
|
+
/// \endcode
|
|
45
|
+
///
|
|
46
|
+
/// This intrinsic corresponds to the \c TDPFP16PS instruction.
|
|
47
|
+
///
|
|
48
|
+
/// \param dst
|
|
49
|
+
/// The destination tile. Max size is 1024 Bytes.
|
|
50
|
+
/// \param a
|
|
51
|
+
/// The 1st source tile. Max size is 1024 Bytes.
|
|
52
|
+
/// \param b
|
|
53
|
+
/// The 2nd source tile. Max size is 1024 Bytes.
|
|
54
|
+
#define _tile_dpfp16ps(dst, a, b) \
|
|
55
|
+
__builtin_ia32_tdpfp16ps(dst, a, b)
|
|
56
|
+
|
|
57
|
+
#endif /* __x86_64__ */
|
|
58
|
+
#endif /* __AMX_FP16INTRIN_H */
|
|
@@ -22,6 +22,8 @@
|
|
|
22
22
|
__attribute__((__always_inline__, __nodebug__, __target__("amx-int8")))
|
|
23
23
|
#define __DEFAULT_FN_ATTRS_BF16 \
|
|
24
24
|
__attribute__((__always_inline__, __nodebug__, __target__("amx-bf16")))
|
|
25
|
+
#define __DEFAULT_FN_ATTRS_FP16 \
|
|
26
|
+
__attribute__((__always_inline__, __nodebug__, __target__("amx-fp16")))
|
|
25
27
|
|
|
26
28
|
/// Load tile configuration from a 64-byte memory location specified by
|
|
27
29
|
/// "mem_addr". The tile configuration includes the tile type palette, the
|
|
@@ -290,6 +292,13 @@ _tile_dpbf16ps_internal(unsigned short m, unsigned short n, unsigned short k,
|
|
|
290
292
|
return __builtin_ia32_tdpbf16ps_internal(m, n, k, dst, src1, src2);
|
|
291
293
|
}
|
|
292
294
|
|
|
295
|
+
/// This is internal intrinsic. C/C++ user should avoid calling it directly.
|
|
296
|
+
static __inline__ _tile1024i __DEFAULT_FN_ATTRS_FP16
|
|
297
|
+
_tile_dpfp16ps_internal(unsigned short m, unsigned short n, unsigned short k,
|
|
298
|
+
_tile1024i dst, _tile1024i src1, _tile1024i src2) {
|
|
299
|
+
return __builtin_ia32_tdpfp16ps_internal(m, n, k, dst, src1, src2);
|
|
300
|
+
}
|
|
301
|
+
|
|
293
302
|
/// This struct pack the shape and tile data together for user. We suggest
|
|
294
303
|
/// initializing the struct as early as possible, because compiler depends
|
|
295
304
|
/// on the shape information to do configure. The constant value is preferred
|
|
@@ -484,9 +493,32 @@ static __inline__ void __tile_dpbf16ps(__tile1024i *dst, __tile1024i src0,
|
|
|
484
493
|
src0.tile, src1.tile);
|
|
485
494
|
}
|
|
486
495
|
|
|
496
|
+
/// Compute dot-product of FP16 (16-bit) floating-point pairs in tiles src0 and
|
|
497
|
+
/// src1, accumulating the intermediate single-precision (32-bit) floating-point
|
|
498
|
+
/// elements with elements in "dst", and store the 32-bit result back to tile
|
|
499
|
+
/// "dst".
|
|
500
|
+
///
|
|
501
|
+
/// \headerfile <immintrin.h>
|
|
502
|
+
///
|
|
503
|
+
/// This intrinsic corresponds to the <c> TDPFP16PS </c> instruction.
|
|
504
|
+
///
|
|
505
|
+
/// \param dst
|
|
506
|
+
/// The destination tile. Max size is 1024 Bytes.
|
|
507
|
+
/// \param src0
|
|
508
|
+
/// The 1st source tile. Max size is 1024 Bytes.
|
|
509
|
+
/// \param src1
|
|
510
|
+
/// The 2nd source tile. Max size is 1024 Bytes.
|
|
511
|
+
__DEFAULT_FN_ATTRS_FP16
|
|
512
|
+
static __inline__ void __tile_dpfp16ps(__tile1024i *dst, __tile1024i src0,
|
|
513
|
+
__tile1024i src1) {
|
|
514
|
+
dst->tile = _tile_dpfp16ps_internal(src0.row, src1.col, src0.col, dst->tile,
|
|
515
|
+
src0.tile, src1.tile);
|
|
516
|
+
}
|
|
517
|
+
|
|
487
518
|
#undef __DEFAULT_FN_ATTRS_TILE
|
|
488
519
|
#undef __DEFAULT_FN_ATTRS_INT8
|
|
489
520
|
#undef __DEFAULT_FN_ATTRS_BF16
|
|
521
|
+
#undef __DEFAULT_FN_ATTRS_FP16
|
|
490
522
|
|
|
491
523
|
#endif /* __x86_64__ */
|
|
492
524
|
#endif /* __AMXINTRIN_H */
|