@cpp-linter/clang-tidy-linux-arm64 19.1.0 → 20.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 (276) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{19 → 20}/include/__clang_cuda_device_functions.h +14 -0
  4. package/lib/clang/{19 → 20}/include/__clang_cuda_math.h +5 -0
  5. package/lib/clang/{19 → 20}/include/__clang_hip_cmath.h +6 -1
  6. package/lib/clang/{19 → 20}/include/__clang_hip_math.h +5 -0
  7. package/lib/clang/{19 → 20}/include/adcintrin.h +5 -0
  8. package/lib/clang/{19 → 20}/include/adxintrin.h +5 -0
  9. package/lib/clang/{19 → 20}/include/altivec.h +8 -8
  10. package/lib/clang/20/include/amdgpuintrin.h +194 -0
  11. package/lib/clang/20/include/amxavx512intrin.h +382 -0
  12. package/lib/clang/20/include/amxbf16transposeintrin.h +94 -0
  13. package/lib/clang/20/include/amxcomplextransposeintrin.h +303 -0
  14. package/lib/clang/{19 → 20}/include/amxfp16intrin.h +35 -0
  15. package/lib/clang/20/include/amxfp16transposeintrin.h +94 -0
  16. package/lib/clang/20/include/amxfp8intrin.h +230 -0
  17. package/lib/clang/{19 → 20}/include/amxintrin.h +5 -35
  18. package/lib/clang/20/include/amxmovrsintrin.h +48 -0
  19. package/lib/clang/20/include/amxmovrstransposeintrin.h +200 -0
  20. package/lib/clang/20/include/amxtf32intrin.h +108 -0
  21. package/lib/clang/20/include/amxtf32transposeintrin.h +105 -0
  22. package/lib/clang/20/include/amxtransposeintrin.h +248 -0
  23. package/lib/clang/{19 → 20}/include/arm_acle.h +18 -21
  24. package/lib/clang/{19 → 20}/include/arm_neon.h +3587 -1696
  25. package/lib/clang/{19 → 20}/include/arm_sme.h +322 -94
  26. package/lib/clang/{19 → 20}/include/arm_sve.h +1105 -84
  27. package/lib/clang/{19 → 20}/include/arm_vector_types.h +87 -0
  28. package/lib/clang/20/include/avx10_2_512bf16intrin.h +561 -0
  29. package/lib/clang/20/include/avx10_2_512convertintrin.h +320 -0
  30. package/lib/clang/20/include/avx10_2_512minmaxintrin.h +127 -0
  31. package/lib/clang/20/include/avx10_2_512niintrin.h +314 -0
  32. package/lib/clang/20/include/avx10_2_512satcvtdsintrin.h +303 -0
  33. package/lib/clang/20/include/avx10_2_512satcvtintrin.h +301 -0
  34. package/lib/clang/20/include/avx10_2bf16intrin.h +1085 -0
  35. package/lib/clang/20/include/avx10_2convertintrin.h +589 -0
  36. package/lib/clang/20/include/avx10_2copyintrin.h +66 -0
  37. package/lib/clang/20/include/avx10_2minmaxintrin.h +277 -0
  38. package/lib/clang/20/include/avx10_2niintrin.h +2075 -0
  39. package/lib/clang/20/include/avx10_2satcvtdsintrin.h +496 -0
  40. package/lib/clang/20/include/avx10_2satcvtintrin.h +444 -0
  41. package/lib/clang/{19 → 20}/include/avx2intrin.h +9 -0
  42. package/lib/clang/{19 → 20}/include/avx512bitalgintrin.h +2 -2
  43. package/lib/clang/{19 → 20}/include/avx512fintrin.h +22 -14
  44. package/lib/clang/{19 → 20}/include/avx512vlbitalgintrin.h +4 -4
  45. package/lib/clang/{19 → 20}/include/avx512vpopcntdqintrin.h +12 -4
  46. package/lib/clang/{19 → 20}/include/avx512vpopcntdqvlintrin.h +16 -8
  47. package/lib/clang/{19 → 20}/include/avxintrin.h +30 -16
  48. package/lib/clang/{19 → 20}/include/avxvnniint16intrin.h +36 -77
  49. package/lib/clang/{19 → 20}/include/avxvnniint8intrin.h +36 -77
  50. package/lib/clang/{19 → 20}/include/bmi2intrin.h +15 -17
  51. package/lib/clang/{19 → 20}/include/bmiintrin.h +31 -37
  52. package/lib/clang/{19 → 20}/include/cmpccxaddintrin.h +1 -1
  53. package/lib/clang/{19 → 20}/include/cpuid.h +12 -11
  54. package/lib/clang/{19 → 20}/include/cuda_wrappers/cmath +4 -0
  55. package/lib/clang/{19 → 20}/include/cuda_wrappers/new +2 -0
  56. package/lib/clang/{19 → 20}/include/emmintrin.h +141 -107
  57. package/lib/clang/{19 → 20}/include/gfniintrin.h +32 -10
  58. package/lib/clang/20/include/gpuintrin.h +224 -0
  59. package/lib/clang/{19 → 20}/include/hexagon_types.h +8 -4
  60. package/lib/clang/{19 → 20}/include/hlsl/hlsl_basic_types.h +47 -1
  61. package/lib/clang/20/include/hlsl/hlsl_detail.h +84 -0
  62. package/lib/clang/{19 → 20}/include/hlsl/hlsl_intrinsics.h +1199 -82
  63. package/lib/clang/{19 → 20}/include/hlsl.h +11 -0
  64. package/lib/clang/{19 → 20}/include/hvx_hexagon_protos.h +427 -0
  65. package/lib/clang/{19 → 20}/include/immintrin.h +87 -3
  66. package/lib/clang/{19 → 20}/include/intrin.h +20 -10
  67. package/lib/clang/{19 → 20}/include/intrin0.h +10 -1
  68. package/lib/clang/{19 → 20}/include/larchintrin.h +22 -8
  69. package/lib/clang/{19 → 20}/include/lasxintrin.h +27 -25
  70. package/lib/clang/{19 → 20}/include/limits.h +7 -4
  71. package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/ctype.h +38 -0
  72. package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/stdlib.h +8 -0
  73. package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
  74. package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
  75. package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
  76. package/lib/clang/{19 → 20}/include/lsxintrin.h +27 -25
  77. package/lib/clang/{19 → 20}/include/lzcntintrin.h +10 -7
  78. package/lib/clang/{19 → 20}/include/mmintrin.h +209 -155
  79. package/lib/clang/{19 → 20}/include/module.modulemap +2 -4
  80. package/lib/clang/20/include/movrs_avx10_2_512intrin.h +98 -0
  81. package/lib/clang/20/include/movrs_avx10_2intrin.h +174 -0
  82. package/lib/clang/20/include/movrsintrin.h +59 -0
  83. package/lib/clang/20/include/nvptxintrin.h +202 -0
  84. package/lib/clang/{19 → 20}/include/opencl-c-base.h +4 -0
  85. package/lib/clang/{19 → 20}/include/openmp_wrappers/__clang_openmp_device_functions.h +4 -5
  86. package/lib/clang/{19 → 20}/include/openmp_wrappers/complex_cmath.h +7 -2
  87. package/lib/clang/{19 → 20}/include/pmmintrin.h +16 -3
  88. package/lib/clang/{19 → 20}/include/popcntintrin.h +7 -7
  89. package/lib/clang/{19 → 20}/include/ptrauth.h +6 -0
  90. package/lib/clang/20/include/riscv_corev_alu.h +128 -0
  91. package/lib/clang/{19 → 20}/include/riscv_vector.h +0 -1
  92. package/lib/clang/20/include/sm4evexintrin.h +32 -0
  93. package/lib/clang/{19 → 20}/include/smmintrin.h +6 -0
  94. package/lib/clang/{19 → 20}/include/stdalign.h +0 -5
  95. package/lib/clang/{19 → 20}/include/tbmintrin.h +25 -37
  96. package/lib/clang/{19 → 20}/include/tmmintrin.h +64 -38
  97. package/lib/clang/{19 → 20}/include/vecintrin.h +1778 -60
  98. package/lib/clang/{19 → 20}/include/wasm_simd128.h +167 -21
  99. package/lib/clang/{19 → 20}/include/xmmintrin.h +170 -177
  100. package/package.json +6 -6
  101. /package/lib/clang/{19 → 20}/include/__clang_cuda_builtin_vars.h +0 -0
  102. /package/lib/clang/{19 → 20}/include/__clang_cuda_cmath.h +0 -0
  103. /package/lib/clang/{19 → 20}/include/__clang_cuda_complex_builtins.h +0 -0
  104. /package/lib/clang/{19 → 20}/include/__clang_cuda_intrinsics.h +0 -0
  105. /package/lib/clang/{19 → 20}/include/__clang_cuda_libdevice_declares.h +0 -0
  106. /package/lib/clang/{19 → 20}/include/__clang_cuda_math_forward_declares.h +0 -0
  107. /package/lib/clang/{19 → 20}/include/__clang_cuda_runtime_wrapper.h +0 -0
  108. /package/lib/clang/{19 → 20}/include/__clang_cuda_texture_intrinsics.h +0 -0
  109. /package/lib/clang/{19 → 20}/include/__clang_hip_libdevice_declares.h +0 -0
  110. /package/lib/clang/{19 → 20}/include/__clang_hip_runtime_wrapper.h +0 -0
  111. /package/lib/clang/{19 → 20}/include/__clang_hip_stdlib.h +0 -0
  112. /package/lib/clang/{19 → 20}/include/__stdarg___gnuc_va_list.h +0 -0
  113. /package/lib/clang/{19 → 20}/include/__stdarg___va_copy.h +0 -0
  114. /package/lib/clang/{19 → 20}/include/__stdarg_header_macro.h +0 -0
  115. /package/lib/clang/{19 → 20}/include/__stdarg_va_arg.h +0 -0
  116. /package/lib/clang/{19 → 20}/include/__stdarg_va_copy.h +0 -0
  117. /package/lib/clang/{19 → 20}/include/__stdarg_va_list.h +0 -0
  118. /package/lib/clang/{19 → 20}/include/__stddef_header_macro.h +0 -0
  119. /package/lib/clang/{19 → 20}/include/__stddef_max_align_t.h +0 -0
  120. /package/lib/clang/{19 → 20}/include/__stddef_null.h +0 -0
  121. /package/lib/clang/{19 → 20}/include/__stddef_nullptr_t.h +0 -0
  122. /package/lib/clang/{19 → 20}/include/__stddef_offsetof.h +0 -0
  123. /package/lib/clang/{19 → 20}/include/__stddef_ptrdiff_t.h +0 -0
  124. /package/lib/clang/{19 → 20}/include/__stddef_rsize_t.h +0 -0
  125. /package/lib/clang/{19 → 20}/include/__stddef_size_t.h +0 -0
  126. /package/lib/clang/{19 → 20}/include/__stddef_unreachable.h +0 -0
  127. /package/lib/clang/{19 → 20}/include/__stddef_wchar_t.h +0 -0
  128. /package/lib/clang/{19 → 20}/include/__stddef_wint_t.h +0 -0
  129. /package/lib/clang/{19 → 20}/include/__wmmintrin_aes.h +0 -0
  130. /package/lib/clang/{19 → 20}/include/__wmmintrin_pclmul.h +0 -0
  131. /package/lib/clang/{19 → 20}/include/ammintrin.h +0 -0
  132. /package/lib/clang/{19 → 20}/include/amxcomplexintrin.h +0 -0
  133. /package/lib/clang/{19 → 20}/include/arm64intr.h +0 -0
  134. /package/lib/clang/{19 → 20}/include/arm_bf16.h +0 -0
  135. /package/lib/clang/{19 → 20}/include/arm_cde.h +0 -0
  136. /package/lib/clang/{19 → 20}/include/arm_cmse.h +0 -0
  137. /package/lib/clang/{19 → 20}/include/arm_fp16.h +0 -0
  138. /package/lib/clang/{19 → 20}/include/arm_mve.h +0 -0
  139. /package/lib/clang/{19 → 20}/include/arm_neon_sve_bridge.h +0 -0
  140. /package/lib/clang/{19 → 20}/include/armintr.h +0 -0
  141. /package/lib/clang/{19 → 20}/include/avx512bf16intrin.h +0 -0
  142. /package/lib/clang/{19 → 20}/include/avx512bwintrin.h +0 -0
  143. /package/lib/clang/{19 → 20}/include/avx512cdintrin.h +0 -0
  144. /package/lib/clang/{19 → 20}/include/avx512dqintrin.h +0 -0
  145. /package/lib/clang/{19 → 20}/include/avx512fp16intrin.h +0 -0
  146. /package/lib/clang/{19 → 20}/include/avx512ifmaintrin.h +0 -0
  147. /package/lib/clang/{19 → 20}/include/avx512ifmavlintrin.h +0 -0
  148. /package/lib/clang/{19 → 20}/include/avx512vbmi2intrin.h +0 -0
  149. /package/lib/clang/{19 → 20}/include/avx512vbmiintrin.h +0 -0
  150. /package/lib/clang/{19 → 20}/include/avx512vbmivlintrin.h +0 -0
  151. /package/lib/clang/{19 → 20}/include/avx512vlbf16intrin.h +0 -0
  152. /package/lib/clang/{19 → 20}/include/avx512vlbwintrin.h +0 -0
  153. /package/lib/clang/{19 → 20}/include/avx512vlcdintrin.h +0 -0
  154. /package/lib/clang/{19 → 20}/include/avx512vldqintrin.h +0 -0
  155. /package/lib/clang/{19 → 20}/include/avx512vlfp16intrin.h +0 -0
  156. /package/lib/clang/{19 → 20}/include/avx512vlintrin.h +0 -0
  157. /package/lib/clang/{19 → 20}/include/avx512vlvbmi2intrin.h +0 -0
  158. /package/lib/clang/{19 → 20}/include/avx512vlvnniintrin.h +0 -0
  159. /package/lib/clang/{19 → 20}/include/avx512vlvp2intersectintrin.h +0 -0
  160. /package/lib/clang/{19 → 20}/include/avx512vnniintrin.h +0 -0
  161. /package/lib/clang/{19 → 20}/include/avx512vp2intersectintrin.h +0 -0
  162. /package/lib/clang/{19 → 20}/include/avxifmaintrin.h +0 -0
  163. /package/lib/clang/{19 → 20}/include/avxneconvertintrin.h +0 -0
  164. /package/lib/clang/{19 → 20}/include/avxvnniintrin.h +0 -0
  165. /package/lib/clang/{19 → 20}/include/builtins.h +0 -0
  166. /package/lib/clang/{19 → 20}/include/cet.h +0 -0
  167. /package/lib/clang/{19 → 20}/include/cetintrin.h +0 -0
  168. /package/lib/clang/{19 → 20}/include/cldemoteintrin.h +0 -0
  169. /package/lib/clang/{19 → 20}/include/clflushoptintrin.h +0 -0
  170. /package/lib/clang/{19 → 20}/include/clwbintrin.h +0 -0
  171. /package/lib/clang/{19 → 20}/include/clzerointrin.h +0 -0
  172. /package/lib/clang/{19 → 20}/include/crc32intrin.h +0 -0
  173. /package/lib/clang/{19 → 20}/include/cuda_wrappers/algorithm +0 -0
  174. /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/basic_string.h +0 -0
  175. /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  176. /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  177. /package/lib/clang/{19 → 20}/include/cuda_wrappers/complex +0 -0
  178. /package/lib/clang/{19 → 20}/include/enqcmdintrin.h +0 -0
  179. /package/lib/clang/{19 → 20}/include/f16cintrin.h +0 -0
  180. /package/lib/clang/{19 → 20}/include/float.h +0 -0
  181. /package/lib/clang/{19 → 20}/include/fma4intrin.h +0 -0
  182. /package/lib/clang/{19 → 20}/include/fmaintrin.h +0 -0
  183. /package/lib/clang/{19 → 20}/include/fxsrintrin.h +0 -0
  184. /package/lib/clang/{19 → 20}/include/hexagon_circ_brev_intrinsics.h +0 -0
  185. /package/lib/clang/{19 → 20}/include/hexagon_protos.h +0 -0
  186. /package/lib/clang/{19 → 20}/include/hresetintrin.h +0 -0
  187. /package/lib/clang/{19 → 20}/include/htmintrin.h +0 -0
  188. /package/lib/clang/{19 → 20}/include/htmxlintrin.h +0 -0
  189. /package/lib/clang/{19 → 20}/include/ia32intrin.h +0 -0
  190. /package/lib/clang/{19 → 20}/include/inttypes.h +0 -0
  191. /package/lib/clang/{19 → 20}/include/invpcidintrin.h +0 -0
  192. /package/lib/clang/{19 → 20}/include/iso646.h +0 -0
  193. /package/lib/clang/{19 → 20}/include/keylockerintrin.h +0 -0
  194. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/assert.h +0 -0
  195. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/inttypes.h +0 -0
  196. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/stdio.h +0 -0
  197. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/string.h +0 -0
  198. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/time.h +0 -0
  199. /package/lib/clang/{19 → 20}/include/lwpintrin.h +0 -0
  200. /package/lib/clang/{19 → 20}/include/mm3dnow.h +0 -0
  201. /package/lib/clang/{19 → 20}/include/mm_malloc.h +0 -0
  202. /package/lib/clang/{19 → 20}/include/movdirintrin.h +0 -0
  203. /package/lib/clang/{19 → 20}/include/msa.h +0 -0
  204. /package/lib/clang/{19 → 20}/include/mwaitxintrin.h +0 -0
  205. /package/lib/clang/{19 → 20}/include/nmmintrin.h +0 -0
  206. /package/lib/clang/{19 → 20}/include/opencl-c.h +0 -0
  207. /package/lib/clang/{19 → 20}/include/openmp_wrappers/cmath +0 -0
  208. /package/lib/clang/{19 → 20}/include/openmp_wrappers/complex +0 -0
  209. /package/lib/clang/{19 → 20}/include/openmp_wrappers/complex.h +0 -0
  210. /package/lib/clang/{19 → 20}/include/openmp_wrappers/math.h +0 -0
  211. /package/lib/clang/{19 → 20}/include/openmp_wrappers/new +0 -0
  212. /package/lib/clang/{19 → 20}/include/pconfigintrin.h +0 -0
  213. /package/lib/clang/{19 → 20}/include/pkuintrin.h +0 -0
  214. /package/lib/clang/{19 → 20}/include/ppc_wrappers/bmi2intrin.h +0 -0
  215. /package/lib/clang/{19 → 20}/include/ppc_wrappers/bmiintrin.h +0 -0
  216. /package/lib/clang/{19 → 20}/include/ppc_wrappers/emmintrin.h +0 -0
  217. /package/lib/clang/{19 → 20}/include/ppc_wrappers/immintrin.h +0 -0
  218. /package/lib/clang/{19 → 20}/include/ppc_wrappers/mm_malloc.h +0 -0
  219. /package/lib/clang/{19 → 20}/include/ppc_wrappers/mmintrin.h +0 -0
  220. /package/lib/clang/{19 → 20}/include/ppc_wrappers/nmmintrin.h +0 -0
  221. /package/lib/clang/{19 → 20}/include/ppc_wrappers/pmmintrin.h +0 -0
  222. /package/lib/clang/{19 → 20}/include/ppc_wrappers/smmintrin.h +0 -0
  223. /package/lib/clang/{19 → 20}/include/ppc_wrappers/tmmintrin.h +0 -0
  224. /package/lib/clang/{19 → 20}/include/ppc_wrappers/x86gprintrin.h +0 -0
  225. /package/lib/clang/{19 → 20}/include/ppc_wrappers/x86intrin.h +0 -0
  226. /package/lib/clang/{19 → 20}/include/ppc_wrappers/xmmintrin.h +0 -0
  227. /package/lib/clang/{19 → 20}/include/prfchiintrin.h +0 -0
  228. /package/lib/clang/{19 → 20}/include/prfchwintrin.h +0 -0
  229. /package/lib/clang/{19 → 20}/include/ptwriteintrin.h +0 -0
  230. /package/lib/clang/{19 → 20}/include/raointintrin.h +0 -0
  231. /package/lib/clang/{19 → 20}/include/rdpruintrin.h +0 -0
  232. /package/lib/clang/{19 → 20}/include/rdseedintrin.h +0 -0
  233. /package/lib/clang/{19 → 20}/include/riscv_bitmanip.h +0 -0
  234. /package/lib/clang/{19 → 20}/include/riscv_crypto.h +0 -0
  235. /package/lib/clang/{19 → 20}/include/riscv_ntlh.h +0 -0
  236. /package/lib/clang/{19 → 20}/include/rtmintrin.h +0 -0
  237. /package/lib/clang/{19 → 20}/include/s390intrin.h +0 -0
  238. /package/lib/clang/{19 → 20}/include/serializeintrin.h +0 -0
  239. /package/lib/clang/{19 → 20}/include/sgxintrin.h +0 -0
  240. /package/lib/clang/{19 → 20}/include/sha512intrin.h +0 -0
  241. /package/lib/clang/{19 → 20}/include/shaintrin.h +0 -0
  242. /package/lib/clang/{19 → 20}/include/sifive_vector.h +0 -0
  243. /package/lib/clang/{19 → 20}/include/sm3intrin.h +0 -0
  244. /package/lib/clang/{19 → 20}/include/sm4intrin.h +0 -0
  245. /package/lib/clang/{19 → 20}/include/stdarg.h +0 -0
  246. /package/lib/clang/{19 → 20}/include/stdatomic.h +0 -0
  247. /package/lib/clang/{19 → 20}/include/stdbool.h +0 -0
  248. /package/lib/clang/{19 → 20}/include/stdckdint.h +0 -0
  249. /package/lib/clang/{19 → 20}/include/stddef.h +0 -0
  250. /package/lib/clang/{19 → 20}/include/stdint.h +0 -0
  251. /package/lib/clang/{19 → 20}/include/stdnoreturn.h +0 -0
  252. /package/lib/clang/{19 → 20}/include/tgmath.h +0 -0
  253. /package/lib/clang/{19 → 20}/include/tsxldtrkintrin.h +0 -0
  254. /package/lib/clang/{19 → 20}/include/uintrintrin.h +0 -0
  255. /package/lib/clang/{19 → 20}/include/unwind.h +0 -0
  256. /package/lib/clang/{19 → 20}/include/usermsrintrin.h +0 -0
  257. /package/lib/clang/{19 → 20}/include/vadefs.h +0 -0
  258. /package/lib/clang/{19 → 20}/include/vaesintrin.h +0 -0
  259. /package/lib/clang/{19 → 20}/include/varargs.h +0 -0
  260. /package/lib/clang/{19 → 20}/include/velintrin.h +0 -0
  261. /package/lib/clang/{19 → 20}/include/velintrin_approx.h +0 -0
  262. /package/lib/clang/{19 → 20}/include/velintrin_gen.h +0 -0
  263. /package/lib/clang/{19 → 20}/include/vpclmulqdqintrin.h +0 -0
  264. /package/lib/clang/{19 → 20}/include/waitpkgintrin.h +0 -0
  265. /package/lib/clang/{19 → 20}/include/wbnoinvdintrin.h +0 -0
  266. /package/lib/clang/{19 → 20}/include/wmmintrin.h +0 -0
  267. /package/lib/clang/{19 → 20}/include/x86gprintrin.h +0 -0
  268. /package/lib/clang/{19 → 20}/include/x86intrin.h +0 -0
  269. /package/lib/clang/{19 → 20}/include/xopintrin.h +0 -0
  270. /package/lib/clang/{19 → 20}/include/xsavecintrin.h +0 -0
  271. /package/lib/clang/{19 → 20}/include/xsaveintrin.h +0 -0
  272. /package/lib/clang/{19 → 20}/include/xsaveoptintrin.h +0 -0
  273. /package/lib/clang/{19 → 20}/include/xsavesintrin.h +0 -0
  274. /package/lib/clang/{19 → 20}/include/xtestintrin.h +0 -0
  275. /package/lib/clang/{19 → 20}/include/yvals_core.h +0 -0
  276. /package/lib/clang/{19 → 20}/include/zos_wrappers/builtins.h +0 -0
@@ -468,6 +468,27 @@ vec_perm(__vector __bool long long __a, __vector __bool long long __b,
468
468
  (__vector unsigned char)__a, (__vector unsigned char)__b, __c);
469
469
  }
470
470
 
471
+ static inline __ATTRS_o_ai __vector signed __int128
472
+ vec_perm(__vector signed __int128 __a, __vector signed __int128 __b,
473
+ __vector unsigned char __c) {
474
+ return (__vector signed __int128)__builtin_s390_vperm(
475
+ (__vector unsigned char)__a, (__vector unsigned char)__b, __c);
476
+ }
477
+
478
+ static inline __ATTRS_o_ai __vector unsigned __int128
479
+ vec_perm(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
480
+ __vector unsigned char __c) {
481
+ return (__vector unsigned __int128)__builtin_s390_vperm(
482
+ (__vector unsigned char)__a, (__vector unsigned char)__b, __c);
483
+ }
484
+
485
+ static inline __ATTRS_o_ai __vector __bool __int128
486
+ vec_perm(__vector __bool __int128 __a, __vector __bool __int128 __b,
487
+ __vector unsigned char __c) {
488
+ return (__vector __bool __int128)__builtin_s390_vperm(
489
+ (__vector unsigned char)__a, (__vector unsigned char)__b, __c);
490
+ }
491
+
471
492
  #if __ARCH__ >= 12
472
493
  static inline __ATTRS_o_ai __vector float
473
494
  vec_perm(__vector float __a, __vector float __b,
@@ -514,9 +535,19 @@ vec_permi(__vector double __a, __vector double __b, int __c)
514
535
  (__vector unsigned long long)(Y), \
515
536
  (((Z) & 2) << 1) | ((Z) & 1)))
516
537
 
538
+ /*-- vec_bperm --------------------------------------------------------------*/
539
+
540
+ #if __ARCH__ >= 12
541
+ static inline __ATTRS_ai __vector unsigned long long
542
+ vec_bperm(__vector unsigned __int128 __a, __vector unsigned char __b) {
543
+ return __builtin_s390_vbperm((__vector unsigned char)__a, __b);
544
+ }
545
+ #endif
546
+
517
547
  /*-- vec_bperm_u128 ---------------------------------------------------------*/
518
548
 
519
549
  #if __ARCH__ >= 12
550
+ // This prototype is deprecated.
520
551
  static inline __ATTRS_ai __vector unsigned long long
521
552
  vec_bperm_u128(__vector unsigned char __a, __vector unsigned char __b) {
522
553
  return __builtin_s390_vbperm(__a, __b);
@@ -558,6 +589,18 @@ vec_revb(__vector unsigned long long __vec) {
558
589
  return __builtin_s390_vlbrg(__vec);
559
590
  }
560
591
 
592
+ static inline __ATTRS_o_ai __vector signed __int128
593
+ vec_revb(__vector signed __int128 __vec) {
594
+ return (__vector signed __int128)
595
+ __builtin_s390_vlbrq((unsigned __int128)__vec);
596
+ }
597
+
598
+ static inline __ATTRS_o_ai __vector unsigned __int128
599
+ vec_revb(__vector unsigned __int128 __vec) {
600
+ return (__vector unsigned __int128)
601
+ __builtin_s390_vlbrq((unsigned __int128)__vec);
602
+ }
603
+
561
604
  #if __ARCH__ >= 12
562
605
  static inline __ATTRS_o_ai __vector float
563
606
  vec_revb(__vector float __vec) {
@@ -820,6 +863,46 @@ vec_sel(__vector unsigned long long __a, __vector unsigned long long __b,
820
863
  (~(__vector unsigned long long)__c & __a));
821
864
  }
822
865
 
866
+ static inline __ATTRS_o_ai __vector signed __int128
867
+ vec_sel(__vector signed __int128 __a, __vector signed __int128 __b,
868
+ __vector unsigned __int128 __c) {
869
+ return (((__vector signed __int128)__c & __b) |
870
+ (~(__vector signed __int128)__c & __a));
871
+ }
872
+
873
+ static inline __ATTRS_o_ai __vector signed __int128
874
+ vec_sel(__vector signed __int128 __a, __vector signed __int128 __b,
875
+ __vector __bool __int128 __c) {
876
+ return (((__vector signed __int128)__c & __b) |
877
+ (~(__vector signed __int128)__c & __a));
878
+ }
879
+
880
+ static inline __ATTRS_o_ai __vector __bool __int128
881
+ vec_sel(__vector __bool __int128 __a, __vector __bool __int128 __b,
882
+ __vector unsigned __int128 __c) {
883
+ return (((__vector __bool __int128)__c & __b) |
884
+ (~(__vector __bool __int128)__c & __a));
885
+ }
886
+
887
+ static inline __ATTRS_o_ai __vector __bool __int128
888
+ vec_sel(__vector __bool __int128 __a, __vector __bool __int128 __b,
889
+ __vector __bool __int128 __c) {
890
+ return (__c & __b) | (~__c & __a);
891
+ }
892
+
893
+ static inline __ATTRS_o_ai __vector unsigned __int128
894
+ vec_sel(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
895
+ __vector unsigned __int128 __c) {
896
+ return (__c & __b) | (~__c & __a);
897
+ }
898
+
899
+ static inline __ATTRS_o_ai __vector unsigned __int128
900
+ vec_sel(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
901
+ __vector __bool __int128 __c) {
902
+ return (((__vector unsigned __int128)__c & __b) |
903
+ (~(__vector unsigned __int128)__c & __a));
904
+ }
905
+
823
906
  #if __ARCH__ >= 12
824
907
  static inline __ATTRS_o_ai __vector float
825
908
  vec_sel(__vector float __a, __vector float __b, __vector unsigned int __c) {
@@ -1078,6 +1161,22 @@ vec_xl(long __offset, const unsigned long long *__ptr) {
1078
1161
  return V;
1079
1162
  }
1080
1163
 
1164
+ static inline __ATTRS_o_ai __vector signed __int128
1165
+ vec_xl(long __offset, const signed __int128 *__ptr) {
1166
+ __vector signed __int128 V;
1167
+ __builtin_memcpy(&V, ((const char *)__ptr + __offset),
1168
+ sizeof(__vector signed __int128));
1169
+ return V;
1170
+ }
1171
+
1172
+ static inline __ATTRS_o_ai __vector unsigned __int128
1173
+ vec_xl(long __offset, const unsigned __int128 *__ptr) {
1174
+ __vector unsigned __int128 V;
1175
+ __builtin_memcpy(&V, ((const char *)__ptr + __offset),
1176
+ sizeof(__vector unsigned __int128));
1177
+ return V;
1178
+ }
1179
+
1081
1180
  #if __ARCH__ >= 12
1082
1181
  static inline __ATTRS_o_ai __vector float
1083
1182
  vec_xl(long __offset, const float *__ptr) {
@@ -1294,6 +1393,22 @@ vec_xst(__vector unsigned long long __vec, long __offset,
1294
1393
  sizeof(__vector unsigned long long));
1295
1394
  }
1296
1395
 
1396
+ static inline __ATTRS_o_ai void
1397
+ vec_xst(__vector signed __int128 __vec, long __offset,
1398
+ signed __int128 *__ptr) {
1399
+ __vector signed __int128 V = __vec;
1400
+ __builtin_memcpy(((char *)__ptr + __offset), &V,
1401
+ sizeof(__vector signed __int128));
1402
+ }
1403
+
1404
+ static inline __ATTRS_o_ai void
1405
+ vec_xst(__vector unsigned __int128 __vec, long __offset,
1406
+ unsigned __int128 *__ptr) {
1407
+ __vector unsigned __int128 V = __vec;
1408
+ __builtin_memcpy(((char *)__ptr + __offset), &V,
1409
+ sizeof(__vector unsigned __int128));
1410
+ }
1411
+
1297
1412
  #if __ARCH__ >= 12
1298
1413
  static inline __ATTRS_o_ai void
1299
1414
  vec_xst(__vector float __vec, long __offset, float *__ptr) {
@@ -1465,6 +1580,14 @@ extern __ATTRS_o __vector unsigned long long
1465
1580
  vec_load_bndry(const unsigned long long *__ptr, unsigned short __len)
1466
1581
  __constant_pow2_range(__len, 64, 4096);
1467
1582
 
1583
+ extern __ATTRS_o __vector signed __int128
1584
+ vec_load_bndry(const signed __int128 *__ptr, unsigned short __len)
1585
+ __constant_pow2_range(__len, 64, 4096);
1586
+
1587
+ extern __ATTRS_o __vector unsigned __int128
1588
+ vec_load_bndry(const unsigned __int128 *__ptr, unsigned short __len)
1589
+ __constant_pow2_range(__len, 64, 4096);
1590
+
1468
1591
  #if __ARCH__ >= 12
1469
1592
  extern __ATTRS_o __vector float
1470
1593
  vec_load_bndry(const float *__ptr, unsigned short __len)
@@ -1496,43 +1619,51 @@ vec_load_len(const unsigned char *__ptr, unsigned int __len) {
1496
1619
  return (__vector unsigned char)__builtin_s390_vll(__len, __ptr);
1497
1620
  }
1498
1621
 
1622
+ // This prototype is deprecated.
1499
1623
  static inline __ATTRS_o_ai __vector signed short
1500
1624
  vec_load_len(const signed short *__ptr, unsigned int __len) {
1501
1625
  return (__vector signed short)__builtin_s390_vll(__len, __ptr);
1502
1626
  }
1503
1627
 
1628
+ // This prototype is deprecated.
1504
1629
  static inline __ATTRS_o_ai __vector unsigned short
1505
1630
  vec_load_len(const unsigned short *__ptr, unsigned int __len) {
1506
1631
  return (__vector unsigned short)__builtin_s390_vll(__len, __ptr);
1507
1632
  }
1508
1633
 
1634
+ // This prototype is deprecated.
1509
1635
  static inline __ATTRS_o_ai __vector signed int
1510
1636
  vec_load_len(const signed int *__ptr, unsigned int __len) {
1511
1637
  return (__vector signed int)__builtin_s390_vll(__len, __ptr);
1512
1638
  }
1513
1639
 
1640
+ // This prototype is deprecated.
1514
1641
  static inline __ATTRS_o_ai __vector unsigned int
1515
1642
  vec_load_len(const unsigned int *__ptr, unsigned int __len) {
1516
1643
  return (__vector unsigned int)__builtin_s390_vll(__len, __ptr);
1517
1644
  }
1518
1645
 
1646
+ // This prototype is deprecated.
1519
1647
  static inline __ATTRS_o_ai __vector signed long long
1520
1648
  vec_load_len(const signed long long *__ptr, unsigned int __len) {
1521
1649
  return (__vector signed long long)__builtin_s390_vll(__len, __ptr);
1522
1650
  }
1523
1651
 
1652
+ // This prototype is deprecated.
1524
1653
  static inline __ATTRS_o_ai __vector unsigned long long
1525
1654
  vec_load_len(const unsigned long long *__ptr, unsigned int __len) {
1526
1655
  return (__vector unsigned long long)__builtin_s390_vll(__len, __ptr);
1527
1656
  }
1528
1657
 
1529
1658
  #if __ARCH__ >= 12
1659
+ // This prototype is deprecated.
1530
1660
  static inline __ATTRS_o_ai __vector float
1531
1661
  vec_load_len(const float *__ptr, unsigned int __len) {
1532
1662
  return (__vector float)__builtin_s390_vll(__len, __ptr);
1533
1663
  }
1534
1664
  #endif
1535
1665
 
1666
+ // This prototype is deprecated.
1536
1667
  static inline __ATTRS_o_ai __vector double
1537
1668
  vec_load_len(const double *__ptr, unsigned int __len) {
1538
1669
  return (__vector double)__builtin_s390_vll(__len, __ptr);
@@ -1541,7 +1672,12 @@ vec_load_len(const double *__ptr, unsigned int __len) {
1541
1672
  /*-- vec_load_len_r ---------------------------------------------------------*/
1542
1673
 
1543
1674
  #if __ARCH__ >= 12
1544
- static inline __ATTRS_ai __vector unsigned char
1675
+ static inline __ATTRS_o_ai __vector signed char
1676
+ vec_load_len_r(const signed char *__ptr, unsigned int __len) {
1677
+ return (__vector signed char)__builtin_s390_vlrlr(__len, __ptr);
1678
+ }
1679
+
1680
+ static inline __ATTRS_o_ai __vector unsigned char
1545
1681
  vec_load_len_r(const unsigned char *__ptr, unsigned int __len) {
1546
1682
  return (__vector unsigned char)__builtin_s390_vlrlr(__len, __ptr);
1547
1683
  }
@@ -1561,36 +1697,42 @@ vec_store_len(__vector unsigned char __vec, unsigned char *__ptr,
1561
1697
  __builtin_s390_vstl((__vector signed char)__vec, __len, __ptr);
1562
1698
  }
1563
1699
 
1700
+ // This prototype is deprecated.
1564
1701
  static inline __ATTRS_o_ai void
1565
1702
  vec_store_len(__vector signed short __vec, signed short *__ptr,
1566
1703
  unsigned int __len) {
1567
1704
  __builtin_s390_vstl((__vector signed char)__vec, __len, __ptr);
1568
1705
  }
1569
1706
 
1707
+ // This prototype is deprecated.
1570
1708
  static inline __ATTRS_o_ai void
1571
1709
  vec_store_len(__vector unsigned short __vec, unsigned short *__ptr,
1572
1710
  unsigned int __len) {
1573
1711
  __builtin_s390_vstl((__vector signed char)__vec, __len, __ptr);
1574
1712
  }
1575
1713
 
1714
+ // This prototype is deprecated.
1576
1715
  static inline __ATTRS_o_ai void
1577
1716
  vec_store_len(__vector signed int __vec, signed int *__ptr,
1578
1717
  unsigned int __len) {
1579
1718
  __builtin_s390_vstl((__vector signed char)__vec, __len, __ptr);
1580
1719
  }
1581
1720
 
1721
+ // This prototype is deprecated.
1582
1722
  static inline __ATTRS_o_ai void
1583
1723
  vec_store_len(__vector unsigned int __vec, unsigned int *__ptr,
1584
1724
  unsigned int __len) {
1585
1725
  __builtin_s390_vstl((__vector signed char)__vec, __len, __ptr);
1586
1726
  }
1587
1727
 
1728
+ // This prototype is deprecated.
1588
1729
  static inline __ATTRS_o_ai void
1589
1730
  vec_store_len(__vector signed long long __vec, signed long long *__ptr,
1590
1731
  unsigned int __len) {
1591
1732
  __builtin_s390_vstl((__vector signed char)__vec, __len, __ptr);
1592
1733
  }
1593
1734
 
1735
+ // This prototype is deprecated.
1594
1736
  static inline __ATTRS_o_ai void
1595
1737
  vec_store_len(__vector unsigned long long __vec, unsigned long long *__ptr,
1596
1738
  unsigned int __len) {
@@ -1598,6 +1740,7 @@ vec_store_len(__vector unsigned long long __vec, unsigned long long *__ptr,
1598
1740
  }
1599
1741
 
1600
1742
  #if __ARCH__ >= 12
1743
+ // This prototype is deprecated.
1601
1744
  static inline __ATTRS_o_ai void
1602
1745
  vec_store_len(__vector float __vec, float *__ptr,
1603
1746
  unsigned int __len) {
@@ -1605,6 +1748,7 @@ vec_store_len(__vector float __vec, float *__ptr,
1605
1748
  }
1606
1749
  #endif
1607
1750
 
1751
+ // This prototype is deprecated.
1608
1752
  static inline __ATTRS_o_ai void
1609
1753
  vec_store_len(__vector double __vec, double *__ptr,
1610
1754
  unsigned int __len) {
@@ -1614,7 +1758,13 @@ vec_store_len(__vector double __vec, double *__ptr,
1614
1758
  /*-- vec_store_len_r --------------------------------------------------------*/
1615
1759
 
1616
1760
  #if __ARCH__ >= 12
1617
- static inline __ATTRS_ai void
1761
+ static inline __ATTRS_o_ai void
1762
+ vec_store_len_r(__vector signed char __vec, signed char *__ptr,
1763
+ unsigned int __len) {
1764
+ __builtin_s390_vstrlr(__vec, __len, __ptr);
1765
+ }
1766
+
1767
+ static inline __ATTRS_o_ai void
1618
1768
  vec_store_len_r(__vector unsigned char __vec, unsigned char *__ptr,
1619
1769
  unsigned int __len) {
1620
1770
  __builtin_s390_vstrlr((__vector signed char)__vec, __len, __ptr);
@@ -1711,6 +1861,35 @@ vec_genmasks_64(unsigned char __first, unsigned char __last)
1711
1861
  return (__vector unsigned long long)__value;
1712
1862
  }
1713
1863
 
1864
+ /*-- vec_gen_element_masks_* ------------------------------------------------*/
1865
+
1866
+ #if __ARCH__ >= 15
1867
+ static inline __ATTRS_ai __vector unsigned char
1868
+ vec_gen_element_masks_8(__vector unsigned short __mask) {
1869
+ return __builtin_s390_vgemb(__mask);
1870
+ }
1871
+
1872
+ static inline __ATTRS_ai __vector unsigned short
1873
+ vec_gen_element_masks_16(__vector unsigned char __mask) {
1874
+ return __builtin_s390_vgemh(__mask);
1875
+ }
1876
+
1877
+ static inline __ATTRS_ai __vector unsigned int
1878
+ vec_gen_element_masks_32(__vector unsigned char __mask) {
1879
+ return __builtin_s390_vgemf(__mask);
1880
+ }
1881
+
1882
+ static inline __ATTRS_ai __vector unsigned long long
1883
+ vec_gen_element_masks_64(__vector unsigned char __mask) {
1884
+ return __builtin_s390_vgemg(__mask);
1885
+ }
1886
+
1887
+ static inline __ATTRS_ai __vector unsigned __int128
1888
+ vec_gen_element_masks_128(__vector unsigned char __mask) {
1889
+ return (__vector unsigned __int128)__builtin_s390_vgemq(__mask);
1890
+ }
1891
+ #endif
1892
+
1714
1893
  /*-- vec_splat --------------------------------------------------------------*/
1715
1894
 
1716
1895
  static inline __ATTRS_o_ai __vector signed char
@@ -1894,6 +2073,16 @@ vec_splats(unsigned long long __scalar) {
1894
2073
  return (__vector unsigned long long)__scalar;
1895
2074
  }
1896
2075
 
2076
+ static inline __ATTRS_o_ai __vector signed __int128
2077
+ vec_splats(signed __int128 __scalar) {
2078
+ return (__vector signed __int128)__scalar;
2079
+ }
2080
+
2081
+ static inline __ATTRS_o_ai __vector unsigned __int128
2082
+ vec_splats(unsigned __int128 __scalar) {
2083
+ return (__vector unsigned __int128)__scalar;
2084
+ }
2085
+
1897
2086
  #if __ARCH__ >= 12
1898
2087
  static inline __ATTRS_o_ai __vector float
1899
2088
  vec_splats(float __scalar) {
@@ -2166,6 +2355,27 @@ vec_pack(__vector unsigned long long __a, __vector unsigned long long __b) {
2166
2355
  return (__vector unsigned int)(__ac[1], __ac[3], __bc[1], __bc[3]);
2167
2356
  }
2168
2357
 
2358
+ static inline __ATTRS_o_ai __vector signed long long
2359
+ vec_pack(__vector signed __int128 __a, __vector signed __int128 __b) {
2360
+ __vector signed long long __ac = (__vector signed long long)__a;
2361
+ __vector signed long long __bc = (__vector signed long long)__b;
2362
+ return (__vector signed long long)(__ac[1], __bc[1]);
2363
+ }
2364
+
2365
+ static inline __ATTRS_o_ai __vector __bool long long
2366
+ vec_pack(__vector __bool __int128 __a, __vector __bool __int128 __b) {
2367
+ __vector __bool long long __ac = (__vector __bool long long)__a;
2368
+ __vector __bool long long __bc = (__vector __bool long long)__b;
2369
+ return (__vector __bool long long)(__ac[1], __bc[1]);
2370
+ }
2371
+
2372
+ static inline __ATTRS_o_ai __vector unsigned long long
2373
+ vec_pack(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
2374
+ __vector unsigned long long __ac = (__vector unsigned long long)__a;
2375
+ __vector unsigned long long __bc = (__vector unsigned long long)__b;
2376
+ return (__vector unsigned long long)(__ac[1], __bc[1]);
2377
+ }
2378
+
2169
2379
  /*-- vec_packs --------------------------------------------------------------*/
2170
2380
 
2171
2381
  static inline __ATTRS_o_ai __vector signed char
@@ -2344,6 +2554,24 @@ vec_unpackh(__vector unsigned int __a) {
2344
2554
  return __builtin_s390_vuplhf(__a);
2345
2555
  }
2346
2556
 
2557
+ #if __ARCH__ >= 15
2558
+ static inline __ATTRS_o_ai __vector signed __int128
2559
+ vec_unpackh(__vector signed long long __a) {
2560
+ return (__vector signed __int128)__builtin_s390_vuphg(__a);
2561
+ }
2562
+
2563
+ static inline __ATTRS_o_ai __vector __bool __int128
2564
+ vec_unpackh(__vector __bool long long __a) {
2565
+ return ((__vector __bool __int128)
2566
+ __builtin_s390_vuphg((__vector signed long long)__a));
2567
+ }
2568
+
2569
+ static inline __ATTRS_o_ai __vector unsigned __int128
2570
+ vec_unpackh(__vector unsigned long long __a) {
2571
+ return (__vector unsigned __int128)__builtin_s390_vuplhg(__a);
2572
+ }
2573
+ #endif
2574
+
2347
2575
  /*-- vec_unpackl ------------------------------------------------------------*/
2348
2576
 
2349
2577
  static inline __ATTRS_o_ai __vector signed short
@@ -2394,6 +2622,24 @@ vec_unpackl(__vector unsigned int __a) {
2394
2622
  return __builtin_s390_vupllf(__a);
2395
2623
  }
2396
2624
 
2625
+ #if __ARCH__ >= 15
2626
+ static inline __ATTRS_o_ai __vector signed __int128
2627
+ vec_unpackl(__vector signed long long __a) {
2628
+ return (__vector signed __int128)__builtin_s390_vuplg(__a);
2629
+ }
2630
+
2631
+ static inline __ATTRS_o_ai __vector __bool __int128
2632
+ vec_unpackl(__vector __bool long long __a) {
2633
+ return ((__vector __bool __int128)
2634
+ __builtin_s390_vuplg((__vector signed long long)__a));
2635
+ }
2636
+
2637
+ static inline __ATTRS_o_ai __vector unsigned __int128
2638
+ vec_unpackl(__vector unsigned long long __a) {
2639
+ return (__vector unsigned __int128)__builtin_s390_vupllg(__a);
2640
+ }
2641
+ #endif
2642
+
2397
2643
  /*-- vec_cmpeq --------------------------------------------------------------*/
2398
2644
 
2399
2645
  static inline __ATTRS_o_ai __vector __bool char
@@ -2456,6 +2702,21 @@ vec_cmpeq(__vector unsigned long long __a, __vector unsigned long long __b) {
2456
2702
  return (__vector __bool long long)(__a == __b);
2457
2703
  }
2458
2704
 
2705
+ static inline __ATTRS_o_ai __vector __bool __int128
2706
+ vec_cmpeq(__vector __bool __int128 __a, __vector __bool __int128 __b) {
2707
+ return (__vector __bool __int128)(__a == __b);
2708
+ }
2709
+
2710
+ static inline __ATTRS_o_ai __vector __bool __int128
2711
+ vec_cmpeq(__vector signed __int128 __a, __vector signed __int128 __b) {
2712
+ return (__vector __bool __int128)(__a == __b);
2713
+ }
2714
+
2715
+ static inline __ATTRS_o_ai __vector __bool __int128
2716
+ vec_cmpeq(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
2717
+ return (__vector __bool __int128)(__a == __b);
2718
+ }
2719
+
2459
2720
  #if __ARCH__ >= 12
2460
2721
  static inline __ATTRS_o_ai __vector __bool int
2461
2722
  vec_cmpeq(__vector float __a, __vector float __b) {
@@ -2510,6 +2771,16 @@ vec_cmpge(__vector unsigned long long __a, __vector unsigned long long __b) {
2510
2771
  return (__vector __bool long long)(__a >= __b);
2511
2772
  }
2512
2773
 
2774
+ static inline __ATTRS_o_ai __vector __bool __int128
2775
+ vec_cmpge(__vector signed __int128 __a, __vector signed __int128 __b) {
2776
+ return (__vector __bool __int128)(__a >= __b);
2777
+ }
2778
+
2779
+ static inline __ATTRS_o_ai __vector __bool __int128
2780
+ vec_cmpge(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
2781
+ return (__vector __bool __int128)(__a >= __b);
2782
+ }
2783
+
2513
2784
  #if __ARCH__ >= 12
2514
2785
  static inline __ATTRS_o_ai __vector __bool int
2515
2786
  vec_cmpge(__vector float __a, __vector float __b) {
@@ -2564,6 +2835,16 @@ vec_cmpgt(__vector unsigned long long __a, __vector unsigned long long __b) {
2564
2835
  return (__vector __bool long long)(__a > __b);
2565
2836
  }
2566
2837
 
2838
+ static inline __ATTRS_o_ai __vector __bool __int128
2839
+ vec_cmpgt(__vector signed __int128 __a, __vector signed __int128 __b) {
2840
+ return (__vector __bool __int128)(__a > __b);
2841
+ }
2842
+
2843
+ static inline __ATTRS_o_ai __vector __bool __int128
2844
+ vec_cmpgt(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
2845
+ return (__vector __bool __int128)(__a > __b);
2846
+ }
2847
+
2567
2848
  #if __ARCH__ >= 12
2568
2849
  static inline __ATTRS_o_ai __vector __bool int
2569
2850
  vec_cmpgt(__vector float __a, __vector float __b) {
@@ -2618,6 +2899,16 @@ vec_cmple(__vector unsigned long long __a, __vector unsigned long long __b) {
2618
2899
  return (__vector __bool long long)(__a <= __b);
2619
2900
  }
2620
2901
 
2902
+ static inline __ATTRS_o_ai __vector __bool __int128
2903
+ vec_cmple(__vector signed __int128 __a, __vector signed __int128 __b) {
2904
+ return (__vector __bool __int128)(__a <= __b);
2905
+ }
2906
+
2907
+ static inline __ATTRS_o_ai __vector __bool __int128
2908
+ vec_cmple(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
2909
+ return (__vector __bool __int128)(__a <= __b);
2910
+ }
2911
+
2621
2912
  #if __ARCH__ >= 12
2622
2913
  static inline __ATTRS_o_ai __vector __bool int
2623
2914
  vec_cmple(__vector float __a, __vector float __b) {
@@ -2672,6 +2963,16 @@ vec_cmplt(__vector unsigned long long __a, __vector unsigned long long __b) {
2672
2963
  return (__vector __bool long long)(__a < __b);
2673
2964
  }
2674
2965
 
2966
+ static inline __ATTRS_o_ai __vector __bool __int128
2967
+ vec_cmplt(__vector signed __int128 __a, __vector signed __int128 __b) {
2968
+ return (__vector __bool __int128)(__a < __b);
2969
+ }
2970
+
2971
+ static inline __ATTRS_o_ai __vector __bool __int128
2972
+ vec_cmplt(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
2973
+ return (__vector __bool __int128)(__a < __b);
2974
+ }
2975
+
2675
2976
  #if __ARCH__ >= 12
2676
2977
  static inline __ATTRS_o_ai __vector __bool int
2677
2978
  vec_cmplt(__vector float __a, __vector float __b) {
@@ -2914,6 +3215,29 @@ vec_all_eq(__vector __bool long long __a, __vector __bool long long __b) {
2914
3215
  return __cc == 0;
2915
3216
  }
2916
3217
 
3218
+ #if __ARCH__ >= 15
3219
+ static inline __ATTRS_o_ai int
3220
+ vec_all_eq(__vector signed __int128 __a, __vector signed __int128 __b) {
3221
+ int __cc;
3222
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
3223
+ return __cc == 0;
3224
+ }
3225
+
3226
+ static inline __ATTRS_o_ai int
3227
+ vec_all_eq(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
3228
+ int __cc;
3229
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
3230
+ return __cc == 0;
3231
+ }
3232
+
3233
+ static inline __ATTRS_o_ai int
3234
+ vec_all_eq(__vector __bool __int128 __a, __vector __bool __int128 __b) {
3235
+ int __cc;
3236
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
3237
+ return __cc == 0;
3238
+ }
3239
+ #endif
3240
+
2917
3241
  #if __ARCH__ >= 12
2918
3242
  static inline __ATTRS_o_ai int
2919
3243
  vec_all_eq(__vector float __a, __vector float __b) {
@@ -3161,6 +3485,29 @@ vec_all_ne(__vector __bool long long __a, __vector __bool long long __b) {
3161
3485
  return __cc == 3;
3162
3486
  }
3163
3487
 
3488
+ #if __ARCH__ >= 15
3489
+ static inline __ATTRS_o_ai int
3490
+ vec_all_ne(__vector signed __int128 __a, __vector signed __int128 __b) {
3491
+ int __cc;
3492
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
3493
+ return __cc == 3;
3494
+ }
3495
+
3496
+ static inline __ATTRS_o_ai int
3497
+ vec_all_ne(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
3498
+ int __cc;
3499
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
3500
+ return __cc == 3;
3501
+ }
3502
+
3503
+ static inline __ATTRS_o_ai int
3504
+ vec_all_ne(__vector __bool __int128 __a, __vector __bool __int128 __b) {
3505
+ int __cc;
3506
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
3507
+ return __cc == 3;
3508
+ }
3509
+ #endif
3510
+
3164
3511
  #if __ARCH__ >= 12
3165
3512
  static inline __ATTRS_o_ai int
3166
3513
  vec_all_ne(__vector float __a, __vector float __b) {
@@ -3399,6 +3746,22 @@ vec_all_ge(__vector __bool long long __a, __vector __bool long long __b) {
3399
3746
  return __cc == 3;
3400
3747
  }
3401
3748
 
3749
+ #if __ARCH__ >= 15
3750
+ static inline __ATTRS_o_ai int
3751
+ vec_all_ge(__vector signed __int128 __a, __vector signed __int128 __b) {
3752
+ int __cc;
3753
+ __builtin_s390_vchqs((signed __int128)__b, (signed __int128)__a, &__cc);
3754
+ return __cc == 3;
3755
+ }
3756
+
3757
+ static inline __ATTRS_o_ai int
3758
+ vec_all_ge(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
3759
+ int __cc;
3760
+ __builtin_s390_vchlqs((unsigned __int128)__b, (unsigned __int128)__a, &__cc);
3761
+ return __cc == 3;
3762
+ }
3763
+ #endif
3764
+
3402
3765
  #if __ARCH__ >= 12
3403
3766
  static inline __ATTRS_o_ai int
3404
3767
  vec_all_ge(__vector float __a, __vector float __b) {
@@ -3637,6 +4000,22 @@ vec_all_gt(__vector __bool long long __a, __vector __bool long long __b) {
3637
4000
  return __cc == 0;
3638
4001
  }
3639
4002
 
4003
+ #if __ARCH__ >= 15
4004
+ static inline __ATTRS_o_ai int
4005
+ vec_all_gt(__vector signed __int128 __a, __vector signed __int128 __b) {
4006
+ int __cc;
4007
+ __builtin_s390_vchqs((signed __int128)__a, (signed __int128)__b, &__cc);
4008
+ return __cc == 0;
4009
+ }
4010
+
4011
+ static inline __ATTRS_o_ai int
4012
+ vec_all_gt(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
4013
+ int __cc;
4014
+ __builtin_s390_vchlqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
4015
+ return __cc == 0;
4016
+ }
4017
+ #endif
4018
+
3640
4019
  #if __ARCH__ >= 12
3641
4020
  static inline __ATTRS_o_ai int
3642
4021
  vec_all_gt(__vector float __a, __vector float __b) {
@@ -3875,6 +4254,22 @@ vec_all_le(__vector __bool long long __a, __vector __bool long long __b) {
3875
4254
  return __cc == 3;
3876
4255
  }
3877
4256
 
4257
+ #if __ARCH__ >= 15
4258
+ static inline __ATTRS_o_ai int
4259
+ vec_all_le(__vector signed __int128 __a, __vector signed __int128 __b) {
4260
+ int __cc;
4261
+ __builtin_s390_vchqs((signed __int128)__a, (signed __int128)__b, &__cc);
4262
+ return __cc == 3;
4263
+ }
4264
+
4265
+ static inline __ATTRS_o_ai int
4266
+ vec_all_le(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
4267
+ int __cc;
4268
+ __builtin_s390_vchlqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
4269
+ return __cc == 3;
4270
+ }
4271
+ #endif
4272
+
3878
4273
  #if __ARCH__ >= 12
3879
4274
  static inline __ATTRS_o_ai int
3880
4275
  vec_all_le(__vector float __a, __vector float __b) {
@@ -4113,6 +4508,22 @@ vec_all_lt(__vector __bool long long __a, __vector __bool long long __b) {
4113
4508
  return __cc == 0;
4114
4509
  }
4115
4510
 
4511
+ #if __ARCH__ >= 15
4512
+ static inline __ATTRS_o_ai int
4513
+ vec_all_lt(__vector signed __int128 __a, __vector signed __int128 __b) {
4514
+ int __cc;
4515
+ __builtin_s390_vchqs((signed __int128)__b, (signed __int128)__a, &__cc);
4516
+ return __cc == 0;
4517
+ }
4518
+
4519
+ static inline __ATTRS_o_ai int
4520
+ vec_all_lt(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
4521
+ int __cc;
4522
+ __builtin_s390_vchlqs((unsigned __int128)__b, (unsigned __int128)__a, &__cc);
4523
+ return __cc == 0;
4524
+ }
4525
+ #endif
4526
+
4116
4527
  #if __ARCH__ >= 12
4117
4528
  static inline __ATTRS_o_ai int
4118
4529
  vec_all_lt(__vector float __a, __vector float __b) {
@@ -4467,6 +4878,29 @@ vec_any_eq(__vector __bool long long __a, __vector __bool long long __b) {
4467
4878
  return __cc <= 1;
4468
4879
  }
4469
4880
 
4881
+ #if __ARCH__ >= 15
4882
+ static inline __ATTRS_o_ai int
4883
+ vec_any_eq(__vector signed __int128 __a, __vector signed __int128 __b) {
4884
+ int __cc;
4885
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
4886
+ return __cc <= 1;
4887
+ }
4888
+
4889
+ static inline __ATTRS_o_ai int
4890
+ vec_any_eq(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
4891
+ int __cc;
4892
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
4893
+ return __cc <= 1;
4894
+ }
4895
+
4896
+ static inline __ATTRS_o_ai int
4897
+ vec_any_eq(__vector __bool __int128 __a, __vector __bool __int128 __b) {
4898
+ int __cc;
4899
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
4900
+ return __cc <= 1;
4901
+ }
4902
+ #endif
4903
+
4470
4904
  #if __ARCH__ >= 12
4471
4905
  static inline __ATTRS_o_ai int
4472
4906
  vec_any_eq(__vector float __a, __vector float __b) {
@@ -4713,28 +5147,51 @@ vec_any_ne(__vector __bool long long __a, __vector __bool long long __b) {
4713
5147
  return __cc != 0;
4714
5148
  }
4715
5149
 
4716
- #if __ARCH__ >= 12
5150
+ #if __ARCH__ >= 15
4717
5151
  static inline __ATTRS_o_ai int
4718
- vec_any_ne(__vector float __a, __vector float __b) {
5152
+ vec_any_ne(__vector signed __int128 __a, __vector signed __int128 __b) {
4719
5153
  int __cc;
4720
- __builtin_s390_vfcesbs(__a, __b, &__cc);
5154
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
4721
5155
  return __cc != 0;
4722
5156
  }
4723
- #endif
4724
5157
 
4725
5158
  static inline __ATTRS_o_ai int
4726
- vec_any_ne(__vector double __a, __vector double __b) {
5159
+ vec_any_ne(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
4727
5160
  int __cc;
4728
- __builtin_s390_vfcedbs(__a, __b, &__cc);
5161
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
4729
5162
  return __cc != 0;
4730
5163
  }
4731
5164
 
4732
- /*-- vec_any_ge -------------------------------------------------------------*/
4733
-
4734
5165
  static inline __ATTRS_o_ai int
4735
- vec_any_ge(__vector signed char __a, __vector signed char __b) {
5166
+ vec_any_ne(__vector __bool __int128 __a, __vector __bool __int128 __b) {
4736
5167
  int __cc;
4737
- __builtin_s390_vchbs(__b, __a, &__cc);
5168
+ __builtin_s390_vceqqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
5169
+ return __cc != 0;
5170
+ }
5171
+ #endif
5172
+
5173
+ #if __ARCH__ >= 12
5174
+ static inline __ATTRS_o_ai int
5175
+ vec_any_ne(__vector float __a, __vector float __b) {
5176
+ int __cc;
5177
+ __builtin_s390_vfcesbs(__a, __b, &__cc);
5178
+ return __cc != 0;
5179
+ }
5180
+ #endif
5181
+
5182
+ static inline __ATTRS_o_ai int
5183
+ vec_any_ne(__vector double __a, __vector double __b) {
5184
+ int __cc;
5185
+ __builtin_s390_vfcedbs(__a, __b, &__cc);
5186
+ return __cc != 0;
5187
+ }
5188
+
5189
+ /*-- vec_any_ge -------------------------------------------------------------*/
5190
+
5191
+ static inline __ATTRS_o_ai int
5192
+ vec_any_ge(__vector signed char __a, __vector signed char __b) {
5193
+ int __cc;
5194
+ __builtin_s390_vchbs(__b, __a, &__cc);
4738
5195
  return __cc != 0;
4739
5196
  }
4740
5197
 
@@ -4951,6 +5408,22 @@ vec_any_ge(__vector __bool long long __a, __vector __bool long long __b) {
4951
5408
  return __cc != 0;
4952
5409
  }
4953
5410
 
5411
+ #if __ARCH__ >= 15
5412
+ static inline __ATTRS_o_ai int
5413
+ vec_any_ge(__vector signed __int128 __a, __vector signed __int128 __b) {
5414
+ int __cc;
5415
+ __builtin_s390_vchqs((signed __int128)__b, (signed __int128)__a, &__cc);
5416
+ return __cc != 0;
5417
+ }
5418
+
5419
+ static inline __ATTRS_o_ai int
5420
+ vec_any_ge(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
5421
+ int __cc;
5422
+ __builtin_s390_vchlqs((unsigned __int128)__b, (unsigned __int128)__a, &__cc);
5423
+ return __cc != 0;
5424
+ }
5425
+ #endif
5426
+
4954
5427
  #if __ARCH__ >= 12
4955
5428
  static inline __ATTRS_o_ai int
4956
5429
  vec_any_ge(__vector float __a, __vector float __b) {
@@ -5189,6 +5662,22 @@ vec_any_gt(__vector __bool long long __a, __vector __bool long long __b) {
5189
5662
  return __cc <= 1;
5190
5663
  }
5191
5664
 
5665
+ #if __ARCH__ >= 15
5666
+ static inline __ATTRS_o_ai int
5667
+ vec_any_gt(__vector signed __int128 __a, __vector signed __int128 __b) {
5668
+ int __cc;
5669
+ __builtin_s390_vchqs((signed __int128)__a, (signed __int128)__b, &__cc);
5670
+ return __cc <= 1;
5671
+ }
5672
+
5673
+ static inline __ATTRS_o_ai int
5674
+ vec_any_gt(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
5675
+ int __cc;
5676
+ __builtin_s390_vchlqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
5677
+ return __cc <= 1;
5678
+ }
5679
+ #endif
5680
+
5192
5681
  #if __ARCH__ >= 12
5193
5682
  static inline __ATTRS_o_ai int
5194
5683
  vec_any_gt(__vector float __a, __vector float __b) {
@@ -5427,6 +5916,22 @@ vec_any_le(__vector __bool long long __a, __vector __bool long long __b) {
5427
5916
  return __cc != 0;
5428
5917
  }
5429
5918
 
5919
+ #if __ARCH__ >= 15
5920
+ static inline __ATTRS_o_ai int
5921
+ vec_any_le(__vector signed __int128 __a, __vector signed __int128 __b) {
5922
+ int __cc;
5923
+ __builtin_s390_vchqs((signed __int128)__a, (signed __int128)__b, &__cc);
5924
+ return __cc != 0;
5925
+ }
5926
+
5927
+ static inline __ATTRS_o_ai int
5928
+ vec_any_le(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
5929
+ int __cc;
5930
+ __builtin_s390_vchlqs((unsigned __int128)__a, (unsigned __int128)__b, &__cc);
5931
+ return __cc != 0;
5932
+ }
5933
+ #endif
5934
+
5430
5935
  #if __ARCH__ >= 12
5431
5936
  static inline __ATTRS_o_ai int
5432
5937
  vec_any_le(__vector float __a, __vector float __b) {
@@ -5665,6 +6170,22 @@ vec_any_lt(__vector __bool long long __a, __vector __bool long long __b) {
5665
6170
  return __cc <= 1;
5666
6171
  }
5667
6172
 
6173
+ #if __ARCH__ >= 15
6174
+ static inline __ATTRS_o_ai int
6175
+ vec_any_lt(__vector signed __int128 __a, __vector signed __int128 __b) {
6176
+ int __cc;
6177
+ __builtin_s390_vchqs((signed __int128)__b, (signed __int128)__a, &__cc);
6178
+ return __cc <= 1;
6179
+ }
6180
+
6181
+ static inline __ATTRS_o_ai int
6182
+ vec_any_lt(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
6183
+ int __cc;
6184
+ __builtin_s390_vchlqs((unsigned __int128)__b, (unsigned __int128)__a, &__cc);
6185
+ return __cc <= 1;
6186
+ }
6187
+ #endif
6188
+
5668
6189
  #if __ARCH__ >= 12
5669
6190
  static inline __ATTRS_o_ai int
5670
6191
  vec_any_lt(__vector float __a, __vector float __b) {
@@ -5753,40 +6274,419 @@ vec_any_nlt(__vector double __a, __vector double __b) {
5753
6274
  return __cc != 0;
5754
6275
  }
5755
6276
 
5756
- /*-- vec_any_nan ------------------------------------------------------------*/
6277
+ /*-- vec_any_nan ------------------------------------------------------------*/
6278
+
6279
+ #if __ARCH__ >= 12
6280
+ static inline __ATTRS_o_ai int
6281
+ vec_any_nan(__vector float __a) {
6282
+ int __cc;
6283
+ __builtin_s390_vftcisb(__a, 15, &__cc);
6284
+ return __cc != 3;
6285
+ }
6286
+ #endif
6287
+
6288
+ static inline __ATTRS_o_ai int
6289
+ vec_any_nan(__vector double __a) {
6290
+ int __cc;
6291
+ __builtin_s390_vftcidb(__a, 15, &__cc);
6292
+ return __cc != 3;
6293
+ }
6294
+
6295
+ /*-- vec_any_numeric --------------------------------------------------------*/
6296
+
6297
+ #if __ARCH__ >= 12
6298
+ static inline __ATTRS_o_ai int
6299
+ vec_any_numeric(__vector float __a) {
6300
+ int __cc;
6301
+ __builtin_s390_vftcisb(__a, 15, &__cc);
6302
+ return __cc != 0;
6303
+ }
6304
+ #endif
6305
+
6306
+ static inline __ATTRS_o_ai int
6307
+ vec_any_numeric(__vector double __a) {
6308
+ int __cc;
6309
+ __builtin_s390_vftcidb(__a, 15, &__cc);
6310
+ return __cc != 0;
6311
+ }
6312
+
6313
+ /*-- vec_blend --------------------------------------------------------------*/
6314
+
6315
+ #if __ARCH__ >= 15
6316
+ static inline __ATTRS_o_ai __vector signed char
6317
+ vec_blend(__vector signed char __a, __vector signed char __b,
6318
+ __vector signed char __c) {
6319
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed char)0));
6320
+ }
6321
+
6322
+ static inline __ATTRS_o_ai __vector __bool char
6323
+ vec_blend(__vector __bool char __a, __vector __bool char __b,
6324
+ __vector signed char __c) {
6325
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed char)0));
6326
+ }
6327
+
6328
+ static inline __ATTRS_o_ai __vector unsigned char
6329
+ vec_blend(__vector unsigned char __a, __vector unsigned char __b,
6330
+ __vector signed char __c) {
6331
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed char)0));
6332
+ }
6333
+
6334
+ static inline __ATTRS_o_ai __vector signed short
6335
+ vec_blend(__vector signed short __a, __vector signed short __b,
6336
+ __vector signed short __c) {
6337
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed short)0));
6338
+ }
6339
+
6340
+ static inline __ATTRS_o_ai __vector __bool short
6341
+ vec_blend(__vector __bool short __a, __vector __bool short __b,
6342
+ __vector signed short __c) {
6343
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed short)0));
6344
+ }
6345
+
6346
+ static inline __ATTRS_o_ai __vector unsigned short
6347
+ vec_blend(__vector unsigned short __a, __vector unsigned short __b,
6348
+ __vector signed short __c) {
6349
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed short)0));
6350
+ }
6351
+
6352
+ static inline __ATTRS_o_ai __vector signed int
6353
+ vec_blend(__vector signed int __a, __vector signed int __b,
6354
+ __vector signed int __c) {
6355
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed int)0));
6356
+ }
6357
+
6358
+ static inline __ATTRS_o_ai __vector __bool int
6359
+ vec_blend(__vector __bool int __a, __vector __bool int __b,
6360
+ __vector signed int __c) {
6361
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed int)0));
6362
+ }
6363
+
6364
+ static inline __ATTRS_o_ai __vector unsigned int
6365
+ vec_blend(__vector unsigned int __a, __vector unsigned int __b,
6366
+ __vector signed int __c) {
6367
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed int)0));
6368
+ }
6369
+
6370
+ static inline __ATTRS_o_ai __vector signed long long
6371
+ vec_blend(__vector signed long long __a, __vector signed long long __b,
6372
+ __vector signed long long __c) {
6373
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed long long)0));
6374
+ }
6375
+
6376
+ static inline __ATTRS_o_ai __vector __bool long long
6377
+ vec_blend(__vector __bool long long __a, __vector __bool long long __b,
6378
+ __vector signed long long __c) {
6379
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed long long)0));
6380
+ }
6381
+
6382
+ static inline __ATTRS_o_ai __vector unsigned long long
6383
+ vec_blend(__vector unsigned long long __a, __vector unsigned long long __b,
6384
+ __vector signed long long __c) {
6385
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed long long)0));
6386
+ }
6387
+
6388
+ static inline __ATTRS_o_ai __vector signed __int128
6389
+ vec_blend(__vector signed __int128 __a, __vector signed __int128 __b,
6390
+ __vector signed __int128 __c) {
6391
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed __int128)0));
6392
+ }
6393
+
6394
+ static inline __ATTRS_o_ai __vector __bool __int128
6395
+ vec_blend(__vector __bool __int128 __a, __vector __bool __int128 __b,
6396
+ __vector signed __int128 __c) {
6397
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed __int128)0));
6398
+ }
6399
+
6400
+ static inline __ATTRS_o_ai __vector unsigned __int128
6401
+ vec_blend(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
6402
+ __vector signed __int128 __c) {
6403
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed __int128)0));
6404
+ }
6405
+
6406
+ static inline __ATTRS_o_ai __vector float
6407
+ vec_blend(__vector float __a, __vector float __b,
6408
+ __vector signed int __c) {
6409
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed int)0));
6410
+ }
6411
+
6412
+ static inline __ATTRS_o_ai __vector double
6413
+ vec_blend(__vector double __a, __vector double __b,
6414
+ __vector signed long long __c) {
6415
+ return vec_sel(__a, __b, vec_cmplt(__c, (__vector signed long long)0));
6416
+ }
6417
+ #endif
6418
+
6419
+ /*-- vec_and ---------------------------------------------------------------*/
6420
+
6421
+ static inline __ATTRS_o_ai __vector __bool char
6422
+ vec_and(__vector __bool char __a, __vector __bool char __b) {
6423
+ return __a & __b;
6424
+ }
6425
+
6426
+ static inline __ATTRS_o_ai __vector signed char
6427
+ vec_and(__vector signed char __a, __vector signed char __b) {
6428
+ return __a & __b;
6429
+ }
6430
+
6431
+ static inline __ATTRS_o_ai __vector unsigned char
6432
+ vec_and(__vector unsigned char __a, __vector unsigned char __b) {
6433
+ return __a & __b;
6434
+ }
6435
+
6436
+ static inline __ATTRS_o_ai __vector __bool short
6437
+ vec_and(__vector __bool short __a, __vector __bool short __b) {
6438
+ return __a & __b;
6439
+ }
6440
+
6441
+ static inline __ATTRS_o_ai __vector signed short
6442
+ vec_and(__vector signed short __a, __vector signed short __b) {
6443
+ return __a & __b;
6444
+ }
6445
+
6446
+ static inline __ATTRS_o_ai __vector unsigned short
6447
+ vec_and(__vector unsigned short __a, __vector unsigned short __b) {
6448
+ return __a & __b;
6449
+ }
6450
+
6451
+ static inline __ATTRS_o_ai __vector __bool int
6452
+ vec_and(__vector __bool int __a, __vector __bool int __b) {
6453
+ return __a & __b;
6454
+ }
6455
+
6456
+ static inline __ATTRS_o_ai __vector signed int
6457
+ vec_and(__vector signed int __a, __vector signed int __b) {
6458
+ return __a & __b;
6459
+ }
6460
+
6461
+ static inline __ATTRS_o_ai __vector unsigned int
6462
+ vec_and(__vector unsigned int __a, __vector unsigned int __b) {
6463
+ return __a & __b;
6464
+ }
6465
+
6466
+ static inline __ATTRS_o_ai __vector __bool long long
6467
+ vec_and(__vector __bool long long __a, __vector __bool long long __b) {
6468
+ return __a & __b;
6469
+ }
6470
+
6471
+ static inline __ATTRS_o_ai __vector signed long long
6472
+ vec_and(__vector signed long long __a, __vector signed long long __b) {
6473
+ return __a & __b;
6474
+ }
6475
+
6476
+ static inline __ATTRS_o_ai __vector unsigned long long
6477
+ vec_and(__vector unsigned long long __a, __vector unsigned long long __b) {
6478
+ return __a & __b;
6479
+ }
6480
+
6481
+ static inline __ATTRS_o_ai __vector __bool __int128
6482
+ vec_and(__vector __bool __int128 __a, __vector __bool __int128 __b) {
6483
+ return __a & __b;
6484
+ }
6485
+
6486
+ static inline __ATTRS_o_ai __vector signed __int128
6487
+ vec_and(__vector signed __int128 __a, __vector signed __int128 __b) {
6488
+ return __a & __b;
6489
+ }
6490
+
6491
+ static inline __ATTRS_o_ai __vector unsigned __int128
6492
+ vec_and(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
6493
+ return __a & __b;
6494
+ }
6495
+
6496
+ #if __ARCH__ >= 12
6497
+ static inline __ATTRS_o_ai __vector float
6498
+ vec_and(__vector float __a, __vector float __b) {
6499
+ return (__vector float)((__vector unsigned int)__a &
6500
+ (__vector unsigned int)__b);
6501
+ }
6502
+ #endif
6503
+
6504
+ static inline __ATTRS_o_ai __vector double
6505
+ vec_and(__vector double __a, __vector double __b) {
6506
+ return (__vector double)((__vector unsigned long long)__a &
6507
+ (__vector unsigned long long)__b);
6508
+ }
6509
+
6510
+ /*-- vec_or ----------------------------------------------------------------*/
6511
+
6512
+ static inline __ATTRS_o_ai __vector __bool char
6513
+ vec_or(__vector __bool char __a, __vector __bool char __b) {
6514
+ return __a | __b;
6515
+ }
6516
+
6517
+ static inline __ATTRS_o_ai __vector signed char
6518
+ vec_or(__vector signed char __a, __vector signed char __b) {
6519
+ return __a | __b;
6520
+ }
6521
+
6522
+ static inline __ATTRS_o_ai __vector unsigned char
6523
+ vec_or(__vector unsigned char __a, __vector unsigned char __b) {
6524
+ return __a | __b;
6525
+ }
6526
+
6527
+ static inline __ATTRS_o_ai __vector __bool short
6528
+ vec_or(__vector __bool short __a, __vector __bool short __b) {
6529
+ return __a | __b;
6530
+ }
6531
+
6532
+ static inline __ATTRS_o_ai __vector signed short
6533
+ vec_or(__vector signed short __a, __vector signed short __b) {
6534
+ return __a | __b;
6535
+ }
6536
+
6537
+ static inline __ATTRS_o_ai __vector unsigned short
6538
+ vec_or(__vector unsigned short __a, __vector unsigned short __b) {
6539
+ return __a | __b;
6540
+ }
6541
+
6542
+ static inline __ATTRS_o_ai __vector __bool int
6543
+ vec_or(__vector __bool int __a, __vector __bool int __b) {
6544
+ return __a | __b;
6545
+ }
6546
+
6547
+ static inline __ATTRS_o_ai __vector signed int
6548
+ vec_or(__vector signed int __a, __vector signed int __b) {
6549
+ return __a | __b;
6550
+ }
6551
+
6552
+ static inline __ATTRS_o_ai __vector unsigned int
6553
+ vec_or(__vector unsigned int __a, __vector unsigned int __b) {
6554
+ return __a | __b;
6555
+ }
6556
+
6557
+ static inline __ATTRS_o_ai __vector __bool long long
6558
+ vec_or(__vector __bool long long __a, __vector __bool long long __b) {
6559
+ return __a | __b;
6560
+ }
6561
+
6562
+ static inline __ATTRS_o_ai __vector signed long long
6563
+ vec_or(__vector signed long long __a, __vector signed long long __b) {
6564
+ return __a | __b;
6565
+ }
6566
+
6567
+ static inline __ATTRS_o_ai __vector unsigned long long
6568
+ vec_or(__vector unsigned long long __a, __vector unsigned long long __b) {
6569
+ return __a | __b;
6570
+ }
6571
+
6572
+ static inline __ATTRS_o_ai __vector __bool __int128
6573
+ vec_or(__vector __bool __int128 __a, __vector __bool __int128 __b) {
6574
+ return __a | __b;
6575
+ }
6576
+
6577
+ static inline __ATTRS_o_ai __vector signed __int128
6578
+ vec_or(__vector signed __int128 __a, __vector signed __int128 __b) {
6579
+ return __a | __b;
6580
+ }
6581
+
6582
+ static inline __ATTRS_o_ai __vector unsigned __int128
6583
+ vec_or(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
6584
+ return __a | __b;
6585
+ }
6586
+
6587
+ #if __ARCH__ >= 12
6588
+ static inline __ATTRS_o_ai __vector float
6589
+ vec_or(__vector float __a, __vector float __b) {
6590
+ return (__vector float)((__vector unsigned int)__a |
6591
+ (__vector unsigned int)__b);
6592
+ }
6593
+ #endif
6594
+
6595
+ static inline __ATTRS_o_ai __vector double
6596
+ vec_or(__vector double __a, __vector double __b) {
6597
+ return (__vector double)((__vector unsigned long long)__a |
6598
+ (__vector unsigned long long)__b);
6599
+ }
6600
+
6601
+ /*-- vec_xor ----------------------------------------------------------------*/
6602
+
6603
+ static inline __ATTRS_o_ai __vector __bool char
6604
+ vec_xor(__vector __bool char __a, __vector __bool char __b) {
6605
+ return __a ^ __b;
6606
+ }
6607
+
6608
+ static inline __ATTRS_o_ai __vector signed char
6609
+ vec_xor(__vector signed char __a, __vector signed char __b) {
6610
+ return __a ^ __b;
6611
+ }
6612
+
6613
+ static inline __ATTRS_o_ai __vector unsigned char
6614
+ vec_xor(__vector unsigned char __a, __vector unsigned char __b) {
6615
+ return __a ^ __b;
6616
+ }
6617
+
6618
+ static inline __ATTRS_o_ai __vector __bool short
6619
+ vec_xor(__vector __bool short __a, __vector __bool short __b) {
6620
+ return __a ^ __b;
6621
+ }
6622
+
6623
+ static inline __ATTRS_o_ai __vector signed short
6624
+ vec_xor(__vector signed short __a, __vector signed short __b) {
6625
+ return __a ^ __b;
6626
+ }
6627
+
6628
+ static inline __ATTRS_o_ai __vector unsigned short
6629
+ vec_xor(__vector unsigned short __a, __vector unsigned short __b) {
6630
+ return __a ^ __b;
6631
+ }
6632
+
6633
+ static inline __ATTRS_o_ai __vector __bool int
6634
+ vec_xor(__vector __bool int __a, __vector __bool int __b) {
6635
+ return __a ^ __b;
6636
+ }
6637
+
6638
+ static inline __ATTRS_o_ai __vector signed int
6639
+ vec_xor(__vector signed int __a, __vector signed int __b) {
6640
+ return __a ^ __b;
6641
+ }
6642
+
6643
+ static inline __ATTRS_o_ai __vector unsigned int
6644
+ vec_xor(__vector unsigned int __a, __vector unsigned int __b) {
6645
+ return __a ^ __b;
6646
+ }
6647
+
6648
+ static inline __ATTRS_o_ai __vector __bool long long
6649
+ vec_xor(__vector __bool long long __a, __vector __bool long long __b) {
6650
+ return __a ^ __b;
6651
+ }
6652
+
6653
+ static inline __ATTRS_o_ai __vector signed long long
6654
+ vec_xor(__vector signed long long __a, __vector signed long long __b) {
6655
+ return __a ^ __b;
6656
+ }
6657
+
6658
+ static inline __ATTRS_o_ai __vector unsigned long long
6659
+ vec_xor(__vector unsigned long long __a, __vector unsigned long long __b) {
6660
+ return __a ^ __b;
6661
+ }
5757
6662
 
5758
- #if __ARCH__ >= 12
5759
- static inline __ATTRS_o_ai int
5760
- vec_any_nan(__vector float __a) {
5761
- int __cc;
5762
- __builtin_s390_vftcisb(__a, 15, &__cc);
5763
- return __cc != 3;
6663
+ static inline __ATTRS_o_ai __vector __bool __int128
6664
+ vec_xor(__vector __bool __int128 __a, __vector __bool __int128 __b) {
6665
+ return __a ^ __b;
5764
6666
  }
5765
- #endif
5766
6667
 
5767
- static inline __ATTRS_o_ai int
5768
- vec_any_nan(__vector double __a) {
5769
- int __cc;
5770
- __builtin_s390_vftcidb(__a, 15, &__cc);
5771
- return __cc != 3;
6668
+ static inline __ATTRS_o_ai __vector signed __int128
6669
+ vec_xor(__vector signed __int128 __a, __vector signed __int128 __b) {
6670
+ return __a ^ __b;
5772
6671
  }
5773
6672
 
5774
- /*-- vec_any_numeric --------------------------------------------------------*/
6673
+ static inline __ATTRS_o_ai __vector unsigned __int128
6674
+ vec_xor(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
6675
+ return __a ^ __b;
6676
+ }
5775
6677
 
5776
6678
  #if __ARCH__ >= 12
5777
- static inline __ATTRS_o_ai int
5778
- vec_any_numeric(__vector float __a) {
5779
- int __cc;
5780
- __builtin_s390_vftcisb(__a, 15, &__cc);
5781
- return __cc != 0;
6679
+ static inline __ATTRS_o_ai __vector float
6680
+ vec_xor(__vector float __a, __vector float __b) {
6681
+ return (__vector float)((__vector unsigned int)__a ^
6682
+ (__vector unsigned int)__b);
5782
6683
  }
5783
6684
  #endif
5784
6685
 
5785
- static inline __ATTRS_o_ai int
5786
- vec_any_numeric(__vector double __a) {
5787
- int __cc;
5788
- __builtin_s390_vftcidb(__a, 15, &__cc);
5789
- return __cc != 0;
6686
+ static inline __ATTRS_o_ai __vector double
6687
+ vec_xor(__vector double __a, __vector double __b) {
6688
+ return (__vector double)((__vector unsigned long long)__a ^
6689
+ (__vector unsigned long long)__b);
5790
6690
  }
5791
6691
 
5792
6692
  /*-- vec_andc ---------------------------------------------------------------*/
@@ -5947,6 +6847,21 @@ vec_andc(__vector unsigned long long __a, __vector __bool long long __b) {
5947
6847
  return __a & ~__b;
5948
6848
  }
5949
6849
 
6850
+ static inline __ATTRS_o_ai __vector __bool __int128
6851
+ vec_andc(__vector __bool __int128 __a, __vector __bool __int128 __b) {
6852
+ return __a & ~__b;
6853
+ }
6854
+
6855
+ static inline __ATTRS_o_ai __vector signed __int128
6856
+ vec_andc(__vector signed __int128 __a, __vector signed __int128 __b) {
6857
+ return __a & ~__b;
6858
+ }
6859
+
6860
+ static inline __ATTRS_o_ai __vector unsigned __int128
6861
+ vec_andc(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
6862
+ return __a & ~__b;
6863
+ }
6864
+
5950
6865
  #if __ARCH__ >= 12
5951
6866
  static inline __ATTRS_o_ai __vector float
5952
6867
  vec_andc(__vector float __a, __vector float __b) {
@@ -6133,6 +7048,21 @@ vec_nor(__vector unsigned long long __a, __vector __bool long long __b) {
6133
7048
  return ~(__a | __b);
6134
7049
  }
6135
7050
 
7051
+ static inline __ATTRS_o_ai __vector __bool __int128
7052
+ vec_nor(__vector __bool __int128 __a, __vector __bool __int128 __b) {
7053
+ return ~(__a | __b);
7054
+ }
7055
+
7056
+ static inline __ATTRS_o_ai __vector signed __int128
7057
+ vec_nor(__vector signed __int128 __a, __vector signed __int128 __b) {
7058
+ return ~(__a | __b);
7059
+ }
7060
+
7061
+ static inline __ATTRS_o_ai __vector unsigned __int128
7062
+ vec_nor(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
7063
+ return ~(__a | __b);
7064
+ }
7065
+
6136
7066
  #if __ARCH__ >= 12
6137
7067
  static inline __ATTRS_o_ai __vector float
6138
7068
  vec_nor(__vector float __a, __vector float __b) {
@@ -6224,6 +7154,21 @@ vec_orc(__vector unsigned long long __a, __vector unsigned long long __b) {
6224
7154
  return __a | ~__b;
6225
7155
  }
6226
7156
 
7157
+ static inline __ATTRS_o_ai __vector __bool __int128
7158
+ vec_orc(__vector __bool __int128 __a, __vector __bool __int128 __b) {
7159
+ return __a | ~__b;
7160
+ }
7161
+
7162
+ static inline __ATTRS_o_ai __vector signed __int128
7163
+ vec_orc(__vector signed __int128 __a, __vector signed __int128 __b) {
7164
+ return __a | ~__b;
7165
+ }
7166
+
7167
+ static inline __ATTRS_o_ai __vector unsigned __int128
7168
+ vec_orc(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
7169
+ return __a | ~__b;
7170
+ }
7171
+
6227
7172
  static inline __ATTRS_o_ai __vector float
6228
7173
  vec_orc(__vector float __a, __vector float __b) {
6229
7174
  return (__vector float)((__vector unsigned int)__a |
@@ -6300,6 +7245,21 @@ vec_nand(__vector unsigned long long __a, __vector unsigned long long __b) {
6300
7245
  return ~(__a & __b);
6301
7246
  }
6302
7247
 
7248
+ static inline __ATTRS_o_ai __vector __bool __int128
7249
+ vec_nand(__vector __bool __int128 __a, __vector __bool __int128 __b) {
7250
+ return ~(__a & __b);
7251
+ }
7252
+
7253
+ static inline __ATTRS_o_ai __vector signed __int128
7254
+ vec_nand(__vector signed __int128 __a, __vector signed __int128 __b) {
7255
+ return ~(__a & __b);
7256
+ }
7257
+
7258
+ static inline __ATTRS_o_ai __vector unsigned __int128
7259
+ vec_nand(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
7260
+ return ~(__a & __b);
7261
+ }
7262
+
6303
7263
  static inline __ATTRS_o_ai __vector float
6304
7264
  vec_nand(__vector float __a, __vector float __b) {
6305
7265
  return (__vector float)~((__vector unsigned int)__a &
@@ -6376,6 +7336,21 @@ vec_eqv(__vector unsigned long long __a, __vector unsigned long long __b) {
6376
7336
  return ~(__a ^ __b);
6377
7337
  }
6378
7338
 
7339
+ static inline __ATTRS_o_ai __vector __bool __int128
7340
+ vec_eqv(__vector __bool __int128 __a, __vector __bool __int128 __b) {
7341
+ return ~(__a ^ __b);
7342
+ }
7343
+
7344
+ static inline __ATTRS_o_ai __vector signed __int128
7345
+ vec_eqv(__vector signed __int128 __a, __vector signed __int128 __b) {
7346
+ return ~(__a ^ __b);
7347
+ }
7348
+
7349
+ static inline __ATTRS_o_ai __vector unsigned __int128
7350
+ vec_eqv(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
7351
+ return ~(__a ^ __b);
7352
+ }
7353
+
6379
7354
  static inline __ATTRS_o_ai __vector float
6380
7355
  vec_eqv(__vector float __a, __vector float __b) {
6381
7356
  return (__vector float)~((__vector unsigned int)__a ^
@@ -6389,6 +7364,91 @@ vec_eqv(__vector double __a, __vector double __b) {
6389
7364
  }
6390
7365
  #endif
6391
7366
 
7367
+ /*-- vec_evaluate -----------------------------------------------------------*/
7368
+
7369
+ #if __ARCH__ >= 15
7370
+ extern __ATTRS_o __vector signed char
7371
+ vec_evaluate(__vector signed char __a, __vector signed char __b,
7372
+ __vector signed char __c, unsigned char __d)
7373
+ __constant(__d);
7374
+
7375
+ extern __ATTRS_o __vector unsigned char
7376
+ vec_evaluate(__vector unsigned char __a, __vector unsigned char __b,
7377
+ __vector unsigned char __c, unsigned char __d)
7378
+ __constant(__d);
7379
+
7380
+ extern __ATTRS_o __vector __bool char
7381
+ vec_evaluate(__vector __bool char __a, __vector __bool char __b,
7382
+ __vector __bool char __c, unsigned char __d)
7383
+ __constant(__d);
7384
+
7385
+ extern __ATTRS_o __vector signed short
7386
+ vec_evaluate(__vector signed short __a, __vector signed short __b,
7387
+ __vector signed short __c, unsigned char __d)
7388
+ __constant(__d);
7389
+
7390
+ extern __ATTRS_o __vector unsigned short
7391
+ vec_evaluate(__vector unsigned short __a, __vector unsigned short __b,
7392
+ __vector unsigned short __c, unsigned char __d)
7393
+ __constant(__d);
7394
+
7395
+ extern __ATTRS_o __vector __bool short
7396
+ vec_evaluate(__vector __bool short __a, __vector __bool short __b,
7397
+ __vector __bool short __c, unsigned char __d)
7398
+ __constant(__d);
7399
+
7400
+ extern __ATTRS_o __vector signed int
7401
+ vec_evaluate(__vector signed int __a, __vector signed int __b,
7402
+ __vector signed int __c, unsigned char __d)
7403
+ __constant(__d);
7404
+
7405
+ extern __ATTRS_o __vector unsigned int
7406
+ vec_evaluate(__vector unsigned int __a, __vector unsigned int __b,
7407
+ __vector unsigned int __c, unsigned char __d)
7408
+ __constant(__d);
7409
+
7410
+ extern __ATTRS_o __vector __bool int
7411
+ vec_evaluate(__vector __bool int __a, __vector __bool int __b,
7412
+ __vector __bool int __c, unsigned char __d)
7413
+ __constant(__d);
7414
+
7415
+ extern __ATTRS_o __vector signed long long
7416
+ vec_evaluate(__vector signed long long __a, __vector signed long long __b,
7417
+ __vector signed long long __c, unsigned char __d)
7418
+ __constant(__d);
7419
+
7420
+ extern __ATTRS_o __vector unsigned long long
7421
+ vec_evaluate(__vector unsigned long long __a, __vector unsigned long long __b,
7422
+ __vector unsigned long long __c, unsigned char __d)
7423
+ __constant(__d);
7424
+
7425
+ extern __ATTRS_o __vector __bool long long
7426
+ vec_evaluate(__vector __bool long long __a, __vector __bool long long __b,
7427
+ __vector __bool long long __c, unsigned char __d)
7428
+ __constant(__d);
7429
+
7430
+ extern __ATTRS_o __vector signed __int128
7431
+ vec_evaluate(__vector signed __int128 __a, __vector signed __int128 __b,
7432
+ __vector signed __int128 __c, unsigned char __d)
7433
+ __constant(__d);
7434
+
7435
+ extern __ATTRS_o __vector unsigned __int128
7436
+ vec_evaluate(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
7437
+ __vector unsigned __int128 __c, unsigned char __d)
7438
+ __constant(__d);
7439
+
7440
+ extern __ATTRS_o __vector __bool __int128
7441
+ vec_evaluate(__vector __bool __int128 __a, __vector __bool __int128 __b,
7442
+ __vector __bool __int128 __c, unsigned char __d)
7443
+ __constant(__d);
7444
+
7445
+ #define vec_evaluate(A, B, C, D) \
7446
+ ((__typeof__((vec_evaluate)((A), (B), (C), (D)))) \
7447
+ __builtin_s390_veval((__vector unsigned char)(A), \
7448
+ (__vector unsigned char)(B), \
7449
+ (__vector unsigned char)(C), (D)))
7450
+ #endif
7451
+
6392
7452
  /*-- vec_cntlz --------------------------------------------------------------*/
6393
7453
 
6394
7454
  static inline __ATTRS_o_ai __vector unsigned char
@@ -6431,6 +7491,20 @@ vec_cntlz(__vector unsigned long long __a) {
6431
7491
  return __builtin_s390_vclzg(__a);
6432
7492
  }
6433
7493
 
7494
+ #if __ARCH__ >= 15
7495
+ static inline __ATTRS_o_ai __vector unsigned __int128
7496
+ vec_cntlz(__vector signed __int128 __a) {
7497
+ return (__vector unsigned __int128)
7498
+ __builtin_s390_vclzq((unsigned __int128)__a);
7499
+ }
7500
+
7501
+ static inline __ATTRS_o_ai __vector unsigned __int128
7502
+ vec_cntlz(__vector unsigned __int128 __a) {
7503
+ return (__vector unsigned __int128)
7504
+ __builtin_s390_vclzq((unsigned __int128)__a);
7505
+ }
7506
+ #endif
7507
+
6434
7508
  /*-- vec_cnttz --------------------------------------------------------------*/
6435
7509
 
6436
7510
  static inline __ATTRS_o_ai __vector unsigned char
@@ -6473,46 +7547,60 @@ vec_cnttz(__vector unsigned long long __a) {
6473
7547
  return __builtin_s390_vctzg(__a);
6474
7548
  }
6475
7549
 
7550
+ #if __ARCH__ >= 15
7551
+ static inline __ATTRS_o_ai __vector unsigned __int128
7552
+ vec_cnttz(__vector signed __int128 __a) {
7553
+ return (__vector unsigned __int128)
7554
+ __builtin_s390_vctzq((unsigned __int128)__a);
7555
+ }
7556
+
7557
+ static inline __ATTRS_o_ai __vector unsigned __int128
7558
+ vec_cnttz(__vector unsigned __int128 __a) {
7559
+ return (__vector unsigned __int128)
7560
+ __builtin_s390_vctzq((unsigned __int128)__a);
7561
+ }
7562
+ #endif
7563
+
6476
7564
  /*-- vec_popcnt -------------------------------------------------------------*/
6477
7565
 
6478
7566
  static inline __ATTRS_o_ai __vector unsigned char
6479
7567
  vec_popcnt(__vector signed char __a) {
6480
- return __builtin_s390_vpopctb((__vector unsigned char)__a);
7568
+ return __builtin_elementwise_popcount((__vector unsigned char)__a);
6481
7569
  }
6482
7570
 
6483
7571
  static inline __ATTRS_o_ai __vector unsigned char
6484
7572
  vec_popcnt(__vector unsigned char __a) {
6485
- return __builtin_s390_vpopctb(__a);
7573
+ return __builtin_elementwise_popcount(__a);
6486
7574
  }
6487
7575
 
6488
7576
  static inline __ATTRS_o_ai __vector unsigned short
6489
7577
  vec_popcnt(__vector signed short __a) {
6490
- return __builtin_s390_vpopcth((__vector unsigned short)__a);
7578
+ return __builtin_elementwise_popcount((__vector unsigned short)__a);
6491
7579
  }
6492
7580
 
6493
7581
  static inline __ATTRS_o_ai __vector unsigned short
6494
7582
  vec_popcnt(__vector unsigned short __a) {
6495
- return __builtin_s390_vpopcth(__a);
7583
+ return __builtin_elementwise_popcount(__a);
6496
7584
  }
6497
7585
 
6498
7586
  static inline __ATTRS_o_ai __vector unsigned int
6499
7587
  vec_popcnt(__vector signed int __a) {
6500
- return __builtin_s390_vpopctf((__vector unsigned int)__a);
7588
+ return __builtin_elementwise_popcount((__vector unsigned int)__a);
6501
7589
  }
6502
7590
 
6503
7591
  static inline __ATTRS_o_ai __vector unsigned int
6504
7592
  vec_popcnt(__vector unsigned int __a) {
6505
- return __builtin_s390_vpopctf(__a);
7593
+ return __builtin_elementwise_popcount(__a);
6506
7594
  }
6507
7595
 
6508
7596
  static inline __ATTRS_o_ai __vector unsigned long long
6509
7597
  vec_popcnt(__vector signed long long __a) {
6510
- return __builtin_s390_vpopctg((__vector unsigned long long)__a);
7598
+ return __builtin_elementwise_popcount((__vector unsigned long long)__a);
6511
7599
  }
6512
7600
 
6513
7601
  static inline __ATTRS_o_ai __vector unsigned long long
6514
7602
  vec_popcnt(__vector unsigned long long __a) {
6515
- return __builtin_s390_vpopctg(__a);
7603
+ return __builtin_elementwise_popcount(__a);
6516
7604
  }
6517
7605
 
6518
7606
  /*-- vec_rl -----------------------------------------------------------------*/
@@ -6904,8 +7992,21 @@ vec_sll(__vector unsigned long long __a, __vector unsigned int __b) {
6904
7992
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6905
7993
  }
6906
7994
 
7995
+ static inline __ATTRS_o_ai __vector signed __int128
7996
+ vec_sll(__vector signed __int128 __a, __vector unsigned char __b) {
7997
+ return (__vector signed __int128)__builtin_s390_vsl(
7998
+ (__vector unsigned char)__a, __b);
7999
+ }
8000
+
8001
+ static inline __ATTRS_o_ai __vector unsigned __int128
8002
+ vec_sll(__vector unsigned __int128 __a, __vector unsigned char __b) {
8003
+ return (__vector unsigned __int128)__builtin_s390_vsl(
8004
+ (__vector unsigned char)__a, __b);
8005
+ }
8006
+
6907
8007
  /*-- vec_slb ----------------------------------------------------------------*/
6908
8008
 
8009
+ // This prototype is deprecated.
6909
8010
  static inline __ATTRS_o_ai __vector signed char
6910
8011
  vec_slb(__vector signed char __a, __vector signed char __b) {
6911
8012
  return (__vector signed char)__builtin_s390_vslb(
@@ -6918,6 +8019,7 @@ vec_slb(__vector signed char __a, __vector unsigned char __b) {
6918
8019
  (__vector unsigned char)__a, __b);
6919
8020
  }
6920
8021
 
8022
+ // This prototype is deprecated.
6921
8023
  static inline __ATTRS_o_ai __vector unsigned char
6922
8024
  vec_slb(__vector unsigned char __a, __vector signed char __b) {
6923
8025
  return __builtin_s390_vslb(__a, (__vector unsigned char)__b);
@@ -6928,110 +8030,187 @@ vec_slb(__vector unsigned char __a, __vector unsigned char __b) {
6928
8030
  return __builtin_s390_vslb(__a, __b);
6929
8031
  }
6930
8032
 
8033
+ // This prototype is deprecated.
6931
8034
  static inline __ATTRS_o_ai __vector signed short
6932
8035
  vec_slb(__vector signed short __a, __vector signed short __b) {
6933
8036
  return (__vector signed short)__builtin_s390_vslb(
6934
8037
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6935
8038
  }
6936
8039
 
8040
+ // This prototype is deprecated.
6937
8041
  static inline __ATTRS_o_ai __vector signed short
6938
8042
  vec_slb(__vector signed short __a, __vector unsigned short __b) {
6939
8043
  return (__vector signed short)__builtin_s390_vslb(
6940
8044
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6941
8045
  }
6942
8046
 
8047
+ static inline __ATTRS_o_ai __vector signed short
8048
+ vec_slb(__vector signed short __a, __vector unsigned char __b) {
8049
+ return (__vector signed short)__builtin_s390_vslb(
8050
+ (__vector unsigned char)__a, __b);
8051
+ }
8052
+
8053
+ // This prototype is deprecated.
6943
8054
  static inline __ATTRS_o_ai __vector unsigned short
6944
8055
  vec_slb(__vector unsigned short __a, __vector signed short __b) {
6945
8056
  return (__vector unsigned short)__builtin_s390_vslb(
6946
8057
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6947
8058
  }
6948
8059
 
8060
+ // This prototype is deprecated.
6949
8061
  static inline __ATTRS_o_ai __vector unsigned short
6950
8062
  vec_slb(__vector unsigned short __a, __vector unsigned short __b) {
6951
8063
  return (__vector unsigned short)__builtin_s390_vslb(
6952
8064
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6953
8065
  }
6954
8066
 
8067
+ static inline __ATTRS_o_ai __vector unsigned short
8068
+ vec_slb(__vector unsigned short __a, __vector unsigned char __b) {
8069
+ return (__vector unsigned short)__builtin_s390_vslb(
8070
+ (__vector unsigned char)__a, __b);
8071
+ }
8072
+
8073
+ // This prototype is deprecated.
6955
8074
  static inline __ATTRS_o_ai __vector signed int
6956
8075
  vec_slb(__vector signed int __a, __vector signed int __b) {
6957
8076
  return (__vector signed int)__builtin_s390_vslb(
6958
8077
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6959
8078
  }
6960
8079
 
8080
+ // This prototype is deprecated.
6961
8081
  static inline __ATTRS_o_ai __vector signed int
6962
8082
  vec_slb(__vector signed int __a, __vector unsigned int __b) {
6963
8083
  return (__vector signed int)__builtin_s390_vslb(
6964
8084
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6965
8085
  }
6966
8086
 
8087
+ static inline __ATTRS_o_ai __vector signed int
8088
+ vec_slb(__vector signed int __a, __vector unsigned char __b) {
8089
+ return (__vector signed int)__builtin_s390_vslb(
8090
+ (__vector unsigned char)__a, __b);
8091
+ }
8092
+
8093
+ // This prototype is deprecated.
6967
8094
  static inline __ATTRS_o_ai __vector unsigned int
6968
8095
  vec_slb(__vector unsigned int __a, __vector signed int __b) {
6969
8096
  return (__vector unsigned int)__builtin_s390_vslb(
6970
8097
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6971
8098
  }
6972
8099
 
8100
+ // This prototype is deprecated.
6973
8101
  static inline __ATTRS_o_ai __vector unsigned int
6974
8102
  vec_slb(__vector unsigned int __a, __vector unsigned int __b) {
6975
8103
  return (__vector unsigned int)__builtin_s390_vslb(
6976
8104
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6977
8105
  }
6978
8106
 
8107
+ static inline __ATTRS_o_ai __vector unsigned int
8108
+ vec_slb(__vector unsigned int __a, __vector unsigned char __b) {
8109
+ return (__vector unsigned int)__builtin_s390_vslb(
8110
+ (__vector unsigned char)__a, __b);
8111
+ }
8112
+
8113
+ // This prototype is deprecated.
6979
8114
  static inline __ATTRS_o_ai __vector signed long long
6980
8115
  vec_slb(__vector signed long long __a, __vector signed long long __b) {
6981
8116
  return (__vector signed long long)__builtin_s390_vslb(
6982
8117
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6983
8118
  }
6984
8119
 
8120
+ // This prototype is deprecated.
6985
8121
  static inline __ATTRS_o_ai __vector signed long long
6986
8122
  vec_slb(__vector signed long long __a, __vector unsigned long long __b) {
6987
8123
  return (__vector signed long long)__builtin_s390_vslb(
6988
8124
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6989
8125
  }
6990
8126
 
8127
+ static inline __ATTRS_o_ai __vector signed long long
8128
+ vec_slb(__vector signed long long __a, __vector unsigned char __b) {
8129
+ return (__vector signed long long)__builtin_s390_vslb(
8130
+ (__vector unsigned char)__a, __b);
8131
+ }
8132
+
8133
+ // This prototype is deprecated.
6991
8134
  static inline __ATTRS_o_ai __vector unsigned long long
6992
8135
  vec_slb(__vector unsigned long long __a, __vector signed long long __b) {
6993
8136
  return (__vector unsigned long long)__builtin_s390_vslb(
6994
8137
  (__vector unsigned char)__a, (__vector unsigned char)__b);
6995
8138
  }
6996
8139
 
8140
+ // This prototype is deprecated.
6997
8141
  static inline __ATTRS_o_ai __vector unsigned long long
6998
8142
  vec_slb(__vector unsigned long long __a, __vector unsigned long long __b) {
6999
8143
  return (__vector unsigned long long)__builtin_s390_vslb(
7000
8144
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7001
8145
  }
7002
8146
 
8147
+ static inline __ATTRS_o_ai __vector unsigned long long
8148
+ vec_slb(__vector unsigned long long __a, __vector unsigned char __b) {
8149
+ return (__vector unsigned long long)__builtin_s390_vslb(
8150
+ (__vector unsigned char)__a, __b);
8151
+ }
8152
+
8153
+ static inline __ATTRS_o_ai __vector signed __int128
8154
+ vec_slb(__vector signed __int128 __a, __vector unsigned char __b) {
8155
+ return (__vector signed __int128)__builtin_s390_vslb(
8156
+ (__vector unsigned char)__a, __b);
8157
+ }
8158
+
8159
+ static inline __ATTRS_o_ai __vector unsigned __int128
8160
+ vec_slb(__vector unsigned __int128 __a, __vector unsigned char __b) {
8161
+ return (__vector unsigned __int128)__builtin_s390_vslb(
8162
+ (__vector unsigned char)__a, __b);
8163
+ }
8164
+
7003
8165
  #if __ARCH__ >= 12
8166
+ // This prototype is deprecated.
7004
8167
  static inline __ATTRS_o_ai __vector float
7005
8168
  vec_slb(__vector float __a, __vector signed int __b) {
7006
8169
  return (__vector float)__builtin_s390_vslb(
7007
8170
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7008
8171
  }
7009
8172
 
8173
+ // This prototype is deprecated.
7010
8174
  static inline __ATTRS_o_ai __vector float
7011
8175
  vec_slb(__vector float __a, __vector unsigned int __b) {
7012
8176
  return (__vector float)__builtin_s390_vslb(
7013
8177
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7014
8178
  }
8179
+
8180
+ static inline __ATTRS_o_ai __vector float
8181
+ vec_slb(__vector float __a, __vector unsigned char __b) {
8182
+ return (__vector float)__builtin_s390_vslb(
8183
+ (__vector unsigned char)__a, __b);
8184
+ }
7015
8185
  #endif
7016
8186
 
8187
+ // This prototype is deprecated.
7017
8188
  static inline __ATTRS_o_ai __vector double
7018
8189
  vec_slb(__vector double __a, __vector signed long long __b) {
7019
8190
  return (__vector double)__builtin_s390_vslb(
7020
8191
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7021
8192
  }
7022
8193
 
8194
+ // This prototype is deprecated.
7023
8195
  static inline __ATTRS_o_ai __vector double
7024
8196
  vec_slb(__vector double __a, __vector unsigned long long __b) {
7025
8197
  return (__vector double)__builtin_s390_vslb(
7026
8198
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7027
8199
  }
7028
8200
 
8201
+ static inline __ATTRS_o_ai __vector double
8202
+ vec_slb(__vector double __a, __vector unsigned char __b) {
8203
+ return (__vector double)__builtin_s390_vslb(
8204
+ (__vector unsigned char)__a, __b);
8205
+ }
8206
+
7029
8207
  /*-- vec_sld ----------------------------------------------------------------*/
7030
8208
 
7031
8209
  extern __ATTRS_o __vector signed char
7032
8210
  vec_sld(__vector signed char __a, __vector signed char __b, int __c)
7033
8211
  __constant_range(__c, 0, 15);
7034
8212
 
8213
+ // This prototype is deprecated.
7035
8214
  extern __ATTRS_o __vector __bool char
7036
8215
  vec_sld(__vector __bool char __a, __vector __bool char __b, int __c)
7037
8216
  __constant_range(__c, 0, 15);
@@ -7044,6 +8223,7 @@ extern __ATTRS_o __vector signed short
7044
8223
  vec_sld(__vector signed short __a, __vector signed short __b, int __c)
7045
8224
  __constant_range(__c, 0, 15);
7046
8225
 
8226
+ // This prototype is deprecated.
7047
8227
  extern __ATTRS_o __vector __bool short
7048
8228
  vec_sld(__vector __bool short __a, __vector __bool short __b, int __c)
7049
8229
  __constant_range(__c, 0, 15);
@@ -7056,6 +8236,7 @@ extern __ATTRS_o __vector signed int
7056
8236
  vec_sld(__vector signed int __a, __vector signed int __b, int __c)
7057
8237
  __constant_range(__c, 0, 15);
7058
8238
 
8239
+ // This prototype is deprecated.
7059
8240
  extern __ATTRS_o __vector __bool int
7060
8241
  vec_sld(__vector __bool int __a, __vector __bool int __b, int __c)
7061
8242
  __constant_range(__c, 0, 15);
@@ -7068,6 +8249,7 @@ extern __ATTRS_o __vector signed long long
7068
8249
  vec_sld(__vector signed long long __a, __vector signed long long __b, int __c)
7069
8250
  __constant_range(__c, 0, 15);
7070
8251
 
8252
+ // This prototype is deprecated.
7071
8253
  extern __ATTRS_o __vector __bool long long
7072
8254
  vec_sld(__vector __bool long long __a, __vector __bool long long __b, int __c)
7073
8255
  __constant_range(__c, 0, 15);
@@ -7077,6 +8259,15 @@ vec_sld(__vector unsigned long long __a, __vector unsigned long long __b,
7077
8259
  int __c)
7078
8260
  __constant_range(__c, 0, 15);
7079
8261
 
8262
+ extern __ATTRS_o __vector signed __int128
8263
+ vec_sld(__vector signed __int128 __a, __vector signed __int128 __b, int __c)
8264
+ __constant_range(__c, 0, 15);
8265
+
8266
+ extern __ATTRS_o __vector unsigned __int128
8267
+ vec_sld(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
8268
+ int __c)
8269
+ __constant_range(__c, 0, 15);
8270
+
7080
8271
  #if __ARCH__ >= 12
7081
8272
  extern __ATTRS_o __vector float
7082
8273
  vec_sld(__vector float __a, __vector float __b, int __c)
@@ -7126,6 +8317,15 @@ vec_sldw(__vector unsigned long long __a, __vector unsigned long long __b,
7126
8317
  int __c)
7127
8318
  __constant_range(__c, 0, 3);
7128
8319
 
8320
+ extern __ATTRS_o __vector signed __int128
8321
+ vec_sldw(__vector signed __int128 __a, __vector signed __int128 __b, int __c)
8322
+ __constant_range(__c, 0, 3);
8323
+
8324
+ extern __ATTRS_o __vector unsigned __int128
8325
+ vec_sldw(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
8326
+ int __c)
8327
+ __constant_range(__c, 0, 3);
8328
+
7129
8329
  // This prototype is deprecated.
7130
8330
  extern __ATTRS_o __vector double
7131
8331
  vec_sldw(__vector double __a, __vector double __b, int __c)
@@ -7172,6 +8372,15 @@ vec_sldb(__vector unsigned long long __a, __vector unsigned long long __b,
7172
8372
  int __c)
7173
8373
  __constant_range(__c, 0, 7);
7174
8374
 
8375
+ extern __ATTRS_o __vector signed __int128
8376
+ vec_sldb(__vector signed __int128 __a, __vector signed __int128 __b, int __c)
8377
+ __constant_range(__c, 0, 7);
8378
+
8379
+ extern __ATTRS_o __vector unsigned __int128
8380
+ vec_sldb(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
8381
+ int __c)
8382
+ __constant_range(__c, 0, 7);
8383
+
7175
8384
  extern __ATTRS_o __vector float
7176
8385
  vec_sldb(__vector float __a, __vector float __b, int __c)
7177
8386
  __constant_range(__c, 0, 7);
@@ -7429,8 +8638,21 @@ vec_sral(__vector unsigned long long __a, __vector unsigned int __b) {
7429
8638
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7430
8639
  }
7431
8640
 
8641
+ static inline __ATTRS_o_ai __vector signed __int128
8642
+ vec_sral(__vector signed __int128 __a, __vector unsigned char __b) {
8643
+ return (__vector signed __int128)__builtin_s390_vsra(
8644
+ (__vector unsigned char)__a, __b);
8645
+ }
8646
+
8647
+ static inline __ATTRS_o_ai __vector unsigned __int128
8648
+ vec_sral(__vector unsigned __int128 __a, __vector unsigned char __b) {
8649
+ return (__vector unsigned __int128)__builtin_s390_vsra(
8650
+ (__vector unsigned char)__a, __b);
8651
+ }
8652
+
7432
8653
  /*-- vec_srab ---------------------------------------------------------------*/
7433
8654
 
8655
+ // This prototype is deprecated.
7434
8656
  static inline __ATTRS_o_ai __vector signed char
7435
8657
  vec_srab(__vector signed char __a, __vector signed char __b) {
7436
8658
  return (__vector signed char)__builtin_s390_vsrab(
@@ -7443,6 +8665,7 @@ vec_srab(__vector signed char __a, __vector unsigned char __b) {
7443
8665
  (__vector unsigned char)__a, __b);
7444
8666
  }
7445
8667
 
8668
+ // This prototype is deprecated.
7446
8669
  static inline __ATTRS_o_ai __vector unsigned char
7447
8670
  vec_srab(__vector unsigned char __a, __vector signed char __b) {
7448
8671
  return __builtin_s390_vsrab(__a, (__vector unsigned char)__b);
@@ -7453,104 +8676,180 @@ vec_srab(__vector unsigned char __a, __vector unsigned char __b) {
7453
8676
  return __builtin_s390_vsrab(__a, __b);
7454
8677
  }
7455
8678
 
8679
+ // This prototype is deprecated.
7456
8680
  static inline __ATTRS_o_ai __vector signed short
7457
8681
  vec_srab(__vector signed short __a, __vector signed short __b) {
7458
8682
  return (__vector signed short)__builtin_s390_vsrab(
7459
8683
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7460
8684
  }
7461
8685
 
8686
+ // This prototype is deprecated.
7462
8687
  static inline __ATTRS_o_ai __vector signed short
7463
8688
  vec_srab(__vector signed short __a, __vector unsigned short __b) {
7464
8689
  return (__vector signed short)__builtin_s390_vsrab(
7465
8690
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7466
8691
  }
7467
8692
 
8693
+ static inline __ATTRS_o_ai __vector signed short
8694
+ vec_srab(__vector signed short __a, __vector unsigned char __b) {
8695
+ return (__vector signed short)__builtin_s390_vsrab(
8696
+ (__vector unsigned char)__a, __b);
8697
+ }
8698
+
8699
+ // This prototype is deprecated.
7468
8700
  static inline __ATTRS_o_ai __vector unsigned short
7469
8701
  vec_srab(__vector unsigned short __a, __vector signed short __b) {
7470
8702
  return (__vector unsigned short)__builtin_s390_vsrab(
7471
8703
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7472
8704
  }
7473
8705
 
8706
+ // This prototype is deprecated.
7474
8707
  static inline __ATTRS_o_ai __vector unsigned short
7475
8708
  vec_srab(__vector unsigned short __a, __vector unsigned short __b) {
7476
8709
  return (__vector unsigned short)__builtin_s390_vsrab(
7477
8710
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7478
8711
  }
7479
8712
 
8713
+ static inline __ATTRS_o_ai __vector unsigned short
8714
+ vec_srab(__vector unsigned short __a, __vector unsigned char __b) {
8715
+ return (__vector unsigned short)__builtin_s390_vsrab(
8716
+ (__vector unsigned char)__a, __b);
8717
+ }
8718
+
8719
+ // This prototype is deprecated.
7480
8720
  static inline __ATTRS_o_ai __vector signed int
7481
8721
  vec_srab(__vector signed int __a, __vector signed int __b) {
7482
8722
  return (__vector signed int)__builtin_s390_vsrab(
7483
8723
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7484
8724
  }
7485
8725
 
8726
+ // This prototype is deprecated.
7486
8727
  static inline __ATTRS_o_ai __vector signed int
7487
8728
  vec_srab(__vector signed int __a, __vector unsigned int __b) {
7488
8729
  return (__vector signed int)__builtin_s390_vsrab(
7489
8730
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7490
8731
  }
7491
8732
 
8733
+ static inline __ATTRS_o_ai __vector signed int
8734
+ vec_srab(__vector signed int __a, __vector unsigned char __b) {
8735
+ return (__vector signed int)__builtin_s390_vsrab(
8736
+ (__vector unsigned char)__a, __b);
8737
+ }
8738
+
8739
+ // This prototype is deprecated.
7492
8740
  static inline __ATTRS_o_ai __vector unsigned int
7493
8741
  vec_srab(__vector unsigned int __a, __vector signed int __b) {
7494
8742
  return (__vector unsigned int)__builtin_s390_vsrab(
7495
8743
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7496
8744
  }
7497
8745
 
8746
+ // This prototype is deprecated.
7498
8747
  static inline __ATTRS_o_ai __vector unsigned int
7499
8748
  vec_srab(__vector unsigned int __a, __vector unsigned int __b) {
7500
8749
  return (__vector unsigned int)__builtin_s390_vsrab(
7501
8750
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7502
8751
  }
7503
8752
 
8753
+ static inline __ATTRS_o_ai __vector unsigned int
8754
+ vec_srab(__vector unsigned int __a, __vector unsigned char __b) {
8755
+ return (__vector unsigned int)__builtin_s390_vsrab(
8756
+ (__vector unsigned char)__a, __b);
8757
+ }
8758
+
8759
+ // This prototype is deprecated.
7504
8760
  static inline __ATTRS_o_ai __vector signed long long
7505
8761
  vec_srab(__vector signed long long __a, __vector signed long long __b) {
7506
8762
  return (__vector signed long long)__builtin_s390_vsrab(
7507
8763
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7508
8764
  }
7509
8765
 
8766
+ // This prototype is deprecated.
7510
8767
  static inline __ATTRS_o_ai __vector signed long long
7511
8768
  vec_srab(__vector signed long long __a, __vector unsigned long long __b) {
7512
8769
  return (__vector signed long long)__builtin_s390_vsrab(
7513
8770
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7514
8771
  }
7515
8772
 
8773
+ static inline __ATTRS_o_ai __vector signed long long
8774
+ vec_srab(__vector signed long long __a, __vector unsigned char __b) {
8775
+ return (__vector signed long long)__builtin_s390_vsrab(
8776
+ (__vector unsigned char)__a, __b);
8777
+ }
8778
+
8779
+ // This prototype is deprecated.
7516
8780
  static inline __ATTRS_o_ai __vector unsigned long long
7517
8781
  vec_srab(__vector unsigned long long __a, __vector signed long long __b) {
7518
8782
  return (__vector unsigned long long)__builtin_s390_vsrab(
7519
8783
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7520
8784
  }
7521
8785
 
7522
- static inline __ATTRS_o_ai __vector unsigned long long
7523
- vec_srab(__vector unsigned long long __a, __vector unsigned long long __b) {
7524
- return (__vector unsigned long long)__builtin_s390_vsrab(
7525
- (__vector unsigned char)__a, (__vector unsigned char)__b);
8786
+ // This prototype is deprecated.
8787
+ static inline __ATTRS_o_ai __vector unsigned long long
8788
+ vec_srab(__vector unsigned long long __a, __vector unsigned long long __b) {
8789
+ return (__vector unsigned long long)__builtin_s390_vsrab(
8790
+ (__vector unsigned char)__a, (__vector unsigned char)__b);
8791
+ }
8792
+
8793
+ static inline __ATTRS_o_ai __vector unsigned long long
8794
+ vec_srab(__vector unsigned long long __a, __vector unsigned char __b) {
8795
+ return (__vector unsigned long long)__builtin_s390_vsrab(
8796
+ (__vector unsigned char)__a, __b);
8797
+ }
8798
+
8799
+ static inline __ATTRS_o_ai __vector signed __int128
8800
+ vec_srab(__vector signed __int128 __a, __vector unsigned char __b) {
8801
+ return (__vector signed __int128)__builtin_s390_vsrab(
8802
+ (__vector unsigned char)__a, __b);
8803
+ }
8804
+
8805
+ static inline __ATTRS_o_ai __vector unsigned __int128
8806
+ vec_srab(__vector unsigned __int128 __a, __vector unsigned char __b) {
8807
+ return (__vector unsigned __int128)__builtin_s390_vsrab(
8808
+ (__vector unsigned char)__a, __b);
7526
8809
  }
7527
8810
 
7528
8811
  #if __ARCH__ >= 12
8812
+ // This prototype is deprecated.
7529
8813
  static inline __ATTRS_o_ai __vector float
7530
8814
  vec_srab(__vector float __a, __vector signed int __b) {
7531
8815
  return (__vector float)__builtin_s390_vsrab(
7532
8816
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7533
8817
  }
7534
8818
 
8819
+ // This prototype is deprecated.
7535
8820
  static inline __ATTRS_o_ai __vector float
7536
8821
  vec_srab(__vector float __a, __vector unsigned int __b) {
7537
8822
  return (__vector float)__builtin_s390_vsrab(
7538
8823
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7539
8824
  }
8825
+
8826
+ static inline __ATTRS_o_ai __vector float
8827
+ vec_srab(__vector float __a, __vector unsigned char __b) {
8828
+ return (__vector float)__builtin_s390_vsrab(
8829
+ (__vector unsigned char)__a, __b);
8830
+ }
7540
8831
  #endif
7541
8832
 
8833
+ // This prototype is deprecated.
7542
8834
  static inline __ATTRS_o_ai __vector double
7543
8835
  vec_srab(__vector double __a, __vector signed long long __b) {
7544
8836
  return (__vector double)__builtin_s390_vsrab(
7545
8837
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7546
8838
  }
7547
8839
 
8840
+ // This prototype is deprecated.
7548
8841
  static inline __ATTRS_o_ai __vector double
7549
8842
  vec_srab(__vector double __a, __vector unsigned long long __b) {
7550
8843
  return (__vector double)__builtin_s390_vsrab(
7551
8844
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7552
8845
  }
7553
8846
 
8847
+ static inline __ATTRS_o_ai __vector double
8848
+ vec_srab(__vector double __a, __vector unsigned char __b) {
8849
+ return (__vector double)__builtin_s390_vsrab(
8850
+ (__vector unsigned char)__a, __b);
8851
+ }
8852
+
7554
8853
  /*-- vec_srl ----------------------------------------------------------------*/
7555
8854
 
7556
8855
  static inline __ATTRS_o_ai __vector signed char
@@ -7794,8 +9093,21 @@ vec_srl(__vector unsigned long long __a, __vector unsigned int __b) {
7794
9093
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7795
9094
  }
7796
9095
 
9096
+ static inline __ATTRS_o_ai __vector signed __int128
9097
+ vec_srl(__vector signed __int128 __a, __vector unsigned char __b) {
9098
+ return (__vector signed __int128)__builtin_s390_vsrl(
9099
+ (__vector unsigned char)__a, __b);
9100
+ }
9101
+
9102
+ static inline __ATTRS_o_ai __vector unsigned __int128
9103
+ vec_srl(__vector unsigned __int128 __a, __vector unsigned char __b) {
9104
+ return (__vector unsigned __int128)__builtin_s390_vsrl(
9105
+ (__vector unsigned char)__a, __b);
9106
+ }
9107
+
7797
9108
  /*-- vec_srb ----------------------------------------------------------------*/
7798
9109
 
9110
+ // This prototype is deprecated.
7799
9111
  static inline __ATTRS_o_ai __vector signed char
7800
9112
  vec_srb(__vector signed char __a, __vector signed char __b) {
7801
9113
  return (__vector signed char)__builtin_s390_vsrlb(
@@ -7808,6 +9120,7 @@ vec_srb(__vector signed char __a, __vector unsigned char __b) {
7808
9120
  (__vector unsigned char)__a, __b);
7809
9121
  }
7810
9122
 
9123
+ // This prototype is deprecated.
7811
9124
  static inline __ATTRS_o_ai __vector unsigned char
7812
9125
  vec_srb(__vector unsigned char __a, __vector signed char __b) {
7813
9126
  return __builtin_s390_vsrlb(__a, (__vector unsigned char)__b);
@@ -7818,104 +9131,180 @@ vec_srb(__vector unsigned char __a, __vector unsigned char __b) {
7818
9131
  return __builtin_s390_vsrlb(__a, __b);
7819
9132
  }
7820
9133
 
9134
+ // This prototype is deprecated.
7821
9135
  static inline __ATTRS_o_ai __vector signed short
7822
9136
  vec_srb(__vector signed short __a, __vector signed short __b) {
7823
9137
  return (__vector signed short)__builtin_s390_vsrlb(
7824
9138
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7825
9139
  }
7826
9140
 
9141
+ // This prototype is deprecated.
7827
9142
  static inline __ATTRS_o_ai __vector signed short
7828
9143
  vec_srb(__vector signed short __a, __vector unsigned short __b) {
7829
9144
  return (__vector signed short)__builtin_s390_vsrlb(
7830
9145
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7831
9146
  }
7832
9147
 
9148
+ static inline __ATTRS_o_ai __vector signed short
9149
+ vec_srb(__vector signed short __a, __vector unsigned char __b) {
9150
+ return (__vector signed short)__builtin_s390_vsrlb(
9151
+ (__vector unsigned char)__a, __b);
9152
+ }
9153
+
9154
+ // This prototype is deprecated.
7833
9155
  static inline __ATTRS_o_ai __vector unsigned short
7834
9156
  vec_srb(__vector unsigned short __a, __vector signed short __b) {
7835
9157
  return (__vector unsigned short)__builtin_s390_vsrlb(
7836
9158
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7837
9159
  }
7838
9160
 
9161
+ // This prototype is deprecated.
7839
9162
  static inline __ATTRS_o_ai __vector unsigned short
7840
9163
  vec_srb(__vector unsigned short __a, __vector unsigned short __b) {
7841
9164
  return (__vector unsigned short)__builtin_s390_vsrlb(
7842
9165
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7843
9166
  }
7844
9167
 
9168
+ static inline __ATTRS_o_ai __vector unsigned short
9169
+ vec_srb(__vector unsigned short __a, __vector unsigned char __b) {
9170
+ return (__vector unsigned short)__builtin_s390_vsrlb(
9171
+ (__vector unsigned char)__a, __b);
9172
+ }
9173
+
9174
+ // This prototype is deprecated.
7845
9175
  static inline __ATTRS_o_ai __vector signed int
7846
9176
  vec_srb(__vector signed int __a, __vector signed int __b) {
7847
9177
  return (__vector signed int)__builtin_s390_vsrlb(
7848
9178
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7849
9179
  }
7850
9180
 
9181
+ // This prototype is deprecated.
7851
9182
  static inline __ATTRS_o_ai __vector signed int
7852
9183
  vec_srb(__vector signed int __a, __vector unsigned int __b) {
7853
9184
  return (__vector signed int)__builtin_s390_vsrlb(
7854
9185
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7855
9186
  }
7856
9187
 
9188
+ static inline __ATTRS_o_ai __vector signed int
9189
+ vec_srb(__vector signed int __a, __vector unsigned char __b) {
9190
+ return (__vector signed int)__builtin_s390_vsrlb(
9191
+ (__vector unsigned char)__a, __b);
9192
+ }
9193
+
9194
+ // This prototype is deprecated.
7857
9195
  static inline __ATTRS_o_ai __vector unsigned int
7858
9196
  vec_srb(__vector unsigned int __a, __vector signed int __b) {
7859
9197
  return (__vector unsigned int)__builtin_s390_vsrlb(
7860
9198
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7861
9199
  }
7862
9200
 
9201
+ // This prototype is deprecated.
7863
9202
  static inline __ATTRS_o_ai __vector unsigned int
7864
9203
  vec_srb(__vector unsigned int __a, __vector unsigned int __b) {
7865
9204
  return (__vector unsigned int)__builtin_s390_vsrlb(
7866
9205
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7867
9206
  }
7868
9207
 
9208
+ static inline __ATTRS_o_ai __vector unsigned int
9209
+ vec_srb(__vector unsigned int __a, __vector unsigned char __b) {
9210
+ return (__vector unsigned int)__builtin_s390_vsrlb(
9211
+ (__vector unsigned char)__a, __b);
9212
+ }
9213
+
9214
+ // This prototype is deprecated.
7869
9215
  static inline __ATTRS_o_ai __vector signed long long
7870
9216
  vec_srb(__vector signed long long __a, __vector signed long long __b) {
7871
9217
  return (__vector signed long long)__builtin_s390_vsrlb(
7872
9218
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7873
9219
  }
7874
9220
 
9221
+ // This prototype is deprecated.
7875
9222
  static inline __ATTRS_o_ai __vector signed long long
7876
9223
  vec_srb(__vector signed long long __a, __vector unsigned long long __b) {
7877
9224
  return (__vector signed long long)__builtin_s390_vsrlb(
7878
9225
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7879
9226
  }
7880
9227
 
9228
+ static inline __ATTRS_o_ai __vector signed long long
9229
+ vec_srb(__vector signed long long __a, __vector unsigned char __b) {
9230
+ return (__vector signed long long)__builtin_s390_vsrlb(
9231
+ (__vector unsigned char)__a, __b);
9232
+ }
9233
+
9234
+ // This prototype is deprecated.
7881
9235
  static inline __ATTRS_o_ai __vector unsigned long long
7882
9236
  vec_srb(__vector unsigned long long __a, __vector signed long long __b) {
7883
9237
  return (__vector unsigned long long)__builtin_s390_vsrlb(
7884
9238
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7885
9239
  }
7886
9240
 
9241
+ // This prototype is deprecated.
7887
9242
  static inline __ATTRS_o_ai __vector unsigned long long
7888
9243
  vec_srb(__vector unsigned long long __a, __vector unsigned long long __b) {
7889
9244
  return (__vector unsigned long long)__builtin_s390_vsrlb(
7890
9245
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7891
9246
  }
7892
9247
 
9248
+ static inline __ATTRS_o_ai __vector unsigned long long
9249
+ vec_srb(__vector unsigned long long __a, __vector unsigned char __b) {
9250
+ return (__vector unsigned long long)__builtin_s390_vsrlb(
9251
+ (__vector unsigned char)__a, __b);
9252
+ }
9253
+
9254
+ static inline __ATTRS_o_ai __vector signed __int128
9255
+ vec_srb(__vector signed __int128 __a, __vector unsigned char __b) {
9256
+ return (__vector signed __int128)__builtin_s390_vsrlb(
9257
+ (__vector unsigned char)__a, __b);
9258
+ }
9259
+
9260
+ static inline __ATTRS_o_ai __vector unsigned __int128
9261
+ vec_srb(__vector unsigned __int128 __a, __vector unsigned char __b) {
9262
+ return (__vector unsigned __int128)__builtin_s390_vsrlb(
9263
+ (__vector unsigned char)__a, __b);
9264
+ }
9265
+
7893
9266
  #if __ARCH__ >= 12
9267
+ // This prototype is deprecated.
7894
9268
  static inline __ATTRS_o_ai __vector float
7895
9269
  vec_srb(__vector float __a, __vector signed int __b) {
7896
9270
  return (__vector float)__builtin_s390_vsrlb(
7897
9271
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7898
9272
  }
7899
9273
 
9274
+ // This prototype is deprecated.
7900
9275
  static inline __ATTRS_o_ai __vector float
7901
9276
  vec_srb(__vector float __a, __vector unsigned int __b) {
7902
9277
  return (__vector float)__builtin_s390_vsrlb(
7903
9278
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7904
9279
  }
9280
+
9281
+ static inline __ATTRS_o_ai __vector float
9282
+ vec_srb(__vector float __a, __vector unsigned char __b) {
9283
+ return (__vector float)__builtin_s390_vsrlb(
9284
+ (__vector unsigned char)__a, __b);
9285
+ }
7905
9286
  #endif
7906
9287
 
9288
+ // This prototype is deprecated.
7907
9289
  static inline __ATTRS_o_ai __vector double
7908
9290
  vec_srb(__vector double __a, __vector signed long long __b) {
7909
9291
  return (__vector double)__builtin_s390_vsrlb(
7910
9292
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7911
9293
  }
7912
9294
 
9295
+ // This prototype is deprecated.
7913
9296
  static inline __ATTRS_o_ai __vector double
7914
9297
  vec_srb(__vector double __a, __vector unsigned long long __b) {
7915
9298
  return (__vector double)__builtin_s390_vsrlb(
7916
9299
  (__vector unsigned char)__a, (__vector unsigned char)__b);
7917
9300
  }
7918
9301
 
9302
+ static inline __ATTRS_o_ai __vector double
9303
+ vec_srb(__vector double __a, __vector unsigned char __b) {
9304
+ return (__vector double)__builtin_s390_vsrlb(
9305
+ (__vector unsigned char)__a, __b);
9306
+ }
9307
+
7919
9308
  /*-- vec_srdb ---------------------------------------------------------------*/
7920
9309
 
7921
9310
  #if __ARCH__ >= 13
@@ -7953,6 +9342,15 @@ vec_srdb(__vector unsigned long long __a, __vector unsigned long long __b,
7953
9342
  int __c)
7954
9343
  __constant_range(__c, 0, 7);
7955
9344
 
9345
+ extern __ATTRS_o __vector signed __int128
9346
+ vec_srdb(__vector signed __int128 __a, __vector signed __int128 __b, int __c)
9347
+ __constant_range(__c, 0, 7);
9348
+
9349
+ extern __ATTRS_o __vector unsigned __int128
9350
+ vec_srdb(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
9351
+ int __c)
9352
+ __constant_range(__c, 0, 7);
9353
+
7956
9354
  extern __ATTRS_o __vector float
7957
9355
  vec_srdb(__vector float __a, __vector float __b, int __c)
7958
9356
  __constant_range(__c, 0, 7);
@@ -7989,6 +9387,11 @@ vec_abs(__vector signed long long __a) {
7989
9387
  return vec_sel(__a, -__a, vec_cmplt(__a, (__vector signed long long)0));
7990
9388
  }
7991
9389
 
9390
+ static inline __ATTRS_o_ai __vector signed __int128
9391
+ vec_abs(__vector signed __int128 __a) {
9392
+ return vec_sel(__a, -__a, vec_cmplt(__a, (__vector signed __int128)0));
9393
+ }
9394
+
7992
9395
  #if __ARCH__ >= 12
7993
9396
  static inline __ATTRS_o_ai __vector float
7994
9397
  vec_abs(__vector float __a) {
@@ -8169,6 +9572,16 @@ vec_max(__vector __bool long long __a, __vector unsigned long long __b) {
8169
9572
  return vec_sel(__b, __ac, vec_cmpgt(__ac, __b));
8170
9573
  }
8171
9574
 
9575
+ static inline __ATTRS_o_ai __vector signed __int128
9576
+ vec_max(__vector signed __int128 __a, __vector signed __int128 __b) {
9577
+ return vec_sel(__b, __a, vec_cmpgt(__a, __b));
9578
+ }
9579
+
9580
+ static inline __ATTRS_o_ai __vector unsigned __int128
9581
+ vec_max(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
9582
+ return vec_sel(__b, __a, vec_cmpgt(__a, __b));
9583
+ }
9584
+
8172
9585
  #if __ARCH__ >= 12
8173
9586
  static inline __ATTRS_o_ai __vector float
8174
9587
  vec_max(__vector float __a, __vector float __b) {
@@ -8339,6 +9752,16 @@ vec_min(__vector __bool long long __a, __vector unsigned long long __b) {
8339
9752
  return vec_sel(__ac, __b, vec_cmpgt(__ac, __b));
8340
9753
  }
8341
9754
 
9755
+ static inline __ATTRS_o_ai __vector signed __int128
9756
+ vec_min(__vector signed __int128 __a, __vector signed __int128 __b) {
9757
+ return vec_sel(__a, __b, vec_cmpgt(__a, __b));
9758
+ }
9759
+
9760
+ static inline __ATTRS_o_ai __vector unsigned __int128
9761
+ vec_min(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
9762
+ return vec_sel(__a, __b, vec_cmpgt(__a, __b));
9763
+ }
9764
+
8342
9765
  #if __ARCH__ >= 12
8343
9766
  static inline __ATTRS_o_ai __vector float
8344
9767
  vec_min(__vector float __a, __vector float __b) {
@@ -8357,9 +9780,11 @@ vec_min(__vector double __a, __vector double __b) {
8357
9780
 
8358
9781
  /*-- vec_add_u128 -----------------------------------------------------------*/
8359
9782
 
9783
+ // This prototype is deprecated.
8360
9784
  static inline __ATTRS_ai __vector unsigned char
8361
9785
  vec_add_u128(__vector unsigned char __a, __vector unsigned char __b) {
8362
- return (__vector unsigned char)((__int128)__a + (__int128)__b);
9786
+ return (__vector unsigned char)(__vector unsigned __int128)
9787
+ ((__int128)__a + (__int128)__b);
8363
9788
  }
8364
9789
 
8365
9790
  /*-- vec_addc ---------------------------------------------------------------*/
@@ -8384,30 +9809,59 @@ vec_addc(__vector unsigned long long __a, __vector unsigned long long __b) {
8384
9809
  return __builtin_s390_vaccg(__a, __b);
8385
9810
  }
8386
9811
 
9812
+ static inline __ATTRS_o_ai __vector unsigned __int128
9813
+ vec_addc(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
9814
+ return (__vector unsigned __int128)
9815
+ __builtin_s390_vaccq((unsigned __int128)__a, (unsigned __int128)__b);
9816
+ }
9817
+
8387
9818
  /*-- vec_addc_u128 ----------------------------------------------------------*/
8388
9819
 
9820
+ // This prototype is deprecated.
8389
9821
  static inline __ATTRS_ai __vector unsigned char
8390
9822
  vec_addc_u128(__vector unsigned char __a, __vector unsigned char __b) {
8391
- return (__vector unsigned char)
9823
+ return (__vector unsigned char)(__vector unsigned __int128)
8392
9824
  __builtin_s390_vaccq((unsigned __int128)__a, (unsigned __int128)__b);
8393
9825
  }
8394
9826
 
9827
+ /*-- vec_adde ---------------------------------------------------------------*/
9828
+
9829
+ static inline __ATTRS_ai __vector unsigned __int128
9830
+ vec_adde(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
9831
+ __vector unsigned __int128 __c) {
9832
+ return (__vector unsigned __int128)
9833
+ __builtin_s390_vacq((unsigned __int128)__a, (unsigned __int128)__b,
9834
+ (unsigned __int128)__c);
9835
+ }
9836
+
8395
9837
  /*-- vec_adde_u128 ----------------------------------------------------------*/
8396
9838
 
9839
+ // This prototype is deprecated.
8397
9840
  static inline __ATTRS_ai __vector unsigned char
8398
9841
  vec_adde_u128(__vector unsigned char __a, __vector unsigned char __b,
8399
9842
  __vector unsigned char __c) {
8400
- return (__vector unsigned char)
9843
+ return (__vector unsigned char)(__vector unsigned __int128)
8401
9844
  __builtin_s390_vacq((unsigned __int128)__a, (unsigned __int128)__b,
8402
9845
  (unsigned __int128)__c);
8403
9846
  }
8404
9847
 
9848
+ /*-- vec_addec --------------------------------------------------------------*/
9849
+
9850
+ static inline __ATTRS_ai __vector unsigned __int128
9851
+ vec_addec(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
9852
+ __vector unsigned __int128 __c) {
9853
+ return (__vector unsigned __int128)
9854
+ __builtin_s390_vacccq((unsigned __int128)__a, (unsigned __int128)__b,
9855
+ (unsigned __int128)__c);
9856
+ }
9857
+
8405
9858
  /*-- vec_addec_u128 ---------------------------------------------------------*/
8406
9859
 
9860
+ // This prototype is deprecated.
8407
9861
  static inline __ATTRS_ai __vector unsigned char
8408
9862
  vec_addec_u128(__vector unsigned char __a, __vector unsigned char __b,
8409
9863
  __vector unsigned char __c) {
8410
- return (__vector unsigned char)
9864
+ return (__vector unsigned char)(__vector unsigned __int128)
8411
9865
  __builtin_s390_vacccq((unsigned __int128)__a, (unsigned __int128)__b,
8412
9866
  (unsigned __int128)__c);
8413
9867
  }
@@ -8434,6 +9888,14 @@ vec_avg(__vector signed long long __a, __vector signed long long __b) {
8434
9888
  return __builtin_s390_vavgg(__a, __b);
8435
9889
  }
8436
9890
 
9891
+ #if __ARCH__ >= 15
9892
+ static inline __ATTRS_o_ai __vector signed __int128
9893
+ vec_avg(__vector signed __int128 __a, __vector signed __int128 __b) {
9894
+ return (__vector signed __int128)
9895
+ __builtin_s390_vavgq((signed __int128)__a, (signed __int128)__b);
9896
+ }
9897
+ #endif
9898
+
8437
9899
  static inline __ATTRS_o_ai __vector unsigned char
8438
9900
  vec_avg(__vector unsigned char __a, __vector unsigned char __b) {
8439
9901
  return __builtin_s390_vavglb(__a, __b);
@@ -8454,6 +9916,14 @@ vec_avg(__vector unsigned long long __a, __vector unsigned long long __b) {
8454
9916
  return __builtin_s390_vavglg(__a, __b);
8455
9917
  }
8456
9918
 
9919
+ #if __ARCH__ >= 15
9920
+ static inline __ATTRS_o_ai __vector unsigned __int128
9921
+ vec_avg(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
9922
+ return (__vector unsigned __int128)
9923
+ __builtin_s390_vavglq((unsigned __int128)__a, (unsigned __int128)__b);
9924
+ }
9925
+ #endif
9926
+
8457
9927
  /*-- vec_checksum -----------------------------------------------------------*/
8458
9928
 
8459
9929
  static inline __ATTRS_ai __vector unsigned int
@@ -8478,12 +9948,19 @@ vec_gfmsum(__vector unsigned int __a, __vector unsigned int __b) {
8478
9948
  return __builtin_s390_vgfmf(__a, __b);
8479
9949
  }
8480
9950
 
9951
+ static inline __ATTRS_o_ai __vector unsigned __int128
9952
+ vec_gfmsum(__vector unsigned long long __a, __vector unsigned long long __b) {
9953
+ return (__vector unsigned __int128)__builtin_s390_vgfmg(__a, __b);
9954
+ }
9955
+
8481
9956
  /*-- vec_gfmsum_128 ---------------------------------------------------------*/
8482
9957
 
9958
+ // This prototype is deprecated.
8483
9959
  static inline __ATTRS_o_ai __vector unsigned char
8484
9960
  vec_gfmsum_128(__vector unsigned long long __a,
8485
9961
  __vector unsigned long long __b) {
8486
- return (__vector unsigned char)__builtin_s390_vgfmg(__a, __b);
9962
+ return (__vector unsigned char)(__vector unsigned __int128)
9963
+ __builtin_s390_vgfmg(__a, __b);
8487
9964
  }
8488
9965
 
8489
9966
  /*-- vec_gfmsum_accum -------------------------------------------------------*/
@@ -8506,13 +9983,21 @@ vec_gfmsum_accum(__vector unsigned int __a, __vector unsigned int __b,
8506
9983
  return __builtin_s390_vgfmaf(__a, __b, __c);
8507
9984
  }
8508
9985
 
9986
+ static inline __ATTRS_o_ai __vector unsigned __int128
9987
+ vec_gfmsum_accum(__vector unsigned long long __a, __vector unsigned long long __b,
9988
+ __vector unsigned __int128 __c) {
9989
+ return (__vector unsigned __int128)
9990
+ __builtin_s390_vgfmag(__a, __b, (unsigned __int128)__c);
9991
+ }
9992
+
8509
9993
  /*-- vec_gfmsum_accum_128 ---------------------------------------------------*/
8510
9994
 
9995
+ // This prototype is deprecated.
8511
9996
  static inline __ATTRS_o_ai __vector unsigned char
8512
9997
  vec_gfmsum_accum_128(__vector unsigned long long __a,
8513
9998
  __vector unsigned long long __b,
8514
9999
  __vector unsigned char __c) {
8515
- return (__vector unsigned char)
10000
+ return (__vector unsigned char)(__vector unsigned __int128)
8516
10001
  __builtin_s390_vgfmag(__a, __b, (unsigned __int128)__c);
8517
10002
  }
8518
10003
 
@@ -8590,6 +10075,56 @@ vec_mladd(__vector unsigned int __a, __vector unsigned int __b,
8590
10075
  return __a * __b + __c;
8591
10076
  }
8592
10077
 
10078
+ #if __ARCH__ >= 15
10079
+ static inline __ATTRS_o_ai __vector signed long long
10080
+ vec_mladd(__vector signed long long __a, __vector signed long long __b,
10081
+ __vector signed long long __c) {
10082
+ return __a * __b + __c;
10083
+ }
10084
+
10085
+ static inline __ATTRS_o_ai __vector signed long long
10086
+ vec_mladd(__vector unsigned long long __a, __vector signed long long __b,
10087
+ __vector signed long long __c) {
10088
+ return (__vector signed long long)__a * __b + __c;
10089
+ }
10090
+
10091
+ static inline __ATTRS_o_ai __vector signed long long
10092
+ vec_mladd(__vector signed long long __a, __vector unsigned long long __b,
10093
+ __vector unsigned long long __c) {
10094
+ return __a * (__vector signed long long)__b + (__vector signed long long)__c;
10095
+ }
10096
+
10097
+ static inline __ATTRS_o_ai __vector unsigned long long
10098
+ vec_mladd(__vector unsigned long long __a, __vector unsigned long long __b,
10099
+ __vector unsigned long long __c) {
10100
+ return __a * __b + __c;
10101
+ }
10102
+
10103
+ static inline __ATTRS_o_ai __vector signed __int128
10104
+ vec_mladd(__vector signed __int128 __a, __vector signed __int128 __b,
10105
+ __vector signed __int128 __c) {
10106
+ return __a * __b + __c;
10107
+ }
10108
+
10109
+ static inline __ATTRS_o_ai __vector signed __int128
10110
+ vec_mladd(__vector unsigned __int128 __a, __vector signed __int128 __b,
10111
+ __vector signed __int128 __c) {
10112
+ return (__vector signed __int128)__a * __b + __c;
10113
+ }
10114
+
10115
+ static inline __ATTRS_o_ai __vector signed __int128
10116
+ vec_mladd(__vector signed __int128 __a, __vector unsigned __int128 __b,
10117
+ __vector unsigned __int128 __c) {
10118
+ return __a * (__vector signed __int128)__b + (__vector signed __int128)__c;
10119
+ }
10120
+
10121
+ static inline __ATTRS_o_ai __vector unsigned __int128
10122
+ vec_mladd(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
10123
+ __vector unsigned __int128 __c) {
10124
+ return __a * __b + __c;
10125
+ }
10126
+ #endif
10127
+
8593
10128
  /*-- vec_mhadd --------------------------------------------------------------*/
8594
10129
 
8595
10130
  static inline __ATTRS_o_ai __vector signed char
@@ -8628,6 +10163,34 @@ vec_mhadd(__vector unsigned int __a, __vector unsigned int __b,
8628
10163
  return __builtin_s390_vmalhf(__a, __b, __c);
8629
10164
  }
8630
10165
 
10166
+ #if __ARCH__ >= 15
10167
+ static inline __ATTRS_o_ai __vector signed long long
10168
+ vec_mhadd(__vector signed long long __a, __vector signed long long __b,
10169
+ __vector signed long long __c) {
10170
+ return __builtin_s390_vmahg(__a, __b, __c);
10171
+ }
10172
+
10173
+ static inline __ATTRS_o_ai __vector unsigned long long
10174
+ vec_mhadd(__vector unsigned long long __a, __vector unsigned long long __b,
10175
+ __vector unsigned long long __c) {
10176
+ return __builtin_s390_vmalhg(__a, __b, __c);
10177
+ }
10178
+
10179
+ static inline __ATTRS_o_ai __vector signed __int128
10180
+ vec_mhadd(__vector signed __int128 __a, __vector signed __int128 __b,
10181
+ __vector signed __int128 __c) {
10182
+ return (__vector signed __int128)
10183
+ __builtin_s390_vmahq((signed __int128)__a, (signed __int128)__b, (signed __int128)__c);
10184
+ }
10185
+
10186
+ static inline __ATTRS_o_ai __vector unsigned __int128
10187
+ vec_mhadd(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
10188
+ __vector unsigned __int128 __c) {
10189
+ return (__vector unsigned __int128)
10190
+ __builtin_s390_vmalhq((unsigned __int128)__a, (unsigned __int128)__b, (unsigned __int128)__c);
10191
+ }
10192
+ #endif
10193
+
8631
10194
  /*-- vec_meadd --------------------------------------------------------------*/
8632
10195
 
8633
10196
  static inline __ATTRS_o_ai __vector signed short
@@ -8666,6 +10229,22 @@ vec_meadd(__vector unsigned int __a, __vector unsigned int __b,
8666
10229
  return __builtin_s390_vmalef(__a, __b, __c);
8667
10230
  }
8668
10231
 
10232
+ #if __ARCH__ >= 15
10233
+ static inline __ATTRS_o_ai __vector signed __int128
10234
+ vec_meadd(__vector signed long long __a, __vector signed long long __b,
10235
+ __vector signed __int128 __c) {
10236
+ return (__vector signed __int128)
10237
+ __builtin_s390_vmaeg(__a, __b, (signed __int128)__c);
10238
+ }
10239
+
10240
+ static inline __ATTRS_o_ai __vector unsigned __int128
10241
+ vec_meadd(__vector unsigned long long __a, __vector unsigned long long __b,
10242
+ __vector unsigned __int128 __c) {
10243
+ return (__vector unsigned __int128)
10244
+ __builtin_s390_vmaleg(__a, __b, (unsigned __int128)__c);
10245
+ }
10246
+ #endif
10247
+
8669
10248
  /*-- vec_moadd --------------------------------------------------------------*/
8670
10249
 
8671
10250
  static inline __ATTRS_o_ai __vector signed short
@@ -8704,6 +10283,22 @@ vec_moadd(__vector unsigned int __a, __vector unsigned int __b,
8704
10283
  return __builtin_s390_vmalof(__a, __b, __c);
8705
10284
  }
8706
10285
 
10286
+ #if __ARCH__ >= 15
10287
+ static inline __ATTRS_o_ai __vector signed __int128
10288
+ vec_moadd(__vector signed long long __a, __vector signed long long __b,
10289
+ __vector signed __int128 __c) {
10290
+ return (__vector signed __int128)
10291
+ __builtin_s390_vmaog(__a, __b, (signed __int128)__c);
10292
+ }
10293
+
10294
+ static inline __ATTRS_o_ai __vector unsigned __int128
10295
+ vec_moadd(__vector unsigned long long __a, __vector unsigned long long __b,
10296
+ __vector unsigned __int128 __c) {
10297
+ return (__vector unsigned __int128)
10298
+ __builtin_s390_vmalog(__a, __b, (unsigned __int128)__c);
10299
+ }
10300
+ #endif
10301
+
8707
10302
  /*-- vec_mulh ---------------------------------------------------------------*/
8708
10303
 
8709
10304
  static inline __ATTRS_o_ai __vector signed char
@@ -8736,6 +10331,30 @@ vec_mulh(__vector unsigned int __a, __vector unsigned int __b) {
8736
10331
  return __builtin_s390_vmlhf(__a, __b);
8737
10332
  }
8738
10333
 
10334
+ #if __ARCH__ >= 15
10335
+ static inline __ATTRS_o_ai __vector signed long long
10336
+ vec_mulh(__vector signed long long __a, __vector signed long long __b) {
10337
+ return __builtin_s390_vmhg(__a, __b);
10338
+ }
10339
+
10340
+ static inline __ATTRS_o_ai __vector unsigned long long
10341
+ vec_mulh(__vector unsigned long long __a, __vector unsigned long long __b) {
10342
+ return __builtin_s390_vmlhg(__a, __b);
10343
+ }
10344
+
10345
+ static inline __ATTRS_o_ai __vector signed __int128
10346
+ vec_mulh(__vector signed __int128 __a, __vector signed __int128 __b) {
10347
+ return (__vector signed __int128)
10348
+ __builtin_s390_vmhq((signed __int128)__a, (signed __int128)__b);
10349
+ }
10350
+
10351
+ static inline __ATTRS_o_ai __vector unsigned __int128
10352
+ vec_mulh(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
10353
+ return (__vector unsigned __int128)
10354
+ __builtin_s390_vmlhq((unsigned __int128)__a, (unsigned __int128)__b);
10355
+ }
10356
+ #endif
10357
+
8739
10358
  /*-- vec_mule ---------------------------------------------------------------*/
8740
10359
 
8741
10360
  static inline __ATTRS_o_ai __vector signed short
@@ -8768,6 +10387,18 @@ vec_mule(__vector unsigned int __a, __vector unsigned int __b) {
8768
10387
  return __builtin_s390_vmlef(__a, __b);
8769
10388
  }
8770
10389
 
10390
+ #if __ARCH__ >= 15
10391
+ static inline __ATTRS_o_ai __vector signed __int128
10392
+ vec_mule(__vector signed long long __a, __vector signed long long __b) {
10393
+ return (__vector signed __int128)__builtin_s390_vmeg(__a, __b);
10394
+ }
10395
+
10396
+ static inline __ATTRS_o_ai __vector unsigned __int128
10397
+ vec_mule(__vector unsigned long long __a, __vector unsigned long long __b) {
10398
+ return (__vector unsigned __int128)__builtin_s390_vmleg(__a, __b);
10399
+ }
10400
+ #endif
10401
+
8771
10402
  /*-- vec_mulo ---------------------------------------------------------------*/
8772
10403
 
8773
10404
  static inline __ATTRS_o_ai __vector signed short
@@ -8800,9 +10431,35 @@ vec_mulo(__vector unsigned int __a, __vector unsigned int __b) {
8800
10431
  return __builtin_s390_vmlof(__a, __b);
8801
10432
  }
8802
10433
 
10434
+ #if __ARCH__ >= 15
10435
+ static inline __ATTRS_o_ai __vector signed __int128
10436
+ vec_mulo(__vector signed long long __a, __vector signed long long __b) {
10437
+ return (__vector signed __int128)__builtin_s390_vmog(__a, __b);
10438
+ }
10439
+
10440
+ static inline __ATTRS_o_ai __vector unsigned __int128
10441
+ vec_mulo(__vector unsigned long long __a, __vector unsigned long long __b) {
10442
+ return (__vector unsigned __int128)__builtin_s390_vmlog(__a, __b);
10443
+ }
10444
+ #endif
10445
+
10446
+ /*-- vec_msum ---------------------------------------------------------------*/
10447
+
10448
+ #if __ARCH__ >= 12
10449
+ extern __ATTRS_o __vector unsigned __int128
10450
+ vec_msum(__vector unsigned long long __a, __vector unsigned long long __b,
10451
+ __vector unsigned __int128 __c, int __d)
10452
+ __constant_range(__d, 0, 15);
10453
+
10454
+ #define vec_msum(X, Y, Z, W) \
10455
+ ((__typeof__((vec_msum)((X), (Y), (Z), (W)))) \
10456
+ __builtin_s390_vmslg((X), (Y), (unsigned __int128)(Z), (W)))
10457
+ #endif
10458
+
8803
10459
  /*-- vec_msum_u128 ----------------------------------------------------------*/
8804
10460
 
8805
10461
  #if __ARCH__ >= 12
10462
+ // This prototype is deprecated.
8806
10463
  extern __ATTRS_o __vector unsigned char
8807
10464
  vec_msum_u128(__vector unsigned long long __a, __vector unsigned long long __b,
8808
10465
  __vector unsigned char __c, int __d)
@@ -8810,14 +10467,17 @@ vec_msum_u128(__vector unsigned long long __a, __vector unsigned long long __b,
8810
10467
 
8811
10468
  #define vec_msum_u128(X, Y, Z, W) \
8812
10469
  ((__typeof__((vec_msum_u128)((X), (Y), (Z), (W)))) \
10470
+ (__vector unsigned __int128) \
8813
10471
  __builtin_s390_vmslg((X), (Y), (unsigned __int128)(Z), (W)))
8814
10472
  #endif
8815
10473
 
8816
10474
  /*-- vec_sub_u128 -----------------------------------------------------------*/
8817
10475
 
10476
+ // This prototype is deprecated.
8818
10477
  static inline __ATTRS_ai __vector unsigned char
8819
10478
  vec_sub_u128(__vector unsigned char __a, __vector unsigned char __b) {
8820
- return (__vector unsigned char)((__int128)__a - (__int128)__b);
10479
+ return (__vector unsigned char)(__vector unsigned __int128)
10480
+ ((__int128)__a - (__int128)__b);
8821
10481
  }
8822
10482
 
8823
10483
  /*-- vec_subc ---------------------------------------------------------------*/
@@ -8842,30 +10502,59 @@ vec_subc(__vector unsigned long long __a, __vector unsigned long long __b) {
8842
10502
  return __builtin_s390_vscbig(__a, __b);
8843
10503
  }
8844
10504
 
10505
+ static inline __ATTRS_o_ai __vector unsigned __int128
10506
+ vec_subc(__vector unsigned __int128 __a, __vector unsigned __int128 __b) {
10507
+ return (__vector unsigned __int128)
10508
+ __builtin_s390_vscbiq((unsigned __int128)__a, (unsigned __int128)__b);
10509
+ }
10510
+
8845
10511
  /*-- vec_subc_u128 ----------------------------------------------------------*/
8846
10512
 
10513
+ // This prototype is deprecated.
8847
10514
  static inline __ATTRS_ai __vector unsigned char
8848
10515
  vec_subc_u128(__vector unsigned char __a, __vector unsigned char __b) {
8849
- return (__vector unsigned char)
10516
+ return (__vector unsigned char)(__vector unsigned __int128)
8850
10517
  __builtin_s390_vscbiq((unsigned __int128)__a, (unsigned __int128)__b);
8851
10518
  }
8852
10519
 
10520
+ /*-- vec_sube ---------------------------------------------------------------*/
10521
+
10522
+ static inline __ATTRS_ai __vector unsigned __int128
10523
+ vec_sube(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
10524
+ __vector unsigned __int128 __c) {
10525
+ return (__vector unsigned __int128)
10526
+ __builtin_s390_vsbiq((unsigned __int128)__a, (unsigned __int128)__b,
10527
+ (unsigned __int128)__c);
10528
+ }
10529
+
8853
10530
  /*-- vec_sube_u128 ----------------------------------------------------------*/
8854
10531
 
10532
+ // This prototype is deprecated.
8855
10533
  static inline __ATTRS_ai __vector unsigned char
8856
10534
  vec_sube_u128(__vector unsigned char __a, __vector unsigned char __b,
8857
10535
  __vector unsigned char __c) {
8858
- return (__vector unsigned char)
10536
+ return (__vector unsigned char)(__vector unsigned __int128)
8859
10537
  __builtin_s390_vsbiq((unsigned __int128)__a, (unsigned __int128)__b,
8860
10538
  (unsigned __int128)__c);
8861
10539
  }
8862
10540
 
10541
+ /*-- vec_subec --------------------------------------------------------------*/
10542
+
10543
+ static inline __ATTRS_ai __vector unsigned __int128
10544
+ vec_subec(__vector unsigned __int128 __a, __vector unsigned __int128 __b,
10545
+ __vector unsigned __int128 __c) {
10546
+ return (__vector unsigned __int128)
10547
+ __builtin_s390_vsbcbiq((unsigned __int128)__a, (unsigned __int128)__b,
10548
+ (unsigned __int128)__c);
10549
+ }
10550
+
8863
10551
  /*-- vec_subec_u128 ---------------------------------------------------------*/
8864
10552
 
10553
+ // This prototype is deprecated.
8865
10554
  static inline __ATTRS_ai __vector unsigned char
8866
10555
  vec_subec_u128(__vector unsigned char __a, __vector unsigned char __b,
8867
10556
  __vector unsigned char __c) {
8868
- return (__vector unsigned char)
10557
+ return (__vector unsigned char)(__vector unsigned __int128)
8869
10558
  __builtin_s390_vsbcbiq((unsigned __int128)__a, (unsigned __int128)__b,
8870
10559
  (unsigned __int128)__c);
8871
10560
  }
@@ -8882,16 +10571,32 @@ vec_sum2(__vector unsigned int __a, __vector unsigned int __b) {
8882
10571
  return __builtin_s390_vsumgf(__a, __b);
8883
10572
  }
8884
10573
 
10574
+ /*-- vec_sum ----------------------------------------------------------------*/
10575
+
10576
+ static inline __ATTRS_o_ai __vector unsigned __int128
10577
+ vec_sum(__vector unsigned int __a, __vector unsigned int __b) {
10578
+ return (__vector unsigned __int128)__builtin_s390_vsumqf(__a, __b);
10579
+ }
10580
+
10581
+ static inline __ATTRS_o_ai __vector unsigned __int128
10582
+ vec_sum(__vector unsigned long long __a, __vector unsigned long long __b) {
10583
+ return (__vector unsigned __int128)__builtin_s390_vsumqg(__a, __b);
10584
+ }
10585
+
8885
10586
  /*-- vec_sum_u128 -----------------------------------------------------------*/
8886
10587
 
10588
+ // This prototype is deprecated.
8887
10589
  static inline __ATTRS_o_ai __vector unsigned char
8888
10590
  vec_sum_u128(__vector unsigned int __a, __vector unsigned int __b) {
8889
- return (__vector unsigned char)__builtin_s390_vsumqf(__a, __b);
10591
+ return (__vector unsigned char)(__vector unsigned __int128)
10592
+ __builtin_s390_vsumqf(__a, __b);
8890
10593
  }
8891
10594
 
10595
+ // This prototype is deprecated.
8892
10596
  static inline __ATTRS_o_ai __vector unsigned char
8893
10597
  vec_sum_u128(__vector unsigned long long __a, __vector unsigned long long __b) {
8894
- return (__vector unsigned char)__builtin_s390_vsumqg(__a, __b);
10598
+ return (__vector unsigned char)(__vector unsigned __int128)
10599
+ __builtin_s390_vsumqg(__a, __b);
8895
10600
  }
8896
10601
 
8897
10602
  /*-- vec_sum4 ---------------------------------------------------------------*/
@@ -8956,6 +10661,19 @@ vec_test_mask(__vector unsigned long long __a,
8956
10661
  (__vector unsigned char)__b);
8957
10662
  }
8958
10663
 
10664
+ static inline __ATTRS_o_ai int
10665
+ vec_test_mask(__vector signed __int128 __a, __vector unsigned __int128 __b) {
10666
+ return __builtin_s390_vtm((__vector unsigned char)__a,
10667
+ (__vector unsigned char)__b);
10668
+ }
10669
+
10670
+ static inline __ATTRS_o_ai int
10671
+ vec_test_mask(__vector unsigned __int128 __a,
10672
+ __vector unsigned __int128 __b) {
10673
+ return __builtin_s390_vtm((__vector unsigned char)__a,
10674
+ (__vector unsigned char)__b);
10675
+ }
10676
+
8959
10677
  #if __ARCH__ >= 12
8960
10678
  static inline __ATTRS_o_ai int
8961
10679
  vec_test_mask(__vector float __a, __vector unsigned int __b) {