@cpp-linter/clang-tidy-win32-x64 15.0.2 → 17.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy.exe +2 -2
  3. package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_intrinsics.h +191 -0
  4. package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_math.h +1 -1
  5. package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_texture_intrinsics.h +2 -0
  6. package/lib/clang/{15.0.2 → 17}/include/__clang_hip_cmath.h +1 -1
  7. package/lib/clang/{15.0.2 → 17}/include/__clang_hip_libdevice_declares.h +37 -30
  8. package/lib/clang/{15.0.2 → 17}/include/__clang_hip_math.h +66 -84
  9. package/lib/clang/{15.0.2 → 17}/include/__clang_hip_runtime_wrapper.h +14 -0
  10. package/lib/clang/17/include/__clang_hip_stdlib.h +43 -0
  11. package/lib/clang/17/include/adxintrin.h +227 -0
  12. package/lib/clang/{15.0.2 → 17}/include/altivec.h +150 -138
  13. package/lib/clang/17/include/amxcomplexintrin.h +169 -0
  14. package/lib/clang/17/include/amxfp16intrin.h +58 -0
  15. package/lib/clang/{15.0.2 → 17}/include/amxintrin.h +32 -0
  16. package/lib/clang/{15.0.2 → 17}/include/arm_acle.h +86 -81
  17. package/lib/clang/{15.0.2 → 17}/include/arm_fp16.h +1 -1
  18. package/lib/clang/{15.0.2 → 17}/include/arm_neon.h +26534 -26541
  19. package/lib/clang/{15.0.2 → 17}/include/arm_neon_sve_bridge.h +0 -2
  20. package/lib/clang/17/include/arm_sme_draft_spec_subject_to_change.h +642 -0
  21. package/lib/clang/{15.0.2 → 17}/include/arm_sve.h +7852 -7949
  22. package/lib/clang/17/include/avx2intrin.h +5263 -0
  23. package/lib/clang/{15.0.2 → 17}/include/avx512bf16intrin.h +18 -15
  24. package/lib/clang/{15.0.2 → 17}/include/avx512fintrin.h +19 -9
  25. package/lib/clang/{15.0.2 → 17}/include/avx512fp16intrin.h +18 -17
  26. package/lib/clang/{15.0.2 → 17}/include/avx512ifmavlintrin.h +13 -27
  27. package/lib/clang/{15.0.2 → 17}/include/avx512vlbf16intrin.h +31 -38
  28. package/lib/clang/{15.0.2 → 17}/include/avx512vlbwintrin.h +352 -0
  29. package/lib/clang/{15.0.2 → 17}/include/avx512vlfp16intrin.h +3 -0
  30. package/lib/clang/17/include/avxifmaintrin.h +177 -0
  31. package/lib/clang/{15.0.2 → 17}/include/avxintrin.h +32 -9
  32. package/lib/clang/17/include/avxneconvertintrin.h +484 -0
  33. package/lib/clang/17/include/avxvnniint16intrin.h +473 -0
  34. package/lib/clang/17/include/avxvnniint8intrin.h +471 -0
  35. package/lib/clang/17/include/bmi2intrin.h +255 -0
  36. package/lib/clang/{15.0.2 → 17}/include/clflushoptintrin.h +9 -0
  37. package/lib/clang/{15.0.2 → 17}/include/clzerointrin.h +7 -5
  38. package/lib/clang/17/include/cmpccxaddintrin.h +70 -0
  39. package/lib/clang/{15.0.2 → 17}/include/cpuid.h +11 -1
  40. package/lib/clang/17/include/cuda_wrappers/bits/basic_string.h +9 -0
  41. package/lib/clang/17/include/cuda_wrappers/bits/basic_string.tcc +9 -0
  42. package/lib/clang/17/include/cuda_wrappers/bits/shared_ptr_base.h +9 -0
  43. package/lib/clang/17/include/cuda_wrappers/cmath +90 -0
  44. package/lib/clang/{15.0.2 → 17}/include/emmintrin.h +11 -1
  45. package/lib/clang/{15.0.2 → 17}/include/float.h +17 -10
  46. package/lib/clang/17/include/fmaintrin.h +780 -0
  47. package/lib/clang/{15.0.2 → 17}/include/gfniintrin.h +7 -5
  48. package/lib/clang/{15.0.2 → 17}/include/hlsl/hlsl_basic_types.h +3 -0
  49. package/lib/clang/17/include/hlsl/hlsl_intrinsics.h +480 -0
  50. package/lib/clang/{15.0.2 → 17}/include/immintrin.h +151 -11
  51. package/lib/clang/17/include/larchintrin.h +234 -0
  52. package/lib/clang/{15.0.2 → 17}/include/limits.h +8 -3
  53. package/lib/clang/17/include/llvm_libc_wrappers/ctype.h +85 -0
  54. package/lib/clang/17/include/llvm_libc_wrappers/inttypes.h +34 -0
  55. package/lib/clang/17/include/llvm_libc_wrappers/stdio.h +34 -0
  56. package/lib/clang/17/include/llvm_libc_wrappers/stdlib.h +42 -0
  57. package/lib/clang/17/include/llvm_libc_wrappers/string.h +37 -0
  58. package/lib/clang/17/include/mwaitxintrin.h +62 -0
  59. package/lib/clang/{15.0.2 → 17}/include/opencl-c-base.h +22 -0
  60. package/lib/clang/{15.0.2 → 17}/include/opencl-c.h +175 -145
  61. package/lib/clang/{15.0.2 → 17}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -1
  62. package/lib/clang/{15.0.2 → 17}/include/openmp_wrappers/new +1 -1
  63. package/lib/clang/{15.0.2 → 17}/include/pmmintrin.h +12 -6
  64. package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/emmintrin.h +4 -3
  65. package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/mm_malloc.h +1 -1
  66. package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/mmintrin.h +2 -2
  67. package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/pmmintrin.h +2 -2
  68. package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/smmintrin.h +4 -4
  69. package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/tmmintrin.h +2 -2
  70. package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/xmmintrin.h +2 -2
  71. package/lib/clang/17/include/prfchiintrin.h +61 -0
  72. package/lib/clang/17/include/raointintrin.h +203 -0
  73. package/lib/clang/17/include/rdseedintrin.h +105 -0
  74. package/lib/clang/17/include/riscv_ntlh.h +28 -0
  75. package/lib/clang/17/include/riscv_vector.h +400 -0
  76. package/lib/clang/17/include/sha512intrin.h +200 -0
  77. package/lib/clang/17/include/shaintrin.h +189 -0
  78. package/lib/clang/17/include/sifive_vector.h +16 -0
  79. package/lib/clang/17/include/sm3intrin.h +238 -0
  80. package/lib/clang/17/include/sm4intrin.h +269 -0
  81. package/lib/clang/{15.0.2 → 17}/include/smmintrin.h +2 -2
  82. package/lib/clang/{15.0.2 → 17}/include/stdalign.h +5 -0
  83. package/lib/clang/{15.0.2 → 17}/include/stdarg.h +23 -7
  84. package/lib/clang/{15.0.2 → 17}/include/stdatomic.h +14 -4
  85. package/lib/clang/{15.0.2 → 17}/include/stdbool.h +2 -2
  86. package/lib/clang/{15.0.2 → 17}/include/stddef.h +13 -1
  87. package/lib/clang/{15.0.2 → 17}/include/stdint.h +158 -40
  88. package/lib/clang/{15.0.2 → 17}/include/stdnoreturn.h +1 -1
  89. package/lib/clang/{15.0.2 → 17}/include/unwind.h +2 -1
  90. package/lib/clang/{15.0.2 → 17}/include/velintrin.h +1 -1
  91. package/lib/clang/{15.0.2 → 17}/include/wasm_simd128.h +132 -12
  92. package/lib/clang/{15.0.2 → 17}/include/x86gprintrin.h +19 -7
  93. package/lib/clang/{15.0.2 → 17}/include/xmmintrin.h +1 -2
  94. package/lib/clang/17/include/xsavecintrin.h +84 -0
  95. package/package.json +6 -6
  96. package/lib/clang/15.0.2/include/adxintrin.h +0 -72
  97. package/lib/clang/15.0.2/include/avx2intrin.h +0 -1148
  98. package/lib/clang/15.0.2/include/bmi2intrin.h +0 -81
  99. package/lib/clang/15.0.2/include/fmaintrin.h +0 -216
  100. package/lib/clang/15.0.2/include/hlsl/hlsl_intrinsics.h +0 -15
  101. package/lib/clang/15.0.2/include/mwaitxintrin.h +0 -33
  102. package/lib/clang/15.0.2/include/rdseedintrin.h +0 -42
  103. package/lib/clang/15.0.2/include/riscv_vector.h +0 -202
  104. package/lib/clang/15.0.2/include/shaintrin.h +0 -61
  105. package/lib/clang/15.0.2/include/xsavecintrin.h +0 -34
  106. /package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_builtin_vars.h +0 -0
  107. /package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_cmath.h +0 -0
  108. /package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_complex_builtins.h +0 -0
  109. /package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_device_functions.h +0 -0
  110. /package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_libdevice_declares.h +0 -0
  111. /package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_math_forward_declares.h +0 -0
  112. /package/lib/clang/{15.0.2 → 17}/include/__clang_cuda_runtime_wrapper.h +0 -0
  113. /package/lib/clang/{15.0.2 → 17}/include/__stddef_max_align_t.h +0 -0
  114. /package/lib/clang/{15.0.2 → 17}/include/__wmmintrin_aes.h +0 -0
  115. /package/lib/clang/{15.0.2 → 17}/include/__wmmintrin_pclmul.h +0 -0
  116. /package/lib/clang/{15.0.2 → 17}/include/ammintrin.h +0 -0
  117. /package/lib/clang/{15.0.2 → 17}/include/arm64intr.h +0 -0
  118. /package/lib/clang/{15.0.2 → 17}/include/arm_bf16.h +0 -0
  119. /package/lib/clang/{15.0.2 → 17}/include/arm_cde.h +0 -0
  120. /package/lib/clang/{15.0.2 → 17}/include/arm_cmse.h +0 -0
  121. /package/lib/clang/{15.0.2 → 17}/include/arm_mve.h +0 -0
  122. /package/lib/clang/{15.0.2 → 17}/include/armintr.h +0 -0
  123. /package/lib/clang/{15.0.2 → 17}/include/avx512bitalgintrin.h +0 -0
  124. /package/lib/clang/{15.0.2 → 17}/include/avx512bwintrin.h +0 -0
  125. /package/lib/clang/{15.0.2 → 17}/include/avx512cdintrin.h +0 -0
  126. /package/lib/clang/{15.0.2 → 17}/include/avx512dqintrin.h +0 -0
  127. /package/lib/clang/{15.0.2 → 17}/include/avx512erintrin.h +0 -0
  128. /package/lib/clang/{15.0.2 → 17}/include/avx512ifmaintrin.h +0 -0
  129. /package/lib/clang/{15.0.2 → 17}/include/avx512pfintrin.h +0 -0
  130. /package/lib/clang/{15.0.2 → 17}/include/avx512vbmi2intrin.h +0 -0
  131. /package/lib/clang/{15.0.2 → 17}/include/avx512vbmiintrin.h +0 -0
  132. /package/lib/clang/{15.0.2 → 17}/include/avx512vbmivlintrin.h +0 -0
  133. /package/lib/clang/{15.0.2 → 17}/include/avx512vlbitalgintrin.h +0 -0
  134. /package/lib/clang/{15.0.2 → 17}/include/avx512vlcdintrin.h +0 -0
  135. /package/lib/clang/{15.0.2 → 17}/include/avx512vldqintrin.h +0 -0
  136. /package/lib/clang/{15.0.2 → 17}/include/avx512vlintrin.h +0 -0
  137. /package/lib/clang/{15.0.2 → 17}/include/avx512vlvbmi2intrin.h +0 -0
  138. /package/lib/clang/{15.0.2 → 17}/include/avx512vlvnniintrin.h +0 -0
  139. /package/lib/clang/{15.0.2 → 17}/include/avx512vlvp2intersectintrin.h +0 -0
  140. /package/lib/clang/{15.0.2 → 17}/include/avx512vnniintrin.h +0 -0
  141. /package/lib/clang/{15.0.2 → 17}/include/avx512vp2intersectintrin.h +0 -0
  142. /package/lib/clang/{15.0.2 → 17}/include/avx512vpopcntdqintrin.h +0 -0
  143. /package/lib/clang/{15.0.2 → 17}/include/avx512vpopcntdqvlintrin.h +0 -0
  144. /package/lib/clang/{15.0.2 → 17}/include/avxvnniintrin.h +0 -0
  145. /package/lib/clang/{15.0.2 → 17}/include/bmiintrin.h +0 -0
  146. /package/lib/clang/{15.0.2 → 17}/include/builtins.h +0 -0
  147. /package/lib/clang/{15.0.2 → 17}/include/cet.h +0 -0
  148. /package/lib/clang/{15.0.2 → 17}/include/cetintrin.h +0 -0
  149. /package/lib/clang/{15.0.2 → 17}/include/cldemoteintrin.h +0 -0
  150. /package/lib/clang/{15.0.2 → 17}/include/clwbintrin.h +0 -0
  151. /package/lib/clang/{15.0.2 → 17}/include/crc32intrin.h +0 -0
  152. /package/lib/clang/{15.0.2 → 17}/include/cuda_wrappers/algorithm +0 -0
  153. /package/lib/clang/{15.0.2 → 17}/include/cuda_wrappers/complex +0 -0
  154. /package/lib/clang/{15.0.2 → 17}/include/cuda_wrappers/new +0 -0
  155. /package/lib/clang/{15.0.2 → 17}/include/enqcmdintrin.h +0 -0
  156. /package/lib/clang/{15.0.2 → 17}/include/f16cintrin.h +0 -0
  157. /package/lib/clang/{15.0.2 → 17}/include/fma4intrin.h +0 -0
  158. /package/lib/clang/{15.0.2 → 17}/include/fxsrintrin.h +0 -0
  159. /package/lib/clang/{15.0.2 → 17}/include/hexagon_circ_brev_intrinsics.h +0 -0
  160. /package/lib/clang/{15.0.2 → 17}/include/hexagon_protos.h +0 -0
  161. /package/lib/clang/{15.0.2 → 17}/include/hexagon_types.h +0 -0
  162. /package/lib/clang/{15.0.2 → 17}/include/hlsl.h +0 -0
  163. /package/lib/clang/{15.0.2 → 17}/include/hresetintrin.h +0 -0
  164. /package/lib/clang/{15.0.2 → 17}/include/htmintrin.h +0 -0
  165. /package/lib/clang/{15.0.2 → 17}/include/htmxlintrin.h +0 -0
  166. /package/lib/clang/{15.0.2 → 17}/include/hvx_hexagon_protos.h +0 -0
  167. /package/lib/clang/{15.0.2 → 17}/include/ia32intrin.h +0 -0
  168. /package/lib/clang/{15.0.2 → 17}/include/intrin.h +0 -0
  169. /package/lib/clang/{15.0.2 → 17}/include/inttypes.h +0 -0
  170. /package/lib/clang/{15.0.2 → 17}/include/invpcidintrin.h +0 -0
  171. /package/lib/clang/{15.0.2 → 17}/include/iso646.h +0 -0
  172. /package/lib/clang/{15.0.2 → 17}/include/keylockerintrin.h +0 -0
  173. /package/lib/clang/{15.0.2 → 17}/include/lwpintrin.h +0 -0
  174. /package/lib/clang/{15.0.2 → 17}/include/lzcntintrin.h +0 -0
  175. /package/lib/clang/{15.0.2 → 17}/include/mm3dnow.h +0 -0
  176. /package/lib/clang/{15.0.2 → 17}/include/mm_malloc.h +0 -0
  177. /package/lib/clang/{15.0.2 → 17}/include/mmintrin.h +0 -0
  178. /package/lib/clang/{15.0.2 → 17}/include/module.modulemap +0 -0
  179. /package/lib/clang/{15.0.2 → 17}/include/movdirintrin.h +0 -0
  180. /package/lib/clang/{15.0.2 → 17}/include/msa.h +0 -0
  181. /package/lib/clang/{15.0.2 → 17}/include/nmmintrin.h +0 -0
  182. /package/lib/clang/{15.0.2 → 17}/include/openmp_wrappers/cmath +0 -0
  183. /package/lib/clang/{15.0.2 → 17}/include/openmp_wrappers/complex +0 -0
  184. /package/lib/clang/{15.0.2 → 17}/include/openmp_wrappers/complex.h +0 -0
  185. /package/lib/clang/{15.0.2 → 17}/include/openmp_wrappers/complex_cmath.h +0 -0
  186. /package/lib/clang/{15.0.2 → 17}/include/openmp_wrappers/math.h +0 -0
  187. /package/lib/clang/{15.0.2 → 17}/include/pconfigintrin.h +0 -0
  188. /package/lib/clang/{15.0.2 → 17}/include/pkuintrin.h +0 -0
  189. /package/lib/clang/{15.0.2 → 17}/include/popcntintrin.h +0 -0
  190. /package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/bmi2intrin.h +0 -0
  191. /package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/bmiintrin.h +0 -0
  192. /package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/immintrin.h +0 -0
  193. /package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/x86gprintrin.h +0 -0
  194. /package/lib/clang/{15.0.2 → 17}/include/ppc_wrappers/x86intrin.h +0 -0
  195. /package/lib/clang/{15.0.2 → 17}/include/prfchwintrin.h +0 -0
  196. /package/lib/clang/{15.0.2 → 17}/include/ptwriteintrin.h +0 -0
  197. /package/lib/clang/{15.0.2 → 17}/include/rdpruintrin.h +0 -0
  198. /package/lib/clang/{15.0.2 → 17}/include/rtmintrin.h +0 -0
  199. /package/lib/clang/{15.0.2 → 17}/include/s390intrin.h +0 -0
  200. /package/lib/clang/{15.0.2 → 17}/include/serializeintrin.h +0 -0
  201. /package/lib/clang/{15.0.2 → 17}/include/sgxintrin.h +0 -0
  202. /package/lib/clang/{15.0.2 → 17}/include/tbmintrin.h +0 -0
  203. /package/lib/clang/{15.0.2 → 17}/include/tgmath.h +0 -0
  204. /package/lib/clang/{15.0.2 → 17}/include/tmmintrin.h +0 -0
  205. /package/lib/clang/{15.0.2 → 17}/include/tsxldtrkintrin.h +0 -0
  206. /package/lib/clang/{15.0.2 → 17}/include/uintrintrin.h +0 -0
  207. /package/lib/clang/{15.0.2 → 17}/include/vadefs.h +0 -0
  208. /package/lib/clang/{15.0.2 → 17}/include/vaesintrin.h +0 -0
  209. /package/lib/clang/{15.0.2 → 17}/include/varargs.h +0 -0
  210. /package/lib/clang/{15.0.2 → 17}/include/vecintrin.h +0 -0
  211. /package/lib/clang/{15.0.2 → 17}/include/velintrin_approx.h +0 -0
  212. /package/lib/clang/{15.0.2 → 17}/include/velintrin_gen.h +0 -0
  213. /package/lib/clang/{15.0.2 → 17}/include/vpclmulqdqintrin.h +0 -0
  214. /package/lib/clang/{15.0.2 → 17}/include/waitpkgintrin.h +0 -0
  215. /package/lib/clang/{15.0.2 → 17}/include/wbnoinvdintrin.h +0 -0
  216. /package/lib/clang/{15.0.2 → 17}/include/wmmintrin.h +0 -0
  217. /package/lib/clang/{15.0.2 → 17}/include/x86intrin.h +0 -0
  218. /package/lib/clang/{15.0.2 → 17}/include/xopintrin.h +0 -0
  219. /package/lib/clang/{15.0.2 → 17}/include/xsaveintrin.h +0 -0
  220. /package/lib/clang/{15.0.2 → 17}/include/xsaveoptintrin.h +0 -0
  221. /package/lib/clang/{15.0.2 → 17}/include/xsavesintrin.h +0 -0
  222. /package/lib/clang/{15.0.2 → 17}/include/xtestintrin.h +0 -0
@@ -0,0 +1,227 @@
1
+ /*===---- adxintrin.h - ADX intrinsics -------------------------------------===
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 <adxintrin.h> directly; include <immintrin.h> instead."
12
+ #endif
13
+
14
+ #ifndef __ADXINTRIN_H
15
+ #define __ADXINTRIN_H
16
+
17
+ /* Define the default attributes for the functions in this file. */
18
+ #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
19
+
20
+ /* Use C++ inline semantics in C++, GNU inline for C mode. */
21
+ #if defined(__cplusplus)
22
+ #define __INLINE __inline
23
+ #else
24
+ #define __INLINE static __inline
25
+ #endif
26
+
27
+ #if defined(__cplusplus)
28
+ extern "C" {
29
+ #endif
30
+
31
+ /* Intrinsics that are available only if __ADX__ is defined. */
32
+
33
+ /// Adds unsigned 32-bit integers \a __x and \a __y, plus 0 or 1 as indicated
34
+ /// by the carry flag \a __cf. Stores the unsigned 32-bit sum in the memory
35
+ /// at \a __p, and returns the 8-bit carry-out (carry flag).
36
+ ///
37
+ /// \code{.operation}
38
+ /// temp := (__cf == 0) ? 0 : 1
39
+ /// Store32(__p, __x + __y + temp)
40
+ /// result := CF
41
+ /// \endcode
42
+ ///
43
+ /// \headerfile <immintrin.h>
44
+ ///
45
+ /// This intrinsic corresponds to the \c ADCX instruction.
46
+ ///
47
+ /// \param __cf
48
+ /// The 8-bit unsigned carry flag; any non-zero value indicates carry.
49
+ /// \param __x
50
+ /// A 32-bit unsigned addend.
51
+ /// \param __y
52
+ /// A 32-bit unsigned addend.
53
+ /// \param __p
54
+ /// Pointer to memory for storing the sum.
55
+ /// \returns The 8-bit unsigned carry-out value.
56
+ __INLINE unsigned char
57
+ __attribute__((__always_inline__, __nodebug__, __target__("adx")))
58
+ _addcarryx_u32(unsigned char __cf, unsigned int __x, unsigned int __y,
59
+ unsigned int *__p) {
60
+ return __builtin_ia32_addcarryx_u32(__cf, __x, __y, __p);
61
+ }
62
+
63
+ #ifdef __x86_64__
64
+ /// Adds unsigned 64-bit integers \a __x and \a __y, plus 0 or 1 as indicated
65
+ /// by the carry flag \a __cf. Stores the unsigned 64-bit sum in the memory
66
+ /// at \a __p, and returns the 8-bit carry-out (carry flag).
67
+ ///
68
+ /// \code{.operation}
69
+ /// temp := (__cf == 0) ? 0 : 1
70
+ /// Store64(__p, __x + __y + temp)
71
+ /// result := CF
72
+ /// \endcode
73
+ ///
74
+ /// \headerfile <immintrin.h>
75
+ ///
76
+ /// This intrinsic corresponds to the \c ADCX instruction.
77
+ ///
78
+ /// \param __cf
79
+ /// The 8-bit unsigned carry flag; any non-zero value indicates carry.
80
+ /// \param __x
81
+ /// A 64-bit unsigned addend.
82
+ /// \param __y
83
+ /// A 64-bit unsigned addend.
84
+ /// \param __p
85
+ /// Pointer to memory for storing the sum.
86
+ /// \returns The 8-bit unsigned carry-out value.
87
+ __INLINE unsigned char
88
+ __attribute__((__always_inline__, __nodebug__, __target__("adx")))
89
+ _addcarryx_u64(unsigned char __cf, unsigned long long __x,
90
+ unsigned long long __y, unsigned long long *__p) {
91
+ return __builtin_ia32_addcarryx_u64(__cf, __x, __y, __p);
92
+ }
93
+ #endif
94
+
95
+ /* Intrinsics that are also available if __ADX__ is undefined. */
96
+
97
+ /// Adds unsigned 32-bit integers \a __x and \a __y, plus 0 or 1 as indicated
98
+ /// by the carry flag \a __cf. Stores the unsigned 32-bit sum in the memory
99
+ /// at \a __p, and returns the 8-bit carry-out (carry flag).
100
+ ///
101
+ /// \code{.operation}
102
+ /// temp := (__cf == 0) ? 0 : 1
103
+ /// Store32(__p, __x + __y + temp)
104
+ /// result := CF
105
+ /// \endcode
106
+ ///
107
+ /// \headerfile <immintrin.h>
108
+ ///
109
+ /// This intrinsic corresponds to the \c ADC instruction.
110
+ ///
111
+ /// \param __cf
112
+ /// The 8-bit unsigned carry flag; any non-zero value indicates carry.
113
+ /// \param __x
114
+ /// A 32-bit unsigned addend.
115
+ /// \param __y
116
+ /// A 32-bit unsigned addend.
117
+ /// \param __p
118
+ /// Pointer to memory for storing the sum.
119
+ /// \returns The 8-bit unsigned carry-out value.
120
+ __INLINE unsigned char __DEFAULT_FN_ATTRS _addcarry_u32(unsigned char __cf,
121
+ unsigned int __x,
122
+ unsigned int __y,
123
+ unsigned int *__p) {
124
+ return __builtin_ia32_addcarryx_u32(__cf, __x, __y, __p);
125
+ }
126
+
127
+ #ifdef __x86_64__
128
+ /// Adds unsigned 64-bit integers \a __x and \a __y, plus 0 or 1 as indicated
129
+ /// by the carry flag \a __cf. Stores the unsigned 64-bit sum in the memory
130
+ /// at \a __p, and returns the 8-bit carry-out (carry flag).
131
+ ///
132
+ /// \code{.operation}
133
+ /// temp := (__cf == 0) ? 0 : 1
134
+ /// Store64(__p, __x + __y + temp)
135
+ /// result := CF
136
+ /// \endcode
137
+ ///
138
+ /// \headerfile <immintrin.h>
139
+ ///
140
+ /// This intrinsic corresponds to the \c ADC instruction.
141
+ ///
142
+ /// \param __cf
143
+ /// The 8-bit unsigned carry flag; any non-zero value indicates carry.
144
+ /// \param __x
145
+ /// A 64-bit unsigned addend.
146
+ /// \param __y
147
+ /// A 64-bit unsigned addend.
148
+ /// \param __p
149
+ /// Pointer to memory for storing the sum.
150
+ /// \returns The 8-bit unsigned carry-out value.
151
+ __INLINE unsigned char __DEFAULT_FN_ATTRS
152
+ _addcarry_u64(unsigned char __cf, unsigned long long __x,
153
+ unsigned long long __y, unsigned long long *__p) {
154
+ return __builtin_ia32_addcarryx_u64(__cf, __x, __y, __p);
155
+ }
156
+ #endif
157
+
158
+ /// Adds unsigned 32-bit integer \a __y to 0 or 1 as indicated by the carry
159
+ /// flag \a __cf, and subtracts the result from unsigned 32-bit integer
160
+ /// \a __x. Stores the unsigned 32-bit difference in the memory at \a __p,
161
+ /// and returns the 8-bit carry-out (carry or overflow flag).
162
+ ///
163
+ /// \code{.operation}
164
+ /// temp := (__cf == 0) ? 0 : 1
165
+ /// Store32(__p, __x - (__y + temp))
166
+ /// result := CF
167
+ /// \endcode
168
+ ///
169
+ /// \headerfile <immintrin.h>
170
+ ///
171
+ /// This intrinsic corresponds to the \c SBB instruction.
172
+ ///
173
+ /// \param __cf
174
+ /// The 8-bit unsigned carry flag; any non-zero value indicates carry.
175
+ /// \param __x
176
+ /// The 32-bit unsigned minuend.
177
+ /// \param __y
178
+ /// The 32-bit unsigned subtrahend.
179
+ /// \param __p
180
+ /// Pointer to memory for storing the difference.
181
+ /// \returns The 8-bit unsigned carry-out value.
182
+ __INLINE unsigned char __DEFAULT_FN_ATTRS _subborrow_u32(unsigned char __cf,
183
+ unsigned int __x,
184
+ unsigned int __y,
185
+ unsigned int *__p) {
186
+ return __builtin_ia32_subborrow_u32(__cf, __x, __y, __p);
187
+ }
188
+
189
+ #ifdef __x86_64__
190
+ /// Adds unsigned 64-bit integer \a __y to 0 or 1 as indicated by the carry
191
+ /// flag \a __cf, and subtracts the result from unsigned 64-bit integer
192
+ /// \a __x. Stores the unsigned 64-bit difference in the memory at \a __p,
193
+ /// and returns the 8-bit carry-out (carry or overflow flag).
194
+ ///
195
+ /// \code{.operation}
196
+ /// temp := (__cf == 0) ? 0 : 1
197
+ /// Store64(__p, __x - (__y + temp))
198
+ /// result := CF
199
+ /// \endcode
200
+ ///
201
+ /// \headerfile <immintrin.h>
202
+ ///
203
+ /// This intrinsic corresponds to the \c ADC instruction.
204
+ ///
205
+ /// \param __cf
206
+ /// The 8-bit unsigned carry flag; any non-zero value indicates carry.
207
+ /// \param __x
208
+ /// The 64-bit unsigned minuend.
209
+ /// \param __y
210
+ /// The 64-bit unsigned subtrahend.
211
+ /// \param __p
212
+ /// Pointer to memory for storing the difference.
213
+ /// \returns The 8-bit unsigned carry-out value.
214
+ __INLINE unsigned char __DEFAULT_FN_ATTRS
215
+ _subborrow_u64(unsigned char __cf, unsigned long long __x,
216
+ unsigned long long __y, unsigned long long *__p) {
217
+ return __builtin_ia32_subborrow_u64(__cf, __x, __y, __p);
218
+ }
219
+ #endif
220
+
221
+ #if defined(__cplusplus)
222
+ }
223
+ #endif
224
+
225
+ #undef __DEFAULT_FN_ATTRS
226
+
227
+ #endif /* __ADXINTRIN_H */
@@ -3202,71 +3202,79 @@ static __inline__ vector double __ATTRS_o_ai vec_cpsgn(vector double __a,
3202
3202
  // the XL-compatible signatures are used for those functions.
3203
3203
  #ifdef __XL_COMPAT_ALTIVEC__
3204
3204
  #define vec_ctf(__a, __b) \
3205
- _Generic( \
3206
- (__a), vector int \
3207
- : (vector float)__builtin_altivec_vcfsx((vector int)(__a), (__b)), \
3208
- vector unsigned int \
3209
- : (vector float)__builtin_altivec_vcfux((vector unsigned int)(__a), \
3210
- (__b)), \
3211
- vector unsigned long long \
3212
- : (vector float)(__builtin_vsx_xvcvuxdsp( \
3213
- (vector unsigned long long)(__a)) * \
3214
- (vector float)(vector unsigned)((0x7f - (__b)) << 23)), \
3215
- vector signed long long \
3216
- : (vector float)(__builtin_vsx_xvcvsxdsp( \
3217
- (vector signed long long)(__a)) * \
3218
- (vector float)(vector unsigned)((0x7f - (__b)) << 23)))
3205
+ _Generic((__a), \
3206
+ vector int: (vector float)__builtin_altivec_vcfsx((vector int)(__a), \
3207
+ ((__b)&0x1F)), \
3208
+ vector unsigned int: (vector float)__builtin_altivec_vcfux( \
3209
+ (vector unsigned int)(__a), ((__b)&0x1F)), \
3210
+ vector unsigned long long: ( \
3211
+ vector float)(__builtin_vsx_xvcvuxdsp( \
3212
+ (vector unsigned long long)(__a)) * \
3213
+ (vector float)(vector unsigned)((0x7f - \
3214
+ ((__b)&0x1F)) \
3215
+ << 23)), \
3216
+ vector signed long long: ( \
3217
+ vector float)(__builtin_vsx_xvcvsxdsp( \
3218
+ (vector signed long long)(__a)) * \
3219
+ (vector float)(vector unsigned)((0x7f - \
3220
+ ((__b)&0x1F)) \
3221
+ << 23)))
3219
3222
  #else // __XL_COMPAT_ALTIVEC__
3220
- #define vec_ctf(__a, __b) \
3221
- _Generic( \
3222
- (__a), vector int \
3223
- : (vector float)__builtin_altivec_vcfsx((vector int)(__a), (__b)), \
3224
- vector unsigned int \
3225
- : (vector float)__builtin_altivec_vcfux((vector unsigned int)(__a), \
3226
- (__b)), \
3227
- vector unsigned long long \
3228
- : (vector float)(__builtin_convertvector( \
3229
- (vector unsigned long long)(__a), vector double) * \
3230
- (vector double)(vector unsigned long long)((0x3ffULL - \
3231
- (__b)) \
3232
- << 52)), \
3233
- vector signed long long \
3234
- : (vector float)(__builtin_convertvector((vector signed long long)(__a), \
3235
- vector double) * \
3236
- (vector double)(vector unsigned long long)((0x3ffULL - \
3237
- (__b)) \
3238
- << 52)))
3223
+ #define vec_ctf(__a, __b) \
3224
+ _Generic( \
3225
+ (__a), \
3226
+ vector int: (vector float)__builtin_altivec_vcfsx((vector int)(__a), \
3227
+ ((__b)&0x1F)), \
3228
+ vector unsigned int: (vector float)__builtin_altivec_vcfux( \
3229
+ (vector unsigned int)(__a), ((__b)&0x1F)), \
3230
+ vector unsigned long long: ( \
3231
+ vector float)(__builtin_convertvector( \
3232
+ (vector unsigned long long)(__a), vector double) * \
3233
+ (vector double)(vector unsigned long long)((0x3ffULL - \
3234
+ ((__b)&0x1F)) \
3235
+ << 52)), \
3236
+ vector signed long long: ( \
3237
+ vector float)(__builtin_convertvector( \
3238
+ (vector signed long long)(__a), vector double) * \
3239
+ (vector double)(vector unsigned long long)((0x3ffULL - \
3240
+ ((__b)&0x1F)) \
3241
+ << 52)))
3239
3242
  #endif // __XL_COMPAT_ALTIVEC__
3240
3243
  #else
3241
3244
  #define vec_ctf(__a, __b) \
3242
- _Generic((__a), vector int \
3243
- : (vector float)__builtin_altivec_vcfsx((vector int)(__a), (__b)), \
3244
- vector unsigned int \
3245
- : (vector float)__builtin_altivec_vcfux((vector unsigned int)(__a), \
3246
- (__b)))
3245
+ _Generic((__a), \
3246
+ vector int: (vector float)__builtin_altivec_vcfsx((vector int)(__a), \
3247
+ ((__b)&0x1F)), \
3248
+ vector unsigned int: (vector float)__builtin_altivec_vcfux( \
3249
+ (vector unsigned int)(__a), ((__b)&0x1F)))
3247
3250
  #endif
3248
3251
 
3249
3252
  /* vec_ctd */
3250
3253
  #ifdef __VSX__
3251
3254
  #define vec_ctd(__a, __b) \
3252
- _Generic((__a), vector signed int \
3253
- : (vec_doublee((vector signed int)(__a)) * \
3254
- (vector double)(vector unsigned long long)((0x3ffULL - (__b)) \
3255
- << 52)), \
3256
- vector unsigned int \
3257
- : (vec_doublee((vector unsigned int)(__a)) * \
3258
- (vector double)(vector unsigned long long)((0x3ffULL - (__b)) \
3259
- << 52)), \
3260
- vector unsigned long long \
3261
- : (__builtin_convertvector((vector unsigned long long)(__a), \
3262
- vector double) * \
3263
- (vector double)(vector unsigned long long)((0x3ffULL - (__b)) \
3264
- << 52)), \
3265
- vector signed long long \
3266
- : (__builtin_convertvector((vector signed long long)(__a), \
3267
- vector double) * \
3268
- (vector double)(vector unsigned long long)((0x3ffULL - (__b)) \
3269
- << 52)))
3255
+ _Generic((__a), \
3256
+ vector signed int: ( \
3257
+ vec_doublee((vector signed int)(__a)) * \
3258
+ (vector double)(vector unsigned long long)((0x3ffULL - \
3259
+ ((__b)&0x1F)) \
3260
+ << 52)), \
3261
+ vector unsigned int: ( \
3262
+ vec_doublee((vector unsigned int)(__a)) * \
3263
+ (vector double)(vector unsigned long long)((0x3ffULL - \
3264
+ ((__b)&0x1F)) \
3265
+ << 52)), \
3266
+ vector unsigned long long: ( \
3267
+ __builtin_convertvector((vector unsigned long long)(__a), \
3268
+ vector double) * \
3269
+ (vector double)(vector unsigned long long)((0x3ffULL - \
3270
+ ((__b)&0x1F)) \
3271
+ << 52)), \
3272
+ vector signed long long: ( \
3273
+ __builtin_convertvector((vector signed long long)(__a), \
3274
+ vector double) * \
3275
+ (vector double)(vector unsigned long long)((0x3ffULL - \
3276
+ ((__b)&0x1F)) \
3277
+ << 52)))
3270
3278
  #endif // __VSX__
3271
3279
 
3272
3280
  /* vec_vcfsx */
@@ -3281,27 +3289,27 @@ static __inline__ vector double __ATTRS_o_ai vec_cpsgn(vector double __a,
3281
3289
  #ifdef __VSX__
3282
3290
  #ifdef __XL_COMPAT_ALTIVEC__
3283
3291
  #define vec_cts(__a, __b) \
3284
- _Generic((__a), vector float \
3285
- : (vector signed int)__builtin_altivec_vctsxs((vector float)(__a), \
3286
- (__b)), \
3287
- vector double \
3288
- : __extension__({ \
3292
+ _Generic((__a), \
3293
+ vector float: (vector signed int)__builtin_altivec_vctsxs( \
3294
+ (vector float)(__a), ((__b)&0x1F)), \
3295
+ vector double: __extension__({ \
3289
3296
  vector double __ret = \
3290
3297
  (vector double)(__a) * \
3291
- (vector double)(vector unsigned long long)((0x3ffULL + (__b)) \
3298
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3299
+ ((__b)&0x1F)) \
3292
3300
  << 52); \
3293
3301
  (vector signed long long)__builtin_vsx_xvcvdpsxws(__ret); \
3294
3302
  }))
3295
3303
  #else // __XL_COMPAT_ALTIVEC__
3296
3304
  #define vec_cts(__a, __b) \
3297
- _Generic((__a), vector float \
3298
- : (vector signed int)__builtin_altivec_vctsxs((vector float)(__a), \
3299
- (__b)), \
3300
- vector double \
3301
- : __extension__({ \
3305
+ _Generic((__a), \
3306
+ vector float: (vector signed int)__builtin_altivec_vctsxs( \
3307
+ (vector float)(__a), ((__b)&0x1F)), \
3308
+ vector double: __extension__({ \
3302
3309
  vector double __ret = \
3303
3310
  (vector double)(__a) * \
3304
- (vector double)(vector unsigned long long)((0x3ffULL + (__b)) \
3311
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3312
+ ((__b)&0x1F)) \
3305
3313
  << 52); \
3306
3314
  (vector signed long long)__builtin_convertvector( \
3307
3315
  __ret, vector signed long long); \
@@ -3320,27 +3328,27 @@ static __inline__ vector double __ATTRS_o_ai vec_cpsgn(vector double __a,
3320
3328
  #ifdef __VSX__
3321
3329
  #ifdef __XL_COMPAT_ALTIVEC__
3322
3330
  #define vec_ctu(__a, __b) \
3323
- _Generic((__a), vector float \
3324
- : (vector unsigned int)__builtin_altivec_vctuxs( \
3325
- (vector float)(__a), (__b)), \
3326
- vector double \
3327
- : __extension__({ \
3331
+ _Generic((__a), \
3332
+ vector float: (vector unsigned int)__builtin_altivec_vctuxs( \
3333
+ (vector float)(__a), ((__b)&0x1F)), \
3334
+ vector double: __extension__({ \
3328
3335
  vector double __ret = \
3329
3336
  (vector double)(__a) * \
3330
- (vector double)(vector unsigned long long)((0x3ffULL + __b) \
3337
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3338
+ ((__b)&0x1F)) \
3331
3339
  << 52); \
3332
3340
  (vector unsigned long long)__builtin_vsx_xvcvdpuxws(__ret); \
3333
3341
  }))
3334
3342
  #else // __XL_COMPAT_ALTIVEC__
3335
3343
  #define vec_ctu(__a, __b) \
3336
- _Generic((__a), vector float \
3337
- : (vector unsigned int)__builtin_altivec_vctuxs( \
3338
- (vector float)(__a), (__b)), \
3339
- vector double \
3340
- : __extension__({ \
3344
+ _Generic((__a), \
3345
+ vector float: (vector unsigned int)__builtin_altivec_vctuxs( \
3346
+ (vector float)(__a), ((__b)&0x1F)), \
3347
+ vector double: __extension__({ \
3341
3348
  vector double __ret = \
3342
3349
  (vector double)(__a) * \
3343
- (vector double)(vector unsigned long long)((0x3ffULL + __b) \
3350
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3351
+ ((__b)&0x1F)) \
3344
3352
  << 52); \
3345
3353
  (vector unsigned long long)__builtin_convertvector( \
3346
3354
  __ret, vector unsigned long long); \
@@ -3355,60 +3363,62 @@ static __inline__ vector double __ATTRS_o_ai vec_cpsgn(vector double __a,
3355
3363
 
3356
3364
  #ifdef __VSX__
3357
3365
  #define vec_ctsl(__a, __b) \
3358
- _Generic((__a), vector float \
3359
- : __extension__({ \
3360
- vector float __ret = \
3361
- (vector float)(__a) * \
3362
- (vector float)(vector unsigned)((0x7f + (__b)) << 23); \
3363
- __builtin_vsx_xvcvspsxds( \
3364
- __builtin_vsx_xxsldwi(__ret, __ret, 1)); \
3365
- }), \
3366
- vector double \
3367
- : __extension__({ \
3368
- vector double __ret = \
3369
- (vector double)(__a) * \
3370
- (vector double)(vector unsigned long long)((0x3ffULL + __b) \
3371
- << 52); \
3372
- __builtin_convertvector(__ret, vector signed long long); \
3373
- }))
3366
+ _Generic( \
3367
+ (__a), vector float \
3368
+ : __extension__({ \
3369
+ vector float __ret = \
3370
+ (vector float)(__a) * \
3371
+ (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) << 23); \
3372
+ __builtin_vsx_xvcvspsxds(__builtin_vsx_xxsldwi(__ret, __ret, 1)); \
3373
+ }), \
3374
+ vector double \
3375
+ : __extension__({ \
3376
+ vector double __ret = \
3377
+ (vector double)(__a) * \
3378
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3379
+ ((__b)&0x1F)) \
3380
+ << 52); \
3381
+ __builtin_convertvector(__ret, vector signed long long); \
3382
+ }))
3374
3383
 
3375
3384
  /* vec_ctul */
3376
3385
 
3377
3386
  #define vec_ctul(__a, __b) \
3378
- _Generic((__a), vector float \
3379
- : __extension__({ \
3380
- vector float __ret = \
3381
- (vector float)(__a) * \
3382
- (vector float)(vector unsigned)((0x7f + (__b)) << 23); \
3383
- __builtin_vsx_xvcvspuxds( \
3384
- __builtin_vsx_xxsldwi(__ret, __ret, 1)); \
3385
- }), \
3386
- vector double \
3387
- : __extension__({ \
3388
- vector double __ret = \
3389
- (vector double)(__a) * \
3390
- (vector double)(vector unsigned long long)((0x3ffULL + __b) \
3391
- << 52); \
3392
- __builtin_convertvector(__ret, vector unsigned long long); \
3393
- }))
3387
+ _Generic( \
3388
+ (__a), vector float \
3389
+ : __extension__({ \
3390
+ vector float __ret = \
3391
+ (vector float)(__a) * \
3392
+ (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) << 23); \
3393
+ __builtin_vsx_xvcvspuxds(__builtin_vsx_xxsldwi(__ret, __ret, 1)); \
3394
+ }), \
3395
+ vector double \
3396
+ : __extension__({ \
3397
+ vector double __ret = \
3398
+ (vector double)(__a) * \
3399
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3400
+ ((__b)&0x1F)) \
3401
+ << 52); \
3402
+ __builtin_convertvector(__ret, vector unsigned long long); \
3403
+ }))
3394
3404
  #endif
3395
3405
  #else // __LITTLE_ENDIAN__
3396
3406
  /* vec_ctsl */
3397
3407
 
3398
3408
  #ifdef __VSX__
3399
3409
  #define vec_ctsl(__a, __b) \
3400
- _Generic((__a), vector float \
3401
- : __extension__({ \
3402
- vector float __ret = \
3403
- (vector float)(__a) * \
3404
- (vector float)(vector unsigned)((0x7f + (__b)) << 23); \
3405
- __builtin_vsx_xvcvspsxds(__ret); \
3406
- }), \
3407
- vector double \
3408
- : __extension__({ \
3410
+ _Generic((__a), \
3411
+ vector float: __extension__({ \
3412
+ vector float __ret = \
3413
+ (vector float)(__a) * \
3414
+ (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) << 23); \
3415
+ __builtin_vsx_xvcvspsxds(__ret); \
3416
+ }), \
3417
+ vector double: __extension__({ \
3409
3418
  vector double __ret = \
3410
3419
  (vector double)(__a) * \
3411
- (vector double)(vector unsigned long long)((0x3ffULL + __b) \
3420
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3421
+ ((__b)&0x1F)) \
3412
3422
  << 52); \
3413
3423
  __builtin_convertvector(__ret, vector signed long long); \
3414
3424
  }))
@@ -3420,14 +3430,16 @@ static __inline__ vector double __ATTRS_o_ai vec_cpsgn(vector double __a,
3420
3430
  : __extension__({ \
3421
3431
  vector float __ret = \
3422
3432
  (vector float)(__a) * \
3423
- (vector float)(vector unsigned)((0x7f + (__b)) << 23); \
3433
+ (vector float)(vector unsigned)((0x7f + ((__b)&0x1F)) \
3434
+ << 23); \
3424
3435
  __builtin_vsx_xvcvspuxds(__ret); \
3425
3436
  }), \
3426
3437
  vector double \
3427
3438
  : __extension__({ \
3428
3439
  vector double __ret = \
3429
3440
  (vector double)(__a) * \
3430
- (vector double)(vector unsigned long long)((0x3ffULL + __b) \
3441
+ (vector double)(vector unsigned long long)((0x3ffULL + \
3442
+ ((__b)&0x1F)) \
3431
3443
  << 52); \
3432
3444
  __builtin_convertvector(__ret, vector unsigned long long); \
3433
3445
  }))
@@ -17323,32 +17335,32 @@ provided.
17323
17335
  #define vec_ncipherlast_be __builtin_altivec_crypto_vncipherlast
17324
17336
 
17325
17337
  #ifdef __VSX__
17326
- static __inline__ vector unsigned long long __attribute__((__always_inline__))
17327
- __builtin_crypto_vsbox(vector unsigned long long __a) {
17338
+ static __inline__ vector unsigned char __attribute__((__always_inline__))
17339
+ __builtin_crypto_vsbox(vector unsigned char __a) {
17328
17340
  return __builtin_altivec_crypto_vsbox(__a);
17329
17341
  }
17330
17342
 
17331
- static __inline__ vector unsigned long long __attribute__((__always_inline__))
17332
- __builtin_crypto_vcipher(vector unsigned long long __a,
17333
- vector unsigned long long __b) {
17343
+ static __inline__ vector unsigned char __attribute__((__always_inline__))
17344
+ __builtin_crypto_vcipher(vector unsigned char __a,
17345
+ vector unsigned char __b) {
17334
17346
  return __builtin_altivec_crypto_vcipher(__a, __b);
17335
17347
  }
17336
17348
 
17337
- static __inline__ vector unsigned long long __attribute__((__always_inline__))
17338
- __builtin_crypto_vcipherlast(vector unsigned long long __a,
17339
- vector unsigned long long __b) {
17349
+ static __inline__ vector unsigned char __attribute__((__always_inline__))
17350
+ __builtin_crypto_vcipherlast(vector unsigned char __a,
17351
+ vector unsigned char __b) {
17340
17352
  return __builtin_altivec_crypto_vcipherlast(__a, __b);
17341
17353
  }
17342
17354
 
17343
- static __inline__ vector unsigned long long __attribute__((__always_inline__))
17344
- __builtin_crypto_vncipher(vector unsigned long long __a,
17345
- vector unsigned long long __b) {
17355
+ static __inline__ vector unsigned char __attribute__((__always_inline__))
17356
+ __builtin_crypto_vncipher(vector unsigned char __a,
17357
+ vector unsigned char __b) {
17346
17358
  return __builtin_altivec_crypto_vncipher(__a, __b);
17347
17359
  }
17348
17360
 
17349
- static __inline__ vector unsigned long long __attribute__((__always_inline__))
17350
- __builtin_crypto_vncipherlast(vector unsigned long long __a,
17351
- vector unsigned long long __b) {
17361
+ static __inline__ vector unsigned char __attribute__((__always_inline__))
17362
+ __builtin_crypto_vncipherlast(vector unsigned char __a,
17363
+ vector unsigned char __b) {
17352
17364
  return __builtin_altivec_crypto_vncipherlast(__a, __b);
17353
17365
  }
17354
17366
  #endif /* __VSX__ */