@cpp-linter/clang-tidy-darwin-x64 17.0.6 → 19.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{17 → 19}/include/__clang_cuda_device_functions.h +2 -2
  4. package/lib/clang/{17 → 19}/include/__clang_cuda_intrinsics.h +1 -3
  5. package/lib/clang/{17 → 19}/include/__clang_cuda_libdevice_declares.h +2 -2
  6. package/lib/clang/{17 → 19}/include/__clang_cuda_math.h +2 -2
  7. package/lib/clang/{17 → 19}/include/__clang_cuda_runtime_wrapper.h +2 -2
  8. package/lib/clang/{17 → 19}/include/__clang_hip_math.h +192 -171
  9. package/lib/clang/{17 → 19}/include/__clang_hip_runtime_wrapper.h +34 -26
  10. package/lib/clang/19/include/__stdarg___gnuc_va_list.h +13 -0
  11. package/lib/clang/19/include/__stdarg___va_copy.h +12 -0
  12. package/lib/clang/19/include/__stdarg_header_macro.h +12 -0
  13. package/lib/clang/19/include/__stdarg_va_arg.h +22 -0
  14. package/lib/clang/19/include/__stdarg_va_copy.h +12 -0
  15. package/lib/clang/19/include/__stdarg_va_list.h +13 -0
  16. package/lib/clang/19/include/__stddef_header_macro.h +12 -0
  17. package/lib/clang/{17 → 19}/include/__stddef_max_align_t.h +1 -1
  18. package/lib/clang/19/include/__stddef_null.h +29 -0
  19. package/lib/clang/19/include/__stddef_nullptr_t.h +29 -0
  20. package/lib/clang/19/include/__stddef_offsetof.h +17 -0
  21. package/lib/clang/19/include/__stddef_ptrdiff_t.h +20 -0
  22. package/lib/clang/19/include/__stddef_rsize_t.h +20 -0
  23. package/lib/clang/19/include/__stddef_size_t.h +20 -0
  24. package/lib/clang/19/include/__stddef_unreachable.h +21 -0
  25. package/lib/clang/19/include/__stddef_wchar_t.h +28 -0
  26. package/lib/clang/19/include/__stddef_wint_t.h +15 -0
  27. package/lib/clang/{17/include/adxintrin.h → 19/include/adcintrin.h} +27 -94
  28. package/lib/clang/19/include/adxintrin.h +102 -0
  29. package/lib/clang/{17 → 19}/include/altivec.h +31 -12
  30. package/lib/clang/{17 → 19}/include/ammintrin.h +4 -4
  31. package/lib/clang/{17 → 19}/include/arm_acle.h +138 -32
  32. package/lib/clang/{17 → 19}/include/arm_fp16.h +1 -1
  33. package/lib/clang/{17 → 19}/include/arm_neon.h +43361 -43608
  34. package/lib/clang/19/include/arm_sme.h +2819 -0
  35. package/lib/clang/{17 → 19}/include/arm_sve.h +30202 -23615
  36. package/lib/clang/19/include/arm_vector_types.h +345 -0
  37. package/lib/clang/{17 → 19}/include/avx2intrin.h +24 -3
  38. package/lib/clang/{17 → 19}/include/avx512bf16intrin.h +3 -2
  39. package/lib/clang/{17 → 19}/include/avx512bitalgintrin.h +4 -1
  40. package/lib/clang/{17 → 19}/include/avx512bwintrin.h +28 -38
  41. package/lib/clang/{17 → 19}/include/avx512cdintrin.h +3 -1
  42. package/lib/clang/{17 → 19}/include/avx512dqintrin.h +4 -2
  43. package/lib/clang/{17 → 19}/include/avx512fintrin.h +7 -3
  44. package/lib/clang/{17 → 19}/include/avx512fp16intrin.h +44 -42
  45. package/lib/clang/{17 → 19}/include/avx512ifmaintrin.h +3 -1
  46. package/lib/clang/{17 → 19}/include/avx512ifmavlintrin.h +8 -2
  47. package/lib/clang/{17 → 19}/include/avx512vbmi2intrin.h +1 -1
  48. package/lib/clang/{17 → 19}/include/avx512vbmiintrin.h +3 -2
  49. package/lib/clang/{17 → 19}/include/avx512vbmivlintrin.h +8 -3
  50. package/lib/clang/{17 → 19}/include/avx512vlbf16intrin.h +8 -6
  51. package/lib/clang/{17 → 19}/include/avx512vlbitalgintrin.h +8 -2
  52. package/lib/clang/{17 → 19}/include/avx512vlbwintrin.h +8 -2
  53. package/lib/clang/{17 → 19}/include/avx512vlcdintrin.h +8 -3
  54. package/lib/clang/{17 → 19}/include/avx512vldqintrin.h +8 -2
  55. package/lib/clang/{17 → 19}/include/avx512vlfp16intrin.h +2 -2
  56. package/lib/clang/{17 → 19}/include/avx512vlintrin.h +8 -2
  57. package/lib/clang/{17 → 19}/include/avx512vlvbmi2intrin.h +8 -2
  58. package/lib/clang/{17 → 19}/include/avx512vlvnniintrin.h +8 -2
  59. package/lib/clang/{17 → 19}/include/avx512vlvp2intersectintrin.h +6 -4
  60. package/lib/clang/{17 → 19}/include/avx512vnniintrin.h +3 -2
  61. package/lib/clang/{17 → 19}/include/avx512vp2intersectintrin.h +3 -2
  62. package/lib/clang/{17 → 19}/include/avx512vpopcntdqintrin.h +3 -1
  63. package/lib/clang/{17 → 19}/include/avx512vpopcntdqvlintrin.h +6 -2
  64. package/lib/clang/{17 → 19}/include/avxintrin.h +67 -49
  65. package/lib/clang/{17 → 19}/include/bmiintrin.h +233 -50
  66. package/lib/clang/{17 → 19}/include/builtins.h +3 -0
  67. package/lib/clang/{17 → 19}/include/cpuid.h +23 -3
  68. package/lib/clang/{17 → 19}/include/cuda_wrappers/algorithm +1 -1
  69. package/lib/clang/{17 → 19}/include/emmintrin.h +311 -180
  70. package/lib/clang/{17 → 19}/include/float.h +28 -0
  71. package/lib/clang/{17 → 19}/include/fmaintrin.h +32 -16
  72. package/lib/clang/{17 → 19}/include/gfniintrin.h +23 -6
  73. package/lib/clang/{17 → 19}/include/hlsl/hlsl_basic_types.h +10 -3
  74. package/lib/clang/19/include/hlsl/hlsl_intrinsics.h +1697 -0
  75. package/lib/clang/19/include/ia32intrin.h +863 -0
  76. package/lib/clang/{17 → 19}/include/immintrin.h +149 -160
  77. package/lib/clang/{17 → 19}/include/intrin.h +61 -221
  78. package/lib/clang/19/include/intrin0.h +247 -0
  79. package/lib/clang/{17 → 19}/include/inttypes.h +4 -0
  80. package/lib/clang/{17 → 19}/include/iso646.h +4 -0
  81. package/lib/clang/{17 → 19}/include/keylockerintrin.h +5 -8
  82. package/lib/clang/{17 → 19}/include/larchintrin.h +13 -1
  83. package/lib/clang/19/include/lasxintrin.h +3884 -0
  84. package/lib/clang/{17 → 19}/include/limits.h +7 -4
  85. package/lib/clang/{17/include/llvm_libc_wrappers/stdio.h → 19/include/llvm_libc_wrappers/assert.h} +7 -7
  86. package/lib/clang/{17 → 19}/include/llvm_libc_wrappers/ctype.h +17 -0
  87. package/lib/clang/19/include/llvm_libc_wrappers/stdio.h +80 -0
  88. package/lib/clang/{17 → 19}/include/llvm_libc_wrappers/stdlib.h +4 -1
  89. package/lib/clang/19/include/llvm_libc_wrappers/string.h +96 -0
  90. package/lib/clang/{17/include/llvm_libc_wrappers/string.h → 19/include/llvm_libc_wrappers/time.h} +9 -12
  91. package/lib/clang/19/include/lsxintrin.h +3750 -0
  92. package/lib/clang/19/include/mm3dnow.h +22 -0
  93. package/lib/clang/{17 → 19}/include/mmintrin.h +83 -89
  94. package/lib/clang/19/include/module.modulemap +330 -0
  95. package/lib/clang/{17 → 19}/include/opencl-c-base.h +9 -0
  96. package/lib/clang/{17 → 19}/include/opencl-c.h +15 -0
  97. package/lib/clang/{17 → 19}/include/openmp_wrappers/cmath +1 -1
  98. package/lib/clang/{17 → 19}/include/pmmintrin.h +3 -2
  99. package/lib/clang/19/include/ppc_wrappers/nmmintrin.h +26 -0
  100. package/lib/clang/{17 → 19}/include/ppc_wrappers/smmintrin.h +35 -15
  101. package/lib/clang/{17 → 19}/include/prfchwintrin.h +10 -8
  102. package/lib/clang/19/include/ptrauth.h +330 -0
  103. package/lib/clang/19/include/riscv_bitmanip.h +195 -0
  104. package/lib/clang/19/include/riscv_crypto.h +170 -0
  105. package/lib/clang/{17 → 19}/include/riscv_ntlh.h +3 -5
  106. package/lib/clang/{17 → 19}/include/riscv_vector.h +31 -4
  107. package/lib/clang/19/include/sifive_vector.h +118 -0
  108. package/lib/clang/{17 → 19}/include/smmintrin.h +15 -15
  109. package/lib/clang/{17 → 19}/include/stdalign.h +6 -3
  110. package/lib/clang/19/include/stdarg.h +75 -0
  111. package/lib/clang/{17 → 19}/include/stdatomic.h +14 -6
  112. package/lib/clang/{17 → 19}/include/stdbool.h +5 -0
  113. package/lib/clang/19/include/stdckdint.h +42 -0
  114. package/lib/clang/19/include/stddef.h +139 -0
  115. package/lib/clang/{17 → 19}/include/stdint.h +24 -48
  116. package/lib/clang/{17 → 19}/include/stdnoreturn.h +8 -2
  117. package/lib/clang/{17 → 19}/include/tmmintrin.h +27 -18
  118. package/lib/clang/19/include/usermsrintrin.h +51 -0
  119. package/lib/clang/{17 → 19}/include/vaesintrin.h +4 -2
  120. package/lib/clang/{17 → 19}/include/varargs.h +5 -1
  121. package/lib/clang/{17 → 19}/include/vecintrin.h +217 -199
  122. package/lib/clang/{17 → 19}/include/x86gprintrin.h +10 -12
  123. package/lib/clang/19/include/x86intrin.h +53 -0
  124. package/lib/clang/{17 → 19}/include/xmmintrin.h +294 -104
  125. package/lib/clang/19/include/yvals_core.h +25 -0
  126. package/lib/clang/19/include/zos_wrappers/builtins.h +18 -0
  127. package/package.json +6 -6
  128. package/lib/clang/17/include/arm_sme_draft_spec_subject_to_change.h +0 -642
  129. package/lib/clang/17/include/avx512erintrin.h +0 -271
  130. package/lib/clang/17/include/avx512pfintrin.h +0 -97
  131. package/lib/clang/17/include/hlsl/hlsl_intrinsics.h +0 -480
  132. package/lib/clang/17/include/ia32intrin.h +0 -441
  133. package/lib/clang/17/include/mm3dnow.h +0 -157
  134. package/lib/clang/17/include/module.modulemap +0 -164
  135. package/lib/clang/17/include/sifive_vector.h +0 -16
  136. package/lib/clang/17/include/stdarg.h +0 -51
  137. package/lib/clang/17/include/stddef.h +0 -133
  138. package/lib/clang/17/include/x86intrin.h +0 -67
  139. /package/lib/clang/{17 → 19}/include/__clang_cuda_builtin_vars.h +0 -0
  140. /package/lib/clang/{17 → 19}/include/__clang_cuda_cmath.h +0 -0
  141. /package/lib/clang/{17 → 19}/include/__clang_cuda_complex_builtins.h +0 -0
  142. /package/lib/clang/{17 → 19}/include/__clang_cuda_math_forward_declares.h +0 -0
  143. /package/lib/clang/{17 → 19}/include/__clang_cuda_texture_intrinsics.h +0 -0
  144. /package/lib/clang/{17 → 19}/include/__clang_hip_cmath.h +0 -0
  145. /package/lib/clang/{17 → 19}/include/__clang_hip_libdevice_declares.h +0 -0
  146. /package/lib/clang/{17 → 19}/include/__clang_hip_stdlib.h +0 -0
  147. /package/lib/clang/{17 → 19}/include/__wmmintrin_aes.h +0 -0
  148. /package/lib/clang/{17 → 19}/include/__wmmintrin_pclmul.h +0 -0
  149. /package/lib/clang/{17 → 19}/include/amxcomplexintrin.h +0 -0
  150. /package/lib/clang/{17 → 19}/include/amxfp16intrin.h +0 -0
  151. /package/lib/clang/{17 → 19}/include/amxintrin.h +0 -0
  152. /package/lib/clang/{17 → 19}/include/arm64intr.h +0 -0
  153. /package/lib/clang/{17 → 19}/include/arm_bf16.h +0 -0
  154. /package/lib/clang/{17 → 19}/include/arm_cde.h +0 -0
  155. /package/lib/clang/{17 → 19}/include/arm_cmse.h +0 -0
  156. /package/lib/clang/{17 → 19}/include/arm_mve.h +0 -0
  157. /package/lib/clang/{17 → 19}/include/arm_neon_sve_bridge.h +0 -0
  158. /package/lib/clang/{17 → 19}/include/armintr.h +0 -0
  159. /package/lib/clang/{17 → 19}/include/avxifmaintrin.h +0 -0
  160. /package/lib/clang/{17 → 19}/include/avxneconvertintrin.h +0 -0
  161. /package/lib/clang/{17 → 19}/include/avxvnniint16intrin.h +0 -0
  162. /package/lib/clang/{17 → 19}/include/avxvnniint8intrin.h +0 -0
  163. /package/lib/clang/{17 → 19}/include/avxvnniintrin.h +0 -0
  164. /package/lib/clang/{17 → 19}/include/bmi2intrin.h +0 -0
  165. /package/lib/clang/{17 → 19}/include/cet.h +0 -0
  166. /package/lib/clang/{17 → 19}/include/cetintrin.h +0 -0
  167. /package/lib/clang/{17 → 19}/include/cldemoteintrin.h +0 -0
  168. /package/lib/clang/{17 → 19}/include/clflushoptintrin.h +0 -0
  169. /package/lib/clang/{17 → 19}/include/clwbintrin.h +0 -0
  170. /package/lib/clang/{17 → 19}/include/clzerointrin.h +0 -0
  171. /package/lib/clang/{17 → 19}/include/cmpccxaddintrin.h +0 -0
  172. /package/lib/clang/{17 → 19}/include/crc32intrin.h +0 -0
  173. /package/lib/clang/{17 → 19}/include/cuda_wrappers/bits/basic_string.h +0 -0
  174. /package/lib/clang/{17 → 19}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  175. /package/lib/clang/{17 → 19}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  176. /package/lib/clang/{17 → 19}/include/cuda_wrappers/cmath +0 -0
  177. /package/lib/clang/{17 → 19}/include/cuda_wrappers/complex +0 -0
  178. /package/lib/clang/{17 → 19}/include/cuda_wrappers/new +0 -0
  179. /package/lib/clang/{17 → 19}/include/enqcmdintrin.h +0 -0
  180. /package/lib/clang/{17 → 19}/include/f16cintrin.h +0 -0
  181. /package/lib/clang/{17 → 19}/include/fma4intrin.h +0 -0
  182. /package/lib/clang/{17 → 19}/include/fxsrintrin.h +0 -0
  183. /package/lib/clang/{17 → 19}/include/hexagon_circ_brev_intrinsics.h +0 -0
  184. /package/lib/clang/{17 → 19}/include/hexagon_protos.h +0 -0
  185. /package/lib/clang/{17 → 19}/include/hexagon_types.h +0 -0
  186. /package/lib/clang/{17 → 19}/include/hlsl.h +0 -0
  187. /package/lib/clang/{17 → 19}/include/hresetintrin.h +0 -0
  188. /package/lib/clang/{17 → 19}/include/htmintrin.h +0 -0
  189. /package/lib/clang/{17 → 19}/include/htmxlintrin.h +0 -0
  190. /package/lib/clang/{17 → 19}/include/hvx_hexagon_protos.h +0 -0
  191. /package/lib/clang/{17 → 19}/include/invpcidintrin.h +0 -0
  192. /package/lib/clang/{17 → 19}/include/llvm_libc_wrappers/inttypes.h +0 -0
  193. /package/lib/clang/{17 → 19}/include/lwpintrin.h +0 -0
  194. /package/lib/clang/{17 → 19}/include/lzcntintrin.h +0 -0
  195. /package/lib/clang/{17 → 19}/include/mm_malloc.h +0 -0
  196. /package/lib/clang/{17 → 19}/include/movdirintrin.h +0 -0
  197. /package/lib/clang/{17 → 19}/include/msa.h +0 -0
  198. /package/lib/clang/{17 → 19}/include/mwaitxintrin.h +0 -0
  199. /package/lib/clang/{17 → 19}/include/nmmintrin.h +0 -0
  200. /package/lib/clang/{17 → 19}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  201. /package/lib/clang/{17 → 19}/include/openmp_wrappers/complex +0 -0
  202. /package/lib/clang/{17 → 19}/include/openmp_wrappers/complex.h +0 -0
  203. /package/lib/clang/{17 → 19}/include/openmp_wrappers/complex_cmath.h +0 -0
  204. /package/lib/clang/{17 → 19}/include/openmp_wrappers/math.h +0 -0
  205. /package/lib/clang/{17 → 19}/include/openmp_wrappers/new +0 -0
  206. /package/lib/clang/{17 → 19}/include/pconfigintrin.h +0 -0
  207. /package/lib/clang/{17 → 19}/include/pkuintrin.h +0 -0
  208. /package/lib/clang/{17 → 19}/include/popcntintrin.h +0 -0
  209. /package/lib/clang/{17 → 19}/include/ppc_wrappers/bmi2intrin.h +0 -0
  210. /package/lib/clang/{17 → 19}/include/ppc_wrappers/bmiintrin.h +0 -0
  211. /package/lib/clang/{17 → 19}/include/ppc_wrappers/emmintrin.h +0 -0
  212. /package/lib/clang/{17 → 19}/include/ppc_wrappers/immintrin.h +0 -0
  213. /package/lib/clang/{17 → 19}/include/ppc_wrappers/mm_malloc.h +0 -0
  214. /package/lib/clang/{17 → 19}/include/ppc_wrappers/mmintrin.h +0 -0
  215. /package/lib/clang/{17 → 19}/include/ppc_wrappers/pmmintrin.h +0 -0
  216. /package/lib/clang/{17 → 19}/include/ppc_wrappers/tmmintrin.h +0 -0
  217. /package/lib/clang/{17 → 19}/include/ppc_wrappers/x86gprintrin.h +0 -0
  218. /package/lib/clang/{17 → 19}/include/ppc_wrappers/x86intrin.h +0 -0
  219. /package/lib/clang/{17 → 19}/include/ppc_wrappers/xmmintrin.h +0 -0
  220. /package/lib/clang/{17 → 19}/include/prfchiintrin.h +0 -0
  221. /package/lib/clang/{17 → 19}/include/ptwriteintrin.h +0 -0
  222. /package/lib/clang/{17 → 19}/include/raointintrin.h +0 -0
  223. /package/lib/clang/{17 → 19}/include/rdpruintrin.h +0 -0
  224. /package/lib/clang/{17 → 19}/include/rdseedintrin.h +0 -0
  225. /package/lib/clang/{17 → 19}/include/rtmintrin.h +0 -0
  226. /package/lib/clang/{17 → 19}/include/s390intrin.h +0 -0
  227. /package/lib/clang/{17 → 19}/include/serializeintrin.h +0 -0
  228. /package/lib/clang/{17 → 19}/include/sgxintrin.h +0 -0
  229. /package/lib/clang/{17 → 19}/include/sha512intrin.h +0 -0
  230. /package/lib/clang/{17 → 19}/include/shaintrin.h +0 -0
  231. /package/lib/clang/{17 → 19}/include/sm3intrin.h +0 -0
  232. /package/lib/clang/{17 → 19}/include/sm4intrin.h +0 -0
  233. /package/lib/clang/{17 → 19}/include/tbmintrin.h +0 -0
  234. /package/lib/clang/{17 → 19}/include/tgmath.h +0 -0
  235. /package/lib/clang/{17 → 19}/include/tsxldtrkintrin.h +0 -0
  236. /package/lib/clang/{17 → 19}/include/uintrintrin.h +0 -0
  237. /package/lib/clang/{17 → 19}/include/unwind.h +0 -0
  238. /package/lib/clang/{17 → 19}/include/vadefs.h +0 -0
  239. /package/lib/clang/{17 → 19}/include/velintrin.h +0 -0
  240. /package/lib/clang/{17 → 19}/include/velintrin_approx.h +0 -0
  241. /package/lib/clang/{17 → 19}/include/velintrin_gen.h +0 -0
  242. /package/lib/clang/{17 → 19}/include/vpclmulqdqintrin.h +0 -0
  243. /package/lib/clang/{17 → 19}/include/waitpkgintrin.h +0 -0
  244. /package/lib/clang/{17 → 19}/include/wasm_simd128.h +0 -0
  245. /package/lib/clang/{17 → 19}/include/wbnoinvdintrin.h +0 -0
  246. /package/lib/clang/{17 → 19}/include/wmmintrin.h +0 -0
  247. /package/lib/clang/{17 → 19}/include/xopintrin.h +0 -0
  248. /package/lib/clang/{17 → 19}/include/xsavecintrin.h +0 -0
  249. /package/lib/clang/{17 → 19}/include/xsaveintrin.h +0 -0
  250. /package/lib/clang/{17 → 19}/include/xsaveoptintrin.h +0 -0
  251. /package/lib/clang/{17 → 19}/include/xsavesintrin.h +0 -0
  252. /package/lib/clang/{17 → 19}/include/xtestintrin.h +0 -0
@@ -50,8 +50,12 @@ typedef __bf16 __m256bh __attribute__((__vector_size__(32), __aligned__(32)));
50
50
  #endif
51
51
 
52
52
  /* Define the default attributes for the functions in this file. */
53
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx"), __min_vector_width__(256)))
54
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx"), __min_vector_width__(128)))
53
+ #define __DEFAULT_FN_ATTRS \
54
+ __attribute__((__always_inline__, __nodebug__, __target__("avx,no-evex512"), \
55
+ __min_vector_width__(256)))
56
+ #define __DEFAULT_FN_ATTRS128 \
57
+ __attribute__((__always_inline__, __nodebug__, __target__("avx,no-evex512"), \
58
+ __min_vector_width__(128)))
55
59
 
56
60
  /* Arithmetic */
57
61
  /// Adds two 256-bit vectors of [4 x double].
@@ -203,6 +207,8 @@ _mm256_div_ps(__m256 __a, __m256 __b)
203
207
  /// Compares two 256-bit vectors of [4 x double] and returns the greater
204
208
  /// of each pair of values.
205
209
  ///
210
+ /// If either value in a comparison is NaN, returns the value from \a __b.
211
+ ///
206
212
  /// \headerfile <x86intrin.h>
207
213
  ///
208
214
  /// This intrinsic corresponds to the <c> VMAXPD </c> instruction.
@@ -222,6 +228,8 @@ _mm256_max_pd(__m256d __a, __m256d __b)
222
228
  /// Compares two 256-bit vectors of [8 x float] and returns the greater
223
229
  /// of each pair of values.
224
230
  ///
231
+ /// If either value in a comparison is NaN, returns the value from \a __b.
232
+ ///
225
233
  /// \headerfile <x86intrin.h>
226
234
  ///
227
235
  /// This intrinsic corresponds to the <c> VMAXPS </c> instruction.
@@ -241,6 +249,8 @@ _mm256_max_ps(__m256 __a, __m256 __b)
241
249
  /// Compares two 256-bit vectors of [4 x double] and returns the lesser
242
250
  /// of each pair of values.
243
251
  ///
252
+ /// If either value in a comparison is NaN, returns the value from \a __b.
253
+ ///
244
254
  /// \headerfile <x86intrin.h>
245
255
  ///
246
256
  /// This intrinsic corresponds to the <c> VMINPD </c> instruction.
@@ -260,6 +270,8 @@ _mm256_min_pd(__m256d __a, __m256d __b)
260
270
  /// Compares two 256-bit vectors of [8 x float] and returns the lesser
261
271
  /// of each pair of values.
262
272
  ///
273
+ /// If either value in a comparison is NaN, returns the value from \a __b.
274
+ ///
263
275
  /// \headerfile <x86intrin.h>
264
276
  ///
265
277
  /// This intrinsic corresponds to the <c> VMINPS </c> instruction.
@@ -828,6 +840,7 @@ _mm256_permutevar_pd(__m256d __a, __m256i __c)
828
840
 
829
841
  /// Copies the values stored in a 128-bit vector of [4 x float] as
830
842
  /// specified by the 128-bit integer vector operand.
843
+ ///
831
844
  /// \headerfile <x86intrin.h>
832
845
  ///
833
846
  /// This intrinsic corresponds to the <c> VPERMILPS </c> instruction.
@@ -1570,14 +1583,6 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1570
1583
  (__v4df)(__m256d)(b), (int)(mask)))
1571
1584
 
1572
1585
  /* Compare */
1573
- #define _CMP_EQ_OQ 0x00 /* Equal (ordered, non-signaling) */
1574
- #define _CMP_LT_OS 0x01 /* Less-than (ordered, signaling) */
1575
- #define _CMP_LE_OS 0x02 /* Less-than-or-equal (ordered, signaling) */
1576
- #define _CMP_UNORD_Q 0x03 /* Unordered (non-signaling) */
1577
- #define _CMP_NEQ_UQ 0x04 /* Not-equal (unordered, non-signaling) */
1578
- #define _CMP_NLT_US 0x05 /* Not-less-than (unordered, signaling) */
1579
- #define _CMP_NLE_US 0x06 /* Not-less-than-or-equal (unordered, signaling) */
1580
- #define _CMP_ORD_Q 0x07 /* Ordered (non-signaling) */
1581
1586
  #define _CMP_EQ_UQ 0x08 /* Equal (unordered, non-signaling) */
1582
1587
  #define _CMP_NGE_US 0x09 /* Not-greater-than-or-equal (unordered, signaling) */
1583
1588
  #define _CMP_NGT_US 0x0a /* Not-greater-than (unordered, signaling) */
@@ -1603,13 +1608,14 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1603
1608
  #define _CMP_GT_OQ 0x1e /* Greater-than (ordered, non-signaling) */
1604
1609
  #define _CMP_TRUE_US 0x1f /* True (unordered, signaling) */
1605
1610
 
1611
+ /* Below intrinsic defined in emmintrin.h can be used for AVX */
1606
1612
  /// Compares each of the corresponding double-precision values of two
1607
1613
  /// 128-bit vectors of [2 x double], using the operation specified by the
1608
1614
  /// immediate integer operand.
1609
1615
  ///
1610
- /// Returns a [2 x double] vector consisting of two doubles corresponding to
1611
- /// the two comparison results: zero if the comparison is false, and all 1's
1612
- /// if the comparison is true.
1616
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFFFFFFFFFF for true.
1617
+ /// If either value in a comparison is NaN, comparisons that are ordered
1618
+ /// return false, and comparisons that are unordered return true.
1613
1619
  ///
1614
1620
  /// \headerfile <x86intrin.h>
1615
1621
  ///
@@ -1659,17 +1665,16 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1659
1665
  /// 0x1E: Greater-than (ordered, non-signaling) \n
1660
1666
  /// 0x1F: True (unordered, signaling)
1661
1667
  /// \returns A 128-bit vector of [2 x double] containing the comparison results.
1662
- #define _mm_cmp_pd(a, b, c) \
1663
- ((__m128d)__builtin_ia32_cmppd((__v2df)(__m128d)(a), \
1664
- (__v2df)(__m128d)(b), (c)))
1668
+ /// \fn __m128d _mm_cmp_pd(__m128d a, __m128d b, const int c)
1665
1669
 
1670
+ /* Below intrinsic defined in xmmintrin.h can be used for AVX */
1666
1671
  /// Compares each of the corresponding values of two 128-bit vectors of
1667
1672
  /// [4 x float], using the operation specified by the immediate integer
1668
1673
  /// operand.
1669
1674
  ///
1670
- /// Returns a [4 x float] vector consisting of four floats corresponding to
1671
- /// the four comparison results: zero if the comparison is false, and all 1's
1672
- /// if the comparison is true.
1675
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFF for true.
1676
+ /// If either value in a comparison is NaN, comparisons that are ordered
1677
+ /// return false, and comparisons that are unordered return true.
1673
1678
  ///
1674
1679
  /// \headerfile <x86intrin.h>
1675
1680
  ///
@@ -1719,17 +1724,15 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1719
1724
  /// 0x1E: Greater-than (ordered, non-signaling) \n
1720
1725
  /// 0x1F: True (unordered, signaling)
1721
1726
  /// \returns A 128-bit vector of [4 x float] containing the comparison results.
1722
- #define _mm_cmp_ps(a, b, c) \
1723
- ((__m128)__builtin_ia32_cmpps((__v4sf)(__m128)(a), \
1724
- (__v4sf)(__m128)(b), (c)))
1727
+ /// \fn __m128 _mm_cmp_ps(__m128 a, __m128 b, const int c)
1725
1728
 
1726
1729
  /// Compares each of the corresponding double-precision values of two
1727
1730
  /// 256-bit vectors of [4 x double], using the operation specified by the
1728
1731
  /// immediate integer operand.
1729
1732
  ///
1730
- /// Returns a [4 x double] vector consisting of four doubles corresponding to
1731
- /// the four comparison results: zero if the comparison is false, and all 1's
1732
- /// if the comparison is true.
1733
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFFFFFFFFFF for true.
1734
+ /// If either value in a comparison is NaN, comparisons that are ordered
1735
+ /// return false, and comparisons that are unordered return true.
1733
1736
  ///
1734
1737
  /// \headerfile <x86intrin.h>
1735
1738
  ///
@@ -1787,9 +1790,9 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1787
1790
  /// [8 x float], using the operation specified by the immediate integer
1788
1791
  /// operand.
1789
1792
  ///
1790
- /// Returns a [8 x float] vector consisting of eight floats corresponding to
1791
- /// the eight comparison results: zero if the comparison is false, and all
1792
- /// 1's if the comparison is true.
1793
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFF for true.
1794
+ /// If either value in a comparison is NaN, comparisons that are ordered
1795
+ /// return false, and comparisons that are unordered return true.
1793
1796
  ///
1794
1797
  /// \headerfile <x86intrin.h>
1795
1798
  ///
@@ -1843,12 +1846,14 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1843
1846
  ((__m256)__builtin_ia32_cmpps256((__v8sf)(__m256)(a), \
1844
1847
  (__v8sf)(__m256)(b), (c)))
1845
1848
 
1849
+ /* Below intrinsic defined in emmintrin.h can be used for AVX */
1846
1850
  /// Compares each of the corresponding scalar double-precision values of
1847
1851
  /// two 128-bit vectors of [2 x double], using the operation specified by the
1848
1852
  /// immediate integer operand.
1849
1853
  ///
1850
- /// If the result is true, all 64 bits of the destination vector are set;
1851
- /// otherwise they are cleared.
1854
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFFFFFFFFFF for true.
1855
+ /// If either value in a comparison is NaN, comparisons that are ordered
1856
+ /// return false, and comparisons that are unordered return true.
1852
1857
  ///
1853
1858
  /// \headerfile <x86intrin.h>
1854
1859
  ///
@@ -1898,16 +1903,16 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1898
1903
  /// 0x1E: Greater-than (ordered, non-signaling) \n
1899
1904
  /// 0x1F: True (unordered, signaling)
1900
1905
  /// \returns A 128-bit vector of [2 x double] containing the comparison results.
1901
- #define _mm_cmp_sd(a, b, c) \
1902
- ((__m128d)__builtin_ia32_cmpsd((__v2df)(__m128d)(a), \
1903
- (__v2df)(__m128d)(b), (c)))
1906
+ /// \fn __m128d _mm_cmp_sd(__m128d a, __m128d b, const int c)
1904
1907
 
1908
+ /* Below intrinsic defined in xmmintrin.h can be used for AVX */
1905
1909
  /// Compares each of the corresponding scalar values of two 128-bit
1906
1910
  /// vectors of [4 x float], using the operation specified by the immediate
1907
1911
  /// integer operand.
1908
1912
  ///
1909
- /// If the result is true, all 32 bits of the destination vector are set;
1910
- /// otherwise they are cleared.
1913
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFF for true.
1914
+ /// If either value in a comparison is NaN, comparisons that are ordered
1915
+ /// return false, and comparisons that are unordered return true.
1911
1916
  ///
1912
1917
  /// \headerfile <x86intrin.h>
1913
1918
  ///
@@ -1957,9 +1962,7 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1957
1962
  /// 0x1E: Greater-than (ordered, non-signaling) \n
1958
1963
  /// 0x1F: True (unordered, signaling)
1959
1964
  /// \returns A 128-bit vector of [4 x float] containing the comparison results.
1960
- #define _mm_cmp_ss(a, b, c) \
1961
- ((__m128)__builtin_ia32_cmpss((__v4sf)(__m128)(a), \
1962
- (__v4sf)(__m128)(b), (c)))
1965
+ /// \fn __m128 _mm_cmp_ss(__m128 a, __m128 b, const int c)
1963
1966
 
1964
1967
  /// Takes a [8 x i32] vector and returns the vector element value
1965
1968
  /// indexed by the immediate constant operand.
@@ -2209,6 +2212,10 @@ _mm256_cvtpd_ps(__m256d __a)
2209
2212
 
2210
2213
  /// Converts a vector of [8 x float] into a vector of [8 x i32].
2211
2214
  ///
2215
+ /// If a converted value does not fit in a 32-bit integer, raises a
2216
+ /// floating-point invalid exception. If the exception is masked, returns
2217
+ /// the most negative integer.
2218
+ ///
2212
2219
  /// \headerfile <x86intrin.h>
2213
2220
  ///
2214
2221
  /// This intrinsic corresponds to the <c> VCVTPS2DQ </c> instruction.
@@ -2238,9 +2245,13 @@ _mm256_cvtps_pd(__m128 __a)
2238
2245
  return (__m256d)__builtin_convertvector((__v4sf)__a, __v4df);
2239
2246
  }
2240
2247
 
2241
- /// Converts a 256-bit vector of [4 x double] into a 128-bit vector of [4
2242
- /// x i32], truncating the result by rounding towards zero when it is
2243
- /// inexact.
2248
+ /// Converts a 256-bit vector of [4 x double] into four signed truncated
2249
+ /// (rounded toward zero) 32-bit integers returned in a 128-bit vector of
2250
+ /// [4 x i32].
2251
+ ///
2252
+ /// If a converted value does not fit in a 32-bit integer, raises a
2253
+ /// floating-point invalid exception. If the exception is masked, returns
2254
+ /// the most negative integer.
2244
2255
  ///
2245
2256
  /// \headerfile <x86intrin.h>
2246
2257
  ///
@@ -2255,9 +2266,12 @@ _mm256_cvttpd_epi32(__m256d __a)
2255
2266
  return (__m128i)__builtin_ia32_cvttpd2dq256((__v4df) __a);
2256
2267
  }
2257
2268
 
2258
- /// Converts a 256-bit vector of [4 x double] into a 128-bit vector of [4
2259
- /// x i32]. When a conversion is inexact, the value returned is rounded
2260
- /// according to the rounding control bits in the MXCSR register.
2269
+ /// Converts a 256-bit vector of [4 x double] into a 128-bit vector of
2270
+ /// [4 x i32].
2271
+ ///
2272
+ /// If a converted value does not fit in a 32-bit integer, raises a
2273
+ /// floating-point invalid exception. If the exception is masked, returns
2274
+ /// the most negative integer.
2261
2275
  ///
2262
2276
  /// \headerfile <x86intrin.h>
2263
2277
  ///
@@ -2272,8 +2286,12 @@ _mm256_cvtpd_epi32(__m256d __a)
2272
2286
  return (__m128i)__builtin_ia32_cvtpd2dq256((__v4df) __a);
2273
2287
  }
2274
2288
 
2275
- /// Converts a vector of [8 x float] into a vector of [8 x i32],
2276
- /// truncating the result by rounding towards zero when it is inexact.
2289
+ /// Converts a vector of [8 x float] into eight signed truncated (rounded
2290
+ /// toward zero) 32-bit integers returned in a vector of [8 x i32].
2291
+ ///
2292
+ /// If a converted value does not fit in a 32-bit integer, raises a
2293
+ /// floating-point invalid exception. If the exception is masked, returns
2294
+ /// the most negative integer.
2277
2295
  ///
2278
2296
  /// \headerfile <x86intrin.h>
2279
2297
  ///
@@ -3563,7 +3581,7 @@ _mm_maskstore_ps(float *__p, __m128i __m, __m128 __a)
3563
3581
  /// \param __b
3564
3582
  /// A 256-bit integer vector containing the values to be moved.
3565
3583
  static __inline void __DEFAULT_FN_ATTRS
3566
- _mm256_stream_si256(__m256i *__a, __m256i __b)
3584
+ _mm256_stream_si256(void *__a, __m256i __b)
3567
3585
  {
3568
3586
  typedef __v4di __v4di_aligned __attribute__((aligned(32)));
3569
3587
  __builtin_nontemporal_store((__v4di_aligned)__b, (__v4di_aligned*)__a);
@@ -3583,7 +3601,7 @@ _mm256_stream_si256(__m256i *__a, __m256i __b)
3583
3601
  /// \param __b
3584
3602
  /// A 256-bit vector of [4 x double] containing the values to be moved.
3585
3603
  static __inline void __DEFAULT_FN_ATTRS
3586
- _mm256_stream_pd(double *__a, __m256d __b)
3604
+ _mm256_stream_pd(void *__a, __m256d __b)
3587
3605
  {
3588
3606
  typedef __v4df __v4df_aligned __attribute__((aligned(32)));
3589
3607
  __builtin_nontemporal_store((__v4df_aligned)__b, (__v4df_aligned*)__a);
@@ -3604,7 +3622,7 @@ _mm256_stream_pd(double *__a, __m256d __b)
3604
3622
  /// \param __a
3605
3623
  /// A 256-bit vector of [8 x float] containing the values to be moved.
3606
3624
  static __inline void __DEFAULT_FN_ATTRS
3607
- _mm256_stream_ps(float *__p, __m256 __a)
3625
+ _mm256_stream_ps(void *__p, __m256 __a)
3608
3626
  {
3609
3627
  typedef __v8sf __v8sf_aligned __attribute__((aligned(32)));
3610
3628
  __builtin_nontemporal_store((__v8sf_aligned)__a, (__v8sf_aligned*)__p);