@cpp-linter/clang-tidy-darwin-x64 13.0.0 → 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.
Files changed (203) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_complex_builtins.h +3 -3
  4. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_intrinsics.h +38 -6
  5. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_libdevice_declares.h +6 -0
  6. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_math.h +1 -1
  7. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_runtime_wrapper.h +62 -7
  8. package/lib/clang/16/include/__clang_cuda_texture_intrinsics.h +742 -0
  9. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_libdevice_declares.h +5 -0
  10. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_math.h +10 -13
  11. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_runtime_wrapper.h +18 -4
  12. package/lib/clang/16/include/__clang_hip_stdlib.h +43 -0
  13. package/lib/clang/{13.0.0 → 16}/include/__wmmintrin_aes.h +1 -1
  14. package/lib/clang/{13.0.0 → 16}/include/__wmmintrin_pclmul.h +10 -10
  15. package/lib/clang/{13.0.0 → 16}/include/altivec.h +691 -342
  16. package/lib/clang/{13.0.0 → 16}/include/ammintrin.h +4 -0
  17. package/lib/clang/16/include/amxfp16intrin.h +58 -0
  18. package/lib/clang/{13.0.0 → 16}/include/amxintrin.h +49 -18
  19. package/lib/clang/{13.0.0 → 16}/include/arm_acle.h +80 -73
  20. package/lib/clang/{13.0.0 → 16}/include/arm_fp16.h +90 -90
  21. package/lib/clang/{13.0.0 → 16}/include/arm_neon.h +28607 -28779
  22. package/lib/clang/16/include/arm_neon_sve_bridge.h +182 -0
  23. package/lib/clang/{13.0.0 → 16}/include/arm_sve.h +7848 -7996
  24. package/lib/clang/{13.0.0 → 16}/include/avx2intrin.h +189 -189
  25. package/lib/clang/{13.0.0 → 16}/include/avx512bf16intrin.h +21 -18
  26. package/lib/clang/{13.0.0 → 16}/include/avx512bwintrin.h +83 -83
  27. package/lib/clang/{13.0.0 → 16}/include/avx512dqintrin.h +365 -365
  28. package/lib/clang/{13.0.0 → 16}/include/avx512erintrin.h +102 -102
  29. package/lib/clang/{13.0.0 → 16}/include/avx512fintrin.h +1627 -1620
  30. package/lib/clang/16/include/avx512fp16intrin.h +3346 -0
  31. package/lib/clang/{13.0.0 → 16}/include/avx512ifmavlintrin.h +13 -27
  32. package/lib/clang/{13.0.0 → 16}/include/avx512vbmi2intrin.h +48 -48
  33. package/lib/clang/{13.0.0 → 16}/include/avx512vlbf16intrin.h +82 -41
  34. package/lib/clang/{13.0.0 → 16}/include/avx512vlbwintrin.h +454 -102
  35. package/lib/clang/{13.0.0 → 16}/include/avx512vldqintrin.h +134 -134
  36. package/lib/clang/16/include/avx512vlfp16intrin.h +2071 -0
  37. package/lib/clang/{13.0.0 → 16}/include/avx512vlintrin.h +596 -610
  38. package/lib/clang/{13.0.0 → 16}/include/avx512vlvbmi2intrin.h +96 -96
  39. package/lib/clang/{13.0.0 → 16}/include/avx512vlvnniintrin.h +24 -24
  40. package/lib/clang/16/include/avxifmaintrin.h +177 -0
  41. package/lib/clang/{13.0.0 → 16}/include/avxintrin.h +266 -224
  42. package/lib/clang/16/include/avxneconvertintrin.h +484 -0
  43. package/lib/clang/16/include/avxvnniint8intrin.h +471 -0
  44. package/lib/clang/{13.0.0 → 16}/include/avxvnniintrin.h +16 -16
  45. package/lib/clang/{13.0.0 → 16}/include/bmiintrin.h +6 -2
  46. package/lib/clang/{13.0.0 → 16}/include/cetintrin.h +20 -4
  47. package/lib/clang/16/include/cmpccxaddintrin.h +70 -0
  48. package/lib/clang/{13.0.0 → 16}/include/cpuid.h +14 -2
  49. package/lib/clang/16/include/crc32intrin.h +100 -0
  50. package/lib/clang/16/include/cuda_wrappers/cmath +90 -0
  51. package/lib/clang/{13.0.0 → 16}/include/emmintrin.h +573 -779
  52. package/lib/clang/{13.0.0 → 16}/include/f16cintrin.h +4 -4
  53. package/lib/clang/{13.0.0 → 16}/include/float.h +22 -6
  54. package/lib/clang/{13.0.0 → 16}/include/gfniintrin.h +54 -53
  55. package/lib/clang/{13.0.0 → 16}/include/hexagon_protos.h +0 -11
  56. package/lib/clang/{13.0.0 → 16}/include/hexagon_types.h +0 -32
  57. package/lib/clang/16/include/hlsl/hlsl_basic_types.h +67 -0
  58. package/lib/clang/16/include/hlsl/hlsl_intrinsics.h +223 -0
  59. package/lib/clang/16/include/hlsl.h +15 -0
  60. package/lib/clang/{13.0.0 → 16}/include/hresetintrin.h +2 -2
  61. package/lib/clang/{13.0.0 → 16}/include/hvx_hexagon_protos.h +1200 -409
  62. package/lib/clang/{13.0.0 → 16}/include/ia32intrin.h +17 -17
  63. package/lib/clang/{13.0.0 → 16}/include/immintrin.h +74 -24
  64. package/lib/clang/{13.0.0 → 16}/include/intrin.h +34 -35
  65. package/lib/clang/{13.0.0 → 16}/include/keylockerintrin.h +24 -30
  66. package/lib/clang/16/include/larchintrin.h +234 -0
  67. package/lib/clang/{13.0.0 → 16}/include/limits.h +22 -1
  68. package/lib/clang/{13.0.0 → 16}/include/mm_malloc.h +3 -3
  69. package/lib/clang/{13.0.0 → 16}/include/mmintrin.h +4 -0
  70. package/lib/clang/{13.0.0 → 16}/include/nmmintrin.h +4 -0
  71. package/lib/clang/{13.0.0 → 16}/include/opencl-c-base.h +98 -11
  72. package/lib/clang/{13.0.0 → 16}/include/opencl-c.h +7252 -6208
  73. package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex +10 -1
  74. package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex.h +9 -0
  75. package/lib/clang/{13.0.0 → 16}/include/pmmintrin.h +5 -1
  76. package/lib/clang/16/include/ppc_wrappers/bmi2intrin.h +134 -0
  77. package/lib/clang/16/include/ppc_wrappers/bmiintrin.h +165 -0
  78. package/lib/clang/16/include/ppc_wrappers/emmintrin.h +2268 -0
  79. package/lib/clang/16/include/ppc_wrappers/immintrin.h +27 -0
  80. package/lib/clang/{13.0.0 → 16}/include/ppc_wrappers/mm_malloc.h +12 -17
  81. package/lib/clang/{13.0.0 → 16}/include/ppc_wrappers/mmintrin.h +389 -386
  82. package/lib/clang/16/include/ppc_wrappers/pmmintrin.h +145 -0
  83. package/lib/clang/16/include/ppc_wrappers/smmintrin.h +663 -0
  84. package/lib/clang/16/include/ppc_wrappers/tmmintrin.h +453 -0
  85. package/lib/clang/{13.0.0/include/stdnoreturn.h → 16/include/ppc_wrappers/x86gprintrin.h} +7 -6
  86. package/lib/clang/16/include/ppc_wrappers/x86intrin.h +28 -0
  87. package/lib/clang/16/include/ppc_wrappers/xmmintrin.h +1827 -0
  88. package/lib/clang/16/include/prfchiintrin.h +61 -0
  89. package/lib/clang/{13.0.0 → 16}/include/prfchwintrin.h +5 -2
  90. package/lib/clang/16/include/raointintrin.h +203 -0
  91. package/lib/clang/16/include/rdpruintrin.h +57 -0
  92. package/lib/clang/{13.0.0 → 16}/include/rdseedintrin.h +3 -3
  93. package/lib/clang/16/include/riscv_vector.h +211 -0
  94. package/lib/clang/{13.0.0 → 16}/include/rtmintrin.h +1 -1
  95. package/lib/clang/{13.0.0 → 16}/include/smmintrin.h +260 -362
  96. package/lib/clang/{13.0.0 → 16}/include/stdarg.h +23 -7
  97. package/lib/clang/{13.0.0 → 16}/include/stdatomic.h +14 -1
  98. package/lib/clang/{13.0.0 → 16}/include/stdbool.h +10 -7
  99. package/lib/clang/{13.0.0 → 16}/include/stddef.h +9 -2
  100. package/lib/clang/{13.0.0 → 16}/include/stdint.h +311 -25
  101. package/lib/clang/16/include/stdnoreturn.h +29 -0
  102. package/lib/clang/{13.0.0 → 16}/include/tmmintrin.h +10 -6
  103. package/lib/clang/{13.0.0 → 16}/include/uintrintrin.h +8 -8
  104. package/lib/clang/{13.0.0 → 16}/include/unwind.h +12 -7
  105. package/lib/clang/{13.0.0 → 16}/include/vaesintrin.h +1 -1
  106. package/lib/clang/16/include/velintrin.h +71 -0
  107. package/lib/clang/16/include/velintrin_approx.h +120 -0
  108. package/lib/clang/16/include/velintrin_gen.h +1257 -0
  109. package/lib/clang/{13.0.0 → 16}/include/vpclmulqdqintrin.h +6 -6
  110. package/lib/clang/{13.0.0 → 16}/include/wasm_simd128.h +169 -26
  111. package/lib/clang/{13.0.0 → 16}/include/wmmintrin.h +4 -0
  112. package/lib/clang/16/include/x86gprintrin.h +65 -0
  113. package/lib/clang/{13.0.0 → 16}/include/x86intrin.h +4 -0
  114. package/lib/clang/{13.0.0 → 16}/include/xmmintrin.h +19 -10
  115. package/lib/clang/{13.0.0 → 16}/include/xopintrin.h +31 -31
  116. package/package.json +6 -6
  117. package/lib/clang/13.0.0/include/ppc_wrappers/emmintrin.h +0 -2324
  118. package/lib/clang/13.0.0/include/ppc_wrappers/pmmintrin.h +0 -150
  119. package/lib/clang/13.0.0/include/ppc_wrappers/smmintrin.h +0 -109
  120. package/lib/clang/13.0.0/include/ppc_wrappers/tmmintrin.h +0 -495
  121. package/lib/clang/13.0.0/include/ppc_wrappers/xmmintrin.h +0 -1843
  122. package/lib/clang/13.0.0/include/riscv_vector.h +0 -123865
  123. package/lib/clang/13.0.0/include/x86gprintrin.h +0 -23
  124. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_builtin_vars.h +0 -0
  125. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_cmath.h +0 -0
  126. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_device_functions.h +0 -0
  127. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_math_forward_declares.h +0 -0
  128. /package/lib/clang/{13.0.0 → 16}/include/__clang_hip_cmath.h +0 -0
  129. /package/lib/clang/{13.0.0 → 16}/include/__stddef_max_align_t.h +0 -0
  130. /package/lib/clang/{13.0.0 → 16}/include/adxintrin.h +0 -0
  131. /package/lib/clang/{13.0.0 → 16}/include/arm64intr.h +0 -0
  132. /package/lib/clang/{13.0.0 → 16}/include/arm_bf16.h +0 -0
  133. /package/lib/clang/{13.0.0 → 16}/include/arm_cde.h +0 -0
  134. /package/lib/clang/{13.0.0 → 16}/include/arm_cmse.h +0 -0
  135. /package/lib/clang/{13.0.0 → 16}/include/arm_mve.h +0 -0
  136. /package/lib/clang/{13.0.0 → 16}/include/armintr.h +0 -0
  137. /package/lib/clang/{13.0.0 → 16}/include/avx512bitalgintrin.h +0 -0
  138. /package/lib/clang/{13.0.0 → 16}/include/avx512cdintrin.h +0 -0
  139. /package/lib/clang/{13.0.0 → 16}/include/avx512ifmaintrin.h +0 -0
  140. /package/lib/clang/{13.0.0 → 16}/include/avx512pfintrin.h +0 -0
  141. /package/lib/clang/{13.0.0 → 16}/include/avx512vbmiintrin.h +0 -0
  142. /package/lib/clang/{13.0.0 → 16}/include/avx512vbmivlintrin.h +0 -0
  143. /package/lib/clang/{13.0.0 → 16}/include/avx512vlbitalgintrin.h +0 -0
  144. /package/lib/clang/{13.0.0 → 16}/include/avx512vlcdintrin.h +0 -0
  145. /package/lib/clang/{13.0.0 → 16}/include/avx512vlvp2intersectintrin.h +0 -0
  146. /package/lib/clang/{13.0.0 → 16}/include/avx512vnniintrin.h +0 -0
  147. /package/lib/clang/{13.0.0 → 16}/include/avx512vp2intersectintrin.h +0 -0
  148. /package/lib/clang/{13.0.0 → 16}/include/avx512vpopcntdqintrin.h +0 -0
  149. /package/lib/clang/{13.0.0 → 16}/include/avx512vpopcntdqvlintrin.h +0 -0
  150. /package/lib/clang/{13.0.0 → 16}/include/bmi2intrin.h +0 -0
  151. /package/lib/clang/{13.0.0 → 16}/include/builtins.h +0 -0
  152. /package/lib/clang/{13.0.0 → 16}/include/cet.h +0 -0
  153. /package/lib/clang/{13.0.0 → 16}/include/cldemoteintrin.h +0 -0
  154. /package/lib/clang/{13.0.0 → 16}/include/clflushoptintrin.h +0 -0
  155. /package/lib/clang/{13.0.0 → 16}/include/clwbintrin.h +0 -0
  156. /package/lib/clang/{13.0.0 → 16}/include/clzerointrin.h +0 -0
  157. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/algorithm +0 -0
  158. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/complex +0 -0
  159. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/new +0 -0
  160. /package/lib/clang/{13.0.0 → 16}/include/enqcmdintrin.h +0 -0
  161. /package/lib/clang/{13.0.0 → 16}/include/fma4intrin.h +0 -0
  162. /package/lib/clang/{13.0.0 → 16}/include/fmaintrin.h +0 -0
  163. /package/lib/clang/{13.0.0 → 16}/include/fxsrintrin.h +0 -0
  164. /package/lib/clang/{13.0.0 → 16}/include/hexagon_circ_brev_intrinsics.h +0 -0
  165. /package/lib/clang/{13.0.0 → 16}/include/htmintrin.h +0 -0
  166. /package/lib/clang/{13.0.0 → 16}/include/htmxlintrin.h +0 -0
  167. /package/lib/clang/{13.0.0 → 16}/include/inttypes.h +0 -0
  168. /package/lib/clang/{13.0.0 → 16}/include/invpcidintrin.h +0 -0
  169. /package/lib/clang/{13.0.0 → 16}/include/iso646.h +0 -0
  170. /package/lib/clang/{13.0.0 → 16}/include/lwpintrin.h +0 -0
  171. /package/lib/clang/{13.0.0 → 16}/include/lzcntintrin.h +0 -0
  172. /package/lib/clang/{13.0.0 → 16}/include/mm3dnow.h +0 -0
  173. /package/lib/clang/{13.0.0 → 16}/include/module.modulemap +0 -0
  174. /package/lib/clang/{13.0.0 → 16}/include/movdirintrin.h +0 -0
  175. /package/lib/clang/{13.0.0 → 16}/include/msa.h +0 -0
  176. /package/lib/clang/{13.0.0 → 16}/include/mwaitxintrin.h +0 -0
  177. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  178. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/cmath +0 -0
  179. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex_cmath.h +0 -0
  180. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/math.h +0 -0
  181. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/new +0 -0
  182. /package/lib/clang/{13.0.0 → 16}/include/pconfigintrin.h +0 -0
  183. /package/lib/clang/{13.0.0 → 16}/include/pkuintrin.h +0 -0
  184. /package/lib/clang/{13.0.0 → 16}/include/popcntintrin.h +0 -0
  185. /package/lib/clang/{13.0.0 → 16}/include/ptwriteintrin.h +0 -0
  186. /package/lib/clang/{13.0.0 → 16}/include/s390intrin.h +0 -0
  187. /package/lib/clang/{13.0.0 → 16}/include/serializeintrin.h +0 -0
  188. /package/lib/clang/{13.0.0 → 16}/include/sgxintrin.h +0 -0
  189. /package/lib/clang/{13.0.0 → 16}/include/shaintrin.h +0 -0
  190. /package/lib/clang/{13.0.0 → 16}/include/stdalign.h +0 -0
  191. /package/lib/clang/{13.0.0 → 16}/include/tbmintrin.h +0 -0
  192. /package/lib/clang/{13.0.0 → 16}/include/tgmath.h +0 -0
  193. /package/lib/clang/{13.0.0 → 16}/include/tsxldtrkintrin.h +0 -0
  194. /package/lib/clang/{13.0.0 → 16}/include/vadefs.h +0 -0
  195. /package/lib/clang/{13.0.0 → 16}/include/varargs.h +0 -0
  196. /package/lib/clang/{13.0.0 → 16}/include/vecintrin.h +0 -0
  197. /package/lib/clang/{13.0.0 → 16}/include/waitpkgintrin.h +0 -0
  198. /package/lib/clang/{13.0.0 → 16}/include/wbnoinvdintrin.h +0 -0
  199. /package/lib/clang/{13.0.0 → 16}/include/xsavecintrin.h +0 -0
  200. /package/lib/clang/{13.0.0 → 16}/include/xsaveintrin.h +0 -0
  201. /package/lib/clang/{13.0.0 → 16}/include/xsaveoptintrin.h +0 -0
  202. /package/lib/clang/{13.0.0 → 16}/include/xsavesintrin.h +0 -0
  203. /package/lib/clang/{13.0.0 → 16}/include/xtestintrin.h +0 -0
@@ -18,14 +18,21 @@
18
18
  #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(128)))
19
19
  #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(256)))
20
20
 
21
+ #define _mm_madd52hi_epu64(X, Y, Z) \
22
+ ((__m128i)__builtin_ia32_vpmadd52huq128((__v2di)(X), (__v2di)(Y), \
23
+ (__v2di)(Z)))
21
24
 
25
+ #define _mm256_madd52hi_epu64(X, Y, Z) \
26
+ ((__m256i)__builtin_ia32_vpmadd52huq256((__v4di)(X), (__v4di)(Y), \
27
+ (__v4di)(Z)))
22
28
 
23
- static __inline__ __m128i __DEFAULT_FN_ATTRS128
24
- _mm_madd52hi_epu64 (__m128i __X, __m128i __Y, __m128i __Z)
25
- {
26
- return (__m128i)__builtin_ia32_vpmadd52huq128((__v2di) __X, (__v2di) __Y,
27
- (__v2di) __Z);
28
- }
29
+ #define _mm_madd52lo_epu64(X, Y, Z) \
30
+ ((__m128i)__builtin_ia32_vpmadd52luq128((__v2di)(X), (__v2di)(Y), \
31
+ (__v2di)(Z)))
32
+
33
+ #define _mm256_madd52lo_epu64(X, Y, Z) \
34
+ ((__m256i)__builtin_ia32_vpmadd52luq256((__v4di)(X), (__v4di)(Y), \
35
+ (__v4di)(Z)))
29
36
 
30
37
  static __inline__ __m128i __DEFAULT_FN_ATTRS128
31
38
  _mm_mask_madd52hi_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y)
@@ -43,13 +50,6 @@ _mm_maskz_madd52hi_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z)
43
50
  (__v2di)_mm_setzero_si128());
44
51
  }
45
52
 
46
- static __inline__ __m256i __DEFAULT_FN_ATTRS256
47
- _mm256_madd52hi_epu64 (__m256i __X, __m256i __Y, __m256i __Z)
48
- {
49
- return (__m256i)__builtin_ia32_vpmadd52huq256((__v4di)__X, (__v4di)__Y,
50
- (__v4di)__Z);
51
- }
52
-
53
53
  static __inline__ __m256i __DEFAULT_FN_ATTRS256
54
54
  _mm256_mask_madd52hi_epu64 (__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y)
55
55
  {
@@ -66,13 +66,6 @@ _mm256_maskz_madd52hi_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z
66
66
  (__v4di)_mm256_setzero_si256());
67
67
  }
68
68
 
69
- static __inline__ __m128i __DEFAULT_FN_ATTRS128
70
- _mm_madd52lo_epu64 (__m128i __X, __m128i __Y, __m128i __Z)
71
- {
72
- return (__m128i)__builtin_ia32_vpmadd52luq128((__v2di)__X, (__v2di)__Y,
73
- (__v2di)__Z);
74
- }
75
-
76
69
  static __inline__ __m128i __DEFAULT_FN_ATTRS128
77
70
  _mm_mask_madd52lo_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y)
78
71
  {
@@ -89,13 +82,6 @@ _mm_maskz_madd52lo_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z)
89
82
  (__v2di)_mm_setzero_si128());
90
83
  }
91
84
 
92
- static __inline__ __m256i __DEFAULT_FN_ATTRS256
93
- _mm256_madd52lo_epu64 (__m256i __X, __m256i __Y, __m256i __Z)
94
- {
95
- return (__m256i)__builtin_ia32_vpmadd52luq256((__v4di)__X, (__v4di)__Y,
96
- (__v4di)__Z);
97
- }
98
-
99
85
  static __inline__ __m256i __DEFAULT_FN_ATTRS256
100
86
  _mm256_mask_madd52lo_epu64 (__m256i __W, __mmask8 __M, __m256i __X, __m256i __Y)
101
87
  {
@@ -129,88 +129,88 @@ _mm512_maskz_expandloadu_epi8(__mmask64 __U, void const *__P)
129
129
  }
130
130
 
131
131
  #define _mm512_shldi_epi64(A, B, I) \
132
- (__m512i)__builtin_ia32_vpshldq512((__v8di)(__m512i)(A), \
133
- (__v8di)(__m512i)(B), (int)(I))
132
+ ((__m512i)__builtin_ia32_vpshldq512((__v8di)(__m512i)(A), \
133
+ (__v8di)(__m512i)(B), (int)(I)))
134
134
 
135
135
  #define _mm512_mask_shldi_epi64(S, U, A, B, I) \
136
- (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
137
- (__v8di)_mm512_shldi_epi64((A), (B), (I)), \
138
- (__v8di)(__m512i)(S))
136
+ ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
137
+ (__v8di)_mm512_shldi_epi64((A), (B), (I)), \
138
+ (__v8di)(__m512i)(S)))
139
139
 
140
140
  #define _mm512_maskz_shldi_epi64(U, A, B, I) \
141
- (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
142
- (__v8di)_mm512_shldi_epi64((A), (B), (I)), \
143
- (__v8di)_mm512_setzero_si512())
141
+ ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
142
+ (__v8di)_mm512_shldi_epi64((A), (B), (I)), \
143
+ (__v8di)_mm512_setzero_si512()))
144
144
 
145
145
  #define _mm512_shldi_epi32(A, B, I) \
146
- (__m512i)__builtin_ia32_vpshldd512((__v16si)(__m512i)(A), \
147
- (__v16si)(__m512i)(B), (int)(I))
146
+ ((__m512i)__builtin_ia32_vpshldd512((__v16si)(__m512i)(A), \
147
+ (__v16si)(__m512i)(B), (int)(I)))
148
148
 
149
149
  #define _mm512_mask_shldi_epi32(S, U, A, B, I) \
150
- (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
151
- (__v16si)_mm512_shldi_epi32((A), (B), (I)), \
152
- (__v16si)(__m512i)(S))
150
+ ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
151
+ (__v16si)_mm512_shldi_epi32((A), (B), (I)), \
152
+ (__v16si)(__m512i)(S)))
153
153
 
154
154
  #define _mm512_maskz_shldi_epi32(U, A, B, I) \
155
- (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
156
- (__v16si)_mm512_shldi_epi32((A), (B), (I)), \
157
- (__v16si)_mm512_setzero_si512())
155
+ ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
156
+ (__v16si)_mm512_shldi_epi32((A), (B), (I)), \
157
+ (__v16si)_mm512_setzero_si512()))
158
158
 
159
159
  #define _mm512_shldi_epi16(A, B, I) \
160
- (__m512i)__builtin_ia32_vpshldw512((__v32hi)(__m512i)(A), \
161
- (__v32hi)(__m512i)(B), (int)(I))
160
+ ((__m512i)__builtin_ia32_vpshldw512((__v32hi)(__m512i)(A), \
161
+ (__v32hi)(__m512i)(B), (int)(I)))
162
162
 
163
163
  #define _mm512_mask_shldi_epi16(S, U, A, B, I) \
164
- (__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
165
- (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \
166
- (__v32hi)(__m512i)(S))
164
+ ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
165
+ (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \
166
+ (__v32hi)(__m512i)(S)))
167
167
 
168
168
  #define _mm512_maskz_shldi_epi16(U, A, B, I) \
169
- (__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
170
- (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \
171
- (__v32hi)_mm512_setzero_si512())
169
+ ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
170
+ (__v32hi)_mm512_shldi_epi16((A), (B), (I)), \
171
+ (__v32hi)_mm512_setzero_si512()))
172
172
 
173
173
  #define _mm512_shrdi_epi64(A, B, I) \
174
- (__m512i)__builtin_ia32_vpshrdq512((__v8di)(__m512i)(A), \
175
- (__v8di)(__m512i)(B), (int)(I))
174
+ ((__m512i)__builtin_ia32_vpshrdq512((__v8di)(__m512i)(A), \
175
+ (__v8di)(__m512i)(B), (int)(I)))
176
176
 
177
177
  #define _mm512_mask_shrdi_epi64(S, U, A, B, I) \
178
- (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
179
- (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \
180
- (__v8di)(__m512i)(S))
178
+ ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
179
+ (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \
180
+ (__v8di)(__m512i)(S)))
181
181
 
182
182
  #define _mm512_maskz_shrdi_epi64(U, A, B, I) \
183
- (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
184
- (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \
185
- (__v8di)_mm512_setzero_si512())
183
+ ((__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
184
+ (__v8di)_mm512_shrdi_epi64((A), (B), (I)), \
185
+ (__v8di)_mm512_setzero_si512()))
186
186
 
187
187
  #define _mm512_shrdi_epi32(A, B, I) \
188
- (__m512i)__builtin_ia32_vpshrdd512((__v16si)(__m512i)(A), \
189
- (__v16si)(__m512i)(B), (int)(I))
188
+ ((__m512i)__builtin_ia32_vpshrdd512((__v16si)(__m512i)(A), \
189
+ (__v16si)(__m512i)(B), (int)(I)))
190
190
 
191
191
  #define _mm512_mask_shrdi_epi32(S, U, A, B, I) \
192
- (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
193
- (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \
194
- (__v16si)(__m512i)(S))
192
+ ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
193
+ (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \
194
+ (__v16si)(__m512i)(S)))
195
195
 
196
196
  #define _mm512_maskz_shrdi_epi32(U, A, B, I) \
197
- (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
198
- (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \
199
- (__v16si)_mm512_setzero_si512())
197
+ ((__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
198
+ (__v16si)_mm512_shrdi_epi32((A), (B), (I)), \
199
+ (__v16si)_mm512_setzero_si512()))
200
200
 
201
201
  #define _mm512_shrdi_epi16(A, B, I) \
202
- (__m512i)__builtin_ia32_vpshrdw512((__v32hi)(__m512i)(A), \
203
- (__v32hi)(__m512i)(B), (int)(I))
202
+ ((__m512i)__builtin_ia32_vpshrdw512((__v32hi)(__m512i)(A), \
203
+ (__v32hi)(__m512i)(B), (int)(I)))
204
204
 
205
205
  #define _mm512_mask_shrdi_epi16(S, U, A, B, I) \
206
- (__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
207
- (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \
208
- (__v32hi)(__m512i)(S))
206
+ ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
207
+ (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \
208
+ (__v32hi)(__m512i)(S)))
209
209
 
210
210
  #define _mm512_maskz_shrdi_epi16(U, A, B, I) \
211
- (__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
212
- (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \
213
- (__v32hi)_mm512_setzero_si512())
211
+ ((__m512i)__builtin_ia32_selectw_512((__mmask32)(U), \
212
+ (__v32hi)_mm512_shrdi_epi16((A), (B), (I)), \
213
+ (__v32hi)_mm512_setzero_si512()))
214
214
 
215
215
  static __inline__ __m512i __DEFAULT_FN_ATTRS
216
216
  _mm512_shldv_epi64(__m512i __A, __m512i __B, __m512i __C)
@@ -10,11 +10,11 @@
10
10
  #error "Never use <avx512vlbf16intrin.h> directly; include <immintrin.h> instead."
11
11
  #endif
12
12
 
13
+ #ifdef __SSE2__
14
+
13
15
  #ifndef __AVX512VLBF16INTRIN_H
14
16
  #define __AVX512VLBF16INTRIN_H
15
17
 
16
- typedef short __m128bh __attribute__((__vector_size__(16), __aligned__(16)));
17
-
18
18
  #define __DEFAULT_FN_ATTRS128 \
19
19
  __attribute__((__always_inline__, __nodebug__, \
20
20
  __target__("avx512vl, avx512bf16"), __min_vector_width__(128)))
@@ -59,9 +59,9 @@ _mm_cvtne2ps_pbh(__m128 __A, __m128 __B) {
59
59
  /// conversion of __B, and higher 64 bits come from conversion of __A.
60
60
  static __inline__ __m128bh __DEFAULT_FN_ATTRS128
61
61
  _mm_mask_cvtne2ps_pbh(__m128bh __W, __mmask8 __U, __m128 __A, __m128 __B) {
62
- return (__m128bh)__builtin_ia32_selectw_128((__mmask8)__U,
63
- (__v8hi)_mm_cvtne2ps_pbh(__A, __B),
64
- (__v8hi)__W);
62
+ return (__m128bh)__builtin_ia32_selectpbf_128((__mmask8)__U,
63
+ (__v8bf)_mm_cvtne2ps_pbh(__A, __B),
64
+ (__v8bf)__W);
65
65
  }
66
66
 
67
67
  /// Convert Two Packed Single Data to One Packed BF16 Data.
@@ -81,9 +81,9 @@ _mm_mask_cvtne2ps_pbh(__m128bh __W, __mmask8 __U, __m128 __A, __m128 __B) {
81
81
  /// conversion of __B, and higher 64 bits come from conversion of __A.
82
82
  static __inline__ __m128bh __DEFAULT_FN_ATTRS128
83
83
  _mm_maskz_cvtne2ps_pbh(__mmask8 __U, __m128 __A, __m128 __B) {
84
- return (__m128bh)__builtin_ia32_selectw_128((__mmask8)__U,
85
- (__v8hi)_mm_cvtne2ps_pbh(__A, __B),
86
- (__v8hi)_mm_setzero_si128());
84
+ return (__m128bh)__builtin_ia32_selectpbf_128((__mmask8)__U,
85
+ (__v8bf)_mm_cvtne2ps_pbh(__A, __B),
86
+ (__v8bf)_mm_setzero_si128());
87
87
  }
88
88
 
89
89
  /// Convert Two Packed Single Data to One Packed BF16 Data.
@@ -123,9 +123,9 @@ _mm256_cvtne2ps_pbh(__m256 __A, __m256 __B) {
123
123
  /// conversion of __B, and higher 128 bits come from conversion of __A.
124
124
  static __inline__ __m256bh __DEFAULT_FN_ATTRS256
125
125
  _mm256_mask_cvtne2ps_pbh(__m256bh __W, __mmask16 __U, __m256 __A, __m256 __B) {
126
- return (__m256bh)__builtin_ia32_selectw_256((__mmask16)__U,
127
- (__v16hi)_mm256_cvtne2ps_pbh(__A, __B),
128
- (__v16hi)__W);
126
+ return (__m256bh)__builtin_ia32_selectpbf_256((__mmask16)__U,
127
+ (__v16bf)_mm256_cvtne2ps_pbh(__A, __B),
128
+ (__v16bf)__W);
129
129
  }
130
130
 
131
131
  /// Convert Two Packed Single Data to One Packed BF16 Data.
@@ -145,9 +145,9 @@ _mm256_mask_cvtne2ps_pbh(__m256bh __W, __mmask16 __U, __m256 __A, __m256 __B) {
145
145
  /// conversion of __B, and higher 128 bits come from conversion of __A.
146
146
  static __inline__ __m256bh __DEFAULT_FN_ATTRS256
147
147
  _mm256_maskz_cvtne2ps_pbh(__mmask16 __U, __m256 __A, __m256 __B) {
148
- return (__m256bh)__builtin_ia32_selectw_256((__mmask16)__U,
149
- (__v16hi)_mm256_cvtne2ps_pbh(__A, __B),
150
- (__v16hi)_mm256_setzero_si256());
148
+ return (__m256bh)__builtin_ia32_selectpbf_256((__mmask16)__U,
149
+ (__v16bf)_mm256_cvtne2ps_pbh(__A, __B),
150
+ (__v16bf)_mm256_setzero_si256());
151
151
  }
152
152
 
153
153
  /// Convert Packed Single Data to Packed BF16 Data.
@@ -160,12 +160,8 @@ _mm256_maskz_cvtne2ps_pbh(__mmask16 __U, __m256 __A, __m256 __B) {
160
160
  /// A 128-bit vector of [4 x float].
161
161
  /// \returns A 128-bit vector of [8 x bfloat] whose lower 64 bits come from
162
162
  /// conversion of __A, and higher 64 bits are 0.
163
- static __inline__ __m128bh __DEFAULT_FN_ATTRS128
164
- _mm_cvtneps_pbh(__m128 __A) {
165
- return (__m128bh)__builtin_ia32_cvtneps2bf16_128_mask((__v4sf) __A,
166
- (__v8hi)_mm_undefined_si128(),
167
- (__mmask8)-1);
168
- }
163
+ #define _mm_cvtneps_pbh(A) \
164
+ ((__m128bh)__builtin_ia32_vcvtneps2bf16128((__v4sf)(A)))
169
165
 
170
166
  /// Convert Packed Single Data to Packed BF16 Data.
171
167
  ///
@@ -185,7 +181,7 @@ _mm_cvtneps_pbh(__m128 __A) {
185
181
  static __inline__ __m128bh __DEFAULT_FN_ATTRS128
186
182
  _mm_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m128 __A) {
187
183
  return (__m128bh)__builtin_ia32_cvtneps2bf16_128_mask((__v4sf) __A,
188
- (__v8hi)__W,
184
+ (__v8bf)__W,
189
185
  (__mmask8)__U);
190
186
  }
191
187
 
@@ -205,7 +201,7 @@ _mm_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m128 __A) {
205
201
  static __inline__ __m128bh __DEFAULT_FN_ATTRS128
206
202
  _mm_maskz_cvtneps_pbh(__mmask8 __U, __m128 __A) {
207
203
  return (__m128bh)__builtin_ia32_cvtneps2bf16_128_mask((__v4sf) __A,
208
- (__v8hi)_mm_setzero_si128(),
204
+ (__v8bf)_mm_setzero_si128(),
209
205
  (__mmask8)__U);
210
206
  }
211
207
 
@@ -218,12 +214,8 @@ _mm_maskz_cvtneps_pbh(__mmask8 __U, __m128 __A) {
218
214
  /// \param __A
219
215
  /// A 256-bit vector of [8 x float].
220
216
  /// \returns A 128-bit vector of [8 x bfloat] comes from conversion of __A.
221
- static __inline__ __m128bh __DEFAULT_FN_ATTRS256
222
- _mm256_cvtneps_pbh(__m256 __A) {
223
- return (__m128bh)__builtin_ia32_cvtneps2bf16_256_mask((__v8sf)__A,
224
- (__v8hi)_mm_undefined_si128(),
225
- (__mmask8)-1);
226
- }
217
+ #define _mm256_cvtneps_pbh(A) \
218
+ ((__m128bh)__builtin_ia32_vcvtneps2bf16256((__v8sf)(A)))
227
219
 
228
220
  /// Convert Packed Single Data to Packed BF16 Data.
229
221
  ///
@@ -242,7 +234,7 @@ _mm256_cvtneps_pbh(__m256 __A) {
242
234
  static __inline__ __m128bh __DEFAULT_FN_ATTRS256
243
235
  _mm256_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m256 __A) {
244
236
  return (__m128bh)__builtin_ia32_cvtneps2bf16_256_mask((__v8sf)__A,
245
- (__v8hi)__W,
237
+ (__v8bf)__W,
246
238
  (__mmask8)__U);
247
239
  }
248
240
 
@@ -261,7 +253,7 @@ _mm256_mask_cvtneps_pbh(__m128bh __W, __mmask8 __U, __m256 __A) {
261
253
  static __inline__ __m128bh __DEFAULT_FN_ATTRS256
262
254
  _mm256_maskz_cvtneps_pbh(__mmask8 __U, __m256 __A) {
263
255
  return (__m128bh)__builtin_ia32_cvtneps2bf16_256_mask((__v8sf)__A,
264
- (__v8hi)_mm_setzero_si128(),
256
+ (__v8bf)_mm_setzero_si128(),
265
257
  (__mmask8)__U);
266
258
  }
267
259
 
@@ -282,8 +274,8 @@ _mm256_maskz_cvtneps_pbh(__mmask8 __U, __m256 __A) {
282
274
  static __inline__ __m128 __DEFAULT_FN_ATTRS128
283
275
  _mm_dpbf16_ps(__m128 __D, __m128bh __A, __m128bh __B) {
284
276
  return (__m128)__builtin_ia32_dpbf16ps_128((__v4sf)__D,
285
- (__v4si)__A,
286
- (__v4si)__B);
277
+ (__v8bf)__A,
278
+ (__v8bf)__B);
287
279
  }
288
280
 
289
281
  /// Dot Product of BF16 Pairs Accumulated into Packed Single Precision.
@@ -351,8 +343,8 @@ _mm_maskz_dpbf16_ps(__mmask8 __U, __m128 __D, __m128bh __A, __m128bh __B) {
351
343
  static __inline__ __m256 __DEFAULT_FN_ATTRS256
352
344
  _mm256_dpbf16_ps(__m256 __D, __m256bh __A, __m256bh __B) {
353
345
  return (__m256)__builtin_ia32_dpbf16ps_256((__v8sf)__D,
354
- (__v8si)__A,
355
- (__v8si)__B);
346
+ (__v16bf)__A,
347
+ (__v16bf)__B);
356
348
  }
357
349
 
358
350
  /// Dot Product of BF16 Pairs Accumulated into Packed Single Precision.
@@ -413,11 +405,23 @@ _mm256_maskz_dpbf16_ps(__mmask8 __U, __m256 __D, __m256bh __A, __m256bh __B) {
413
405
  /// A float data.
414
406
  /// \returns A bf16 data whose sign field and exponent field keep unchanged,
415
407
  /// and fraction field is truncated to 7 bits.
416
- static __inline__ __bfloat16 __DEFAULT_FN_ATTRS128 _mm_cvtness_sbh(float __A) {
408
+ static __inline__ __bf16 __DEFAULT_FN_ATTRS128 _mm_cvtness_sbh(float __A) {
417
409
  __v4sf __V = {__A, 0, 0, 0};
418
- __v8hi __R = __builtin_ia32_cvtneps2bf16_128_mask(
419
- (__v4sf)__V, (__v8hi)_mm_undefined_si128(), (__mmask8)-1);
420
- return __R[0];
410
+ __v8bf __R = __builtin_ia32_cvtneps2bf16_128_mask(
411
+ (__v4sf)__V, (__v8bf)_mm_undefined_si128(), (__mmask8)-1);
412
+ return (__bf16)__R[0];
413
+ }
414
+
415
+ /// Convert Packed BF16 Data to Packed float Data.
416
+ ///
417
+ /// \headerfile <x86intrin.h>
418
+ ///
419
+ /// \param __A
420
+ /// A 128-bit vector of [4 x bfloat].
421
+ /// \returns A 128-bit vector of [4 x float] come from conversion of __A
422
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_cvtpbh_ps(__m128bh __A) {
423
+ return _mm_castsi128_ps(
424
+ (__m128i)_mm_slli_epi32((__m128i)_mm_cvtepi16_epi32((__m128i)__A), 16));
421
425
  }
422
426
 
423
427
  /// Convert Packed BF16 Data to Packed float Data.
@@ -426,12 +430,28 @@ static __inline__ __bfloat16 __DEFAULT_FN_ATTRS128 _mm_cvtness_sbh(float __A) {
426
430
  ///
427
431
  /// \param __A
428
432
  /// A 128-bit vector of [8 x bfloat].
429
- /// \returns A 256-bit vector of [8 x float] come from convertion of __A
433
+ /// \returns A 256-bit vector of [8 x float] come from conversion of __A
430
434
  static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_cvtpbh_ps(__m128bh __A) {
431
435
  return _mm256_castsi256_ps((__m256i)_mm256_slli_epi32(
432
436
  (__m256i)_mm256_cvtepi16_epi32((__m128i)__A), 16));
433
437
  }
434
438
 
439
+ /// Convert Packed BF16 Data to Packed float Data using zeroing mask.
440
+ ///
441
+ /// \headerfile <x86intrin.h>
442
+ ///
443
+ /// \param __U
444
+ /// A 4-bit mask. Elements are zeroed out when the corresponding mask
445
+ /// bit is not set.
446
+ /// \param __A
447
+ /// A 128-bit vector of [4 x bfloat].
448
+ /// \returns A 128-bit vector of [4 x float] come from conversion of __A
449
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128
450
+ _mm_maskz_cvtpbh_ps(__mmask8 __U, __m128bh __A) {
451
+ return _mm_castsi128_ps((__m128i)_mm_slli_epi32(
452
+ (__m128i)_mm_maskz_cvtepi16_epi32((__mmask8)__U, (__m128i)__A), 16));
453
+ }
454
+
435
455
  /// Convert Packed BF16 Data to Packed float Data using zeroing mask.
436
456
  ///
437
457
  /// \headerfile <x86intrin.h>
@@ -441,13 +461,33 @@ static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_cvtpbh_ps(__m128bh __A) {
441
461
  /// bit is not set.
442
462
  /// \param __A
443
463
  /// A 128-bit vector of [8 x bfloat].
444
- /// \returns A 256-bit vector of [8 x float] come from convertion of __A
464
+ /// \returns A 256-bit vector of [8 x float] come from conversion of __A
445
465
  static __inline__ __m256 __DEFAULT_FN_ATTRS256
446
466
  _mm256_maskz_cvtpbh_ps(__mmask8 __U, __m128bh __A) {
447
467
  return _mm256_castsi256_ps((__m256i)_mm256_slli_epi32(
448
468
  (__m256i)_mm256_maskz_cvtepi16_epi32((__mmask8)__U, (__m128i)__A), 16));
449
469
  }
450
470
 
471
+ /// Convert Packed BF16 Data to Packed float Data using merging mask.
472
+ ///
473
+ /// \headerfile <x86intrin.h>
474
+ ///
475
+ /// \param __S
476
+ /// A 128-bit vector of [4 x float]. Elements are copied from __S when
477
+ /// the corresponding mask bit is not set.
478
+ /// \param __U
479
+ /// A 4-bit mask. Elements are zeroed out when the corresponding mask
480
+ /// bit is not set.
481
+ /// \param __A
482
+ /// A 128-bit vector of [4 x bfloat].
483
+ /// \returns A 128-bit vector of [4 x float] come from conversion of __A
484
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128
485
+ _mm_mask_cvtpbh_ps(__m128 __S, __mmask8 __U, __m128bh __A) {
486
+ return _mm_castsi128_ps((__m128i)_mm_mask_slli_epi32(
487
+ (__m128i)__S, (__mmask8)__U, (__m128i)_mm_cvtepi16_epi32((__m128i)__A),
488
+ 16));
489
+ }
490
+
451
491
  /// Convert Packed BF16 Data to Packed float Data using merging mask.
452
492
  ///
453
493
  /// \headerfile <x86intrin.h>
@@ -460,7 +500,7 @@ _mm256_maskz_cvtpbh_ps(__mmask8 __U, __m128bh __A) {
460
500
  /// bit is not set.
461
501
  /// \param __A
462
502
  /// A 128-bit vector of [8 x bfloat].
463
- /// \returns A 256-bit vector of [8 x float] come from convertion of __A
503
+ /// \returns A 256-bit vector of [8 x float] come from conversion of __A
464
504
  static __inline__ __m256 __DEFAULT_FN_ATTRS256
465
505
  _mm256_mask_cvtpbh_ps(__m256 __S, __mmask8 __U, __m128bh __A) {
466
506
  return _mm256_castsi256_ps((__m256i)_mm256_mask_slli_epi32(
@@ -472,3 +512,4 @@ _mm256_mask_cvtpbh_ps(__m256 __S, __mmask8 __U, __m128bh __A) {
472
512
  #undef __DEFAULT_FN_ATTRS256
473
513
 
474
514
  #endif
515
+ #endif