@nativescript/ios 9.0.0-esm.3 → 9.0.0-napi-v8.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 (453) hide show
  1. package/framework/internal/XCFrameworks.zip +0 -0
  2. package/framework/internal/metadata-generator-arm64/bin/objc-metadata-generator +0 -0
  3. package/framework/internal/metadata-generator-x86_64/bin/objc-metadata-generator +0 -0
  4. package/package.json +1 -1
  5. package/framework/.build_env_vars.sh +0 -591
  6. package/framework/__PROJECT_NAME__.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  7. package/framework/__PROJECT_NAME__.xcodeproj/project.xcworkspace/xcuserdata/nstudio.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  8. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_builtin_vars.h +0 -121
  9. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_cmath.h +0 -512
  10. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_complex_builtins.h +0 -285
  11. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_device_functions.h +0 -1558
  12. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_intrinsics.h +0 -709
  13. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_libdevice_declares.h +0 -468
  14. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_math.h +0 -348
  15. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_math_forward_declares.h +0 -284
  16. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_runtime_wrapper.h +0 -503
  17. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_cuda_texture_intrinsics.h +0 -742
  18. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_hip_cmath.h +0 -842
  19. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_hip_libdevice_declares.h +0 -353
  20. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_hip_math.h +0 -1303
  21. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_hip_runtime_wrapper.h +0 -151
  22. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__clang_hip_stdlib.h +0 -43
  23. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stdarg___gnuc_va_list.h +0 -13
  24. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stdarg___va_copy.h +0 -12
  25. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stdarg_header_macro.h +0 -12
  26. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stdarg_va_arg.h +0 -24
  27. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stdarg_va_copy.h +0 -12
  28. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stdarg_va_list.h +0 -13
  29. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_header_macro.h +0 -12
  30. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_max_align_t.h +0 -27
  31. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_null.h +0 -29
  32. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_nullptr_t.h +0 -31
  33. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_offsetof.h +0 -17
  34. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_ptrdiff_t.h +0 -20
  35. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_rsize_t.h +0 -20
  36. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_size_t.h +0 -20
  37. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_unreachable.h +0 -21
  38. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_wchar_t.h +0 -28
  39. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__stddef_wint_t.h +0 -15
  40. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__wmmintrin_aes.h +0 -140
  41. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/__wmmintrin_pclmul.h +0 -48
  42. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/adxintrin.h +0 -227
  43. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/altivec.h +0 -19342
  44. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ammintrin.h +0 -183
  45. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/amxcomplexintrin.h +0 -169
  46. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/amxfp16intrin.h +0 -58
  47. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/amxintrin.h +0 -524
  48. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm64intr.h +0 -35
  49. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_acle.h +0 -782
  50. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_bf16.h +0 -20
  51. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_cde.h +0 -410
  52. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_cmse.h +0 -217
  53. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_fp16.h +0 -596
  54. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_mve.h +0 -19187
  55. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_neon.h +0 -69885
  56. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_neon_sve_bridge.h +0 -182
  57. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_sme_draft_spec_subject_to_change.h +0 -642
  58. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/arm_sve.h +0 -23950
  59. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/armintr.h +0 -31
  60. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx2intrin.h +0 -5263
  61. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512bf16intrin.h +0 -282
  62. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512bitalgintrin.h +0 -83
  63. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512bwintrin.h +0 -2024
  64. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512cdintrin.h +0 -123
  65. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512dqintrin.h +0 -1377
  66. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512erintrin.h +0 -271
  67. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512fintrin.h +0 -9775
  68. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512fp16intrin.h +0 -3350
  69. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512ifmaintrin.h +0 -68
  70. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512ifmavlintrin.h +0 -105
  71. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512pfintrin.h +0 -97
  72. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vbmi2intrin.h +0 -357
  73. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vbmiintrin.h +0 -105
  74. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vbmivlintrin.h +0 -188
  75. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlbf16intrin.h +0 -515
  76. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlbitalgintrin.h +0 -145
  77. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlbwintrin.h +0 -3161
  78. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlcdintrin.h +0 -225
  79. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vldqintrin.h +0 -1167
  80. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlfp16intrin.h +0 -2071
  81. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlintrin.h +0 -8431
  82. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlvbmi2intrin.h +0 -689
  83. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlvnniintrin.h +0 -304
  84. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vlvp2intersectintrin.h +0 -121
  85. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vnniintrin.h +0 -115
  86. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vp2intersectintrin.h +0 -77
  87. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vpopcntdqintrin.h +0 -54
  88. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avx512vpopcntdqvlintrin.h +0 -91
  89. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avxifmaintrin.h +0 -177
  90. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avxintrin.h +0 -5108
  91. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avxneconvertintrin.h +0 -484
  92. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avxvnniint16intrin.h +0 -473
  93. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avxvnniint8intrin.h +0 -471
  94. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/avxvnniintrin.h +0 -225
  95. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/bmi2intrin.h +0 -255
  96. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/bmiintrin.h +0 -431
  97. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/builtins.h +0 -16
  98. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cet.h +0 -66
  99. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cetintrin.h +0 -115
  100. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cldemoteintrin.h +0 -36
  101. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/clflushoptintrin.h +0 -36
  102. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/clwbintrin.h +0 -38
  103. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/clzerointrin.h +0 -38
  104. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cmpccxaddintrin.h +0 -70
  105. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cpuid.h +0 -331
  106. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/crc32intrin.h +0 -100
  107. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cuda_wrappers/algorithm +0 -116
  108. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cuda_wrappers/bits/basic_string.h +0 -9
  109. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cuda_wrappers/bits/basic_string.tcc +0 -9
  110. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cuda_wrappers/bits/shared_ptr_base.h +0 -9
  111. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cuda_wrappers/cmath +0 -90
  112. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cuda_wrappers/complex +0 -90
  113. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/cuda_wrappers/new +0 -106
  114. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/emmintrin.h +0 -4775
  115. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/enqcmdintrin.h +0 -63
  116. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/f16cintrin.h +0 -162
  117. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/float.h +0 -164
  118. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/fma4intrin.h +0 -218
  119. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/fmaintrin.h +0 -780
  120. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/fxsrintrin.h +0 -91
  121. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/gfniintrin.h +0 -194
  122. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/hexagon_circ_brev_intrinsics.h +0 -298
  123. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/hexagon_protos.h +0 -8439
  124. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/hexagon_types.h +0 -2621
  125. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/hresetintrin.h +0 -49
  126. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/htmintrin.h +0 -212
  127. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/htmxlintrin.h +0 -345
  128. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/hvx_hexagon_protos.h +0 -5183
  129. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ia32intrin.h +0 -441
  130. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/immintrin.h +0 -758
  131. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/intrin.h +0 -620
  132. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/inttypes.h +0 -97
  133. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/invpcidintrin.h +0 -23
  134. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/iso646.h +0 -27
  135. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/keylockerintrin.h +0 -530
  136. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/larchintrin.h +0 -234
  137. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/limits.h +0 -127
  138. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/llvm_libc_wrappers/ctype.h +0 -85
  139. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/llvm_libc_wrappers/inttypes.h +0 -34
  140. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/llvm_libc_wrappers/stdio.h +0 -34
  141. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/llvm_libc_wrappers/stdlib.h +0 -42
  142. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/llvm_libc_wrappers/string.h +0 -37
  143. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/lwpintrin.h +0 -136
  144. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/lzcntintrin.h +0 -104
  145. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/mm3dnow.h +0 -157
  146. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/mm_malloc.h +0 -67
  147. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/mmintrin.h +0 -1562
  148. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/module.modulemap +0 -326
  149. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/movdirintrin.h +0 -49
  150. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/msa.h +0 -573
  151. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/mwaitxintrin.h +0 -62
  152. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/nmmintrin.h +0 -20
  153. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/opencl-c-base.h +0 -820
  154. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/opencl-c.h +0 -18356
  155. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -105
  156. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/openmp_wrappers/cmath +0 -132
  157. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/openmp_wrappers/complex +0 -55
  158. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/openmp_wrappers/complex.h +0 -35
  159. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/openmp_wrappers/complex_cmath.h +0 -388
  160. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/openmp_wrappers/math.h +0 -61
  161. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/openmp_wrappers/new +0 -48
  162. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/pconfigintrin.h +0 -40
  163. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/pkuintrin.h +0 -34
  164. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/pmmintrin.h +0 -300
  165. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/popcntintrin.h +0 -59
  166. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/bmi2intrin.h +0 -134
  167. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/bmiintrin.h +0 -165
  168. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/emmintrin.h +0 -2269
  169. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/immintrin.h +0 -27
  170. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/mm_malloc.h +0 -45
  171. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/mmintrin.h +0 -1453
  172. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/pmmintrin.h +0 -145
  173. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/smmintrin.h +0 -663
  174. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/tmmintrin.h +0 -453
  175. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/x86gprintrin.h +0 -17
  176. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/x86intrin.h +0 -28
  177. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ppc_wrappers/xmmintrin.h +0 -1827
  178. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/prfchiintrin.h +0 -61
  179. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/prfchwintrin.h +0 -58
  180. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ptrauth.h +0 -354
  181. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/ptwriteintrin.h +0 -37
  182. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/raointintrin.h +0 -203
  183. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/rdpruintrin.h +0 -57
  184. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/rdseedintrin.h +0 -105
  185. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/riscv_ntlh.h +0 -28
  186. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/riscv_vector.h +0 -400
  187. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/rtmintrin.h +0 -45
  188. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/s390intrin.h +0 -25
  189. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/serializeintrin.h +0 -30
  190. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/sgxintrin.h +0 -60
  191. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/sha512intrin.h +0 -200
  192. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/shaintrin.h +0 -189
  193. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/sifive_vector.h +0 -16
  194. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/sm3intrin.h +0 -238
  195. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/sm4intrin.h +0 -269
  196. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/smmintrin.h +0 -2328
  197. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/stdalign.h +0 -26
  198. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/stdarg.h +0 -63
  199. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/stdatomic.h +0 -196
  200. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/stdbool.h +0 -34
  201. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/stddef.h +0 -116
  202. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/stdint.h +0 -979
  203. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/stdnoreturn.h +0 -29
  204. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/tbmintrin.h +0 -140
  205. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/tgmath.h +0 -1368
  206. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/tmmintrin.h +0 -775
  207. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/tsxldtrkintrin.h +0 -56
  208. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/uintrintrin.h +0 -157
  209. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/unwind.h +0 -332
  210. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/vadefs.h +0 -51
  211. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/vaesintrin.h +0 -85
  212. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/varargs.h +0 -12
  213. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/vecintrin.h +0 -11127
  214. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/velintrin.h +0 -71
  215. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/velintrin_approx.h +0 -120
  216. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/velintrin_gen.h +0 -1257
  217. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/vpclmulqdqintrin.h +0 -30
  218. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/waitpkgintrin.h +0 -42
  219. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/wasm_simd128.h +0 -1997
  220. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/wbnoinvdintrin.h +0 -24
  221. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/wmmintrin.h +0 -23
  222. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/x86gprintrin.h +0 -65
  223. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/x86intrin.h +0 -67
  224. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/xmmintrin.h +0 -3017
  225. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/xopintrin.h +0 -770
  226. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/xsavecintrin.h +0 -84
  227. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/xsaveintrin.h +0 -63
  228. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/xsaveoptintrin.h +0 -34
  229. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/xsavesintrin.h +0 -44
  230. package/framework/internal/metadata-generator-arm64/bin/lib/clang/17/include/xtestintrin.h +0 -27
  231. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_builtin_vars.h +0 -121
  232. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_cmath.h +0 -512
  233. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_complex_builtins.h +0 -285
  234. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_device_functions.h +0 -1558
  235. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_intrinsics.h +0 -709
  236. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_libdevice_declares.h +0 -468
  237. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_math.h +0 -348
  238. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_math_forward_declares.h +0 -284
  239. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_runtime_wrapper.h +0 -503
  240. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_cuda_texture_intrinsics.h +0 -742
  241. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_hip_cmath.h +0 -842
  242. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_hip_libdevice_declares.h +0 -353
  243. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_hip_math.h +0 -1303
  244. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_hip_runtime_wrapper.h +0 -151
  245. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__clang_hip_stdlib.h +0 -43
  246. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stdarg___gnuc_va_list.h +0 -13
  247. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stdarg___va_copy.h +0 -12
  248. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stdarg_header_macro.h +0 -12
  249. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stdarg_va_arg.h +0 -24
  250. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stdarg_va_copy.h +0 -12
  251. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stdarg_va_list.h +0 -13
  252. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_header_macro.h +0 -12
  253. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_max_align_t.h +0 -27
  254. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_null.h +0 -29
  255. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_nullptr_t.h +0 -31
  256. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_offsetof.h +0 -17
  257. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_ptrdiff_t.h +0 -20
  258. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_rsize_t.h +0 -20
  259. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_size_t.h +0 -20
  260. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_unreachable.h +0 -21
  261. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_wchar_t.h +0 -28
  262. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__stddef_wint_t.h +0 -15
  263. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__wmmintrin_aes.h +0 -140
  264. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/__wmmintrin_pclmul.h +0 -48
  265. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/adxintrin.h +0 -227
  266. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/altivec.h +0 -19342
  267. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ammintrin.h +0 -183
  268. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/amxcomplexintrin.h +0 -169
  269. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/amxfp16intrin.h +0 -58
  270. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/amxintrin.h +0 -524
  271. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm64intr.h +0 -35
  272. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_acle.h +0 -782
  273. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_bf16.h +0 -20
  274. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_cde.h +0 -410
  275. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_cmse.h +0 -217
  276. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_fp16.h +0 -596
  277. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_mve.h +0 -19187
  278. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_neon.h +0 -69885
  279. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_neon_sve_bridge.h +0 -182
  280. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_sme_draft_spec_subject_to_change.h +0 -642
  281. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/arm_sve.h +0 -23950
  282. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/armintr.h +0 -31
  283. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx2intrin.h +0 -5263
  284. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512bf16intrin.h +0 -282
  285. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512bitalgintrin.h +0 -83
  286. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512bwintrin.h +0 -2024
  287. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512cdintrin.h +0 -123
  288. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512dqintrin.h +0 -1377
  289. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512erintrin.h +0 -271
  290. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512fintrin.h +0 -9775
  291. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512fp16intrin.h +0 -3350
  292. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512ifmaintrin.h +0 -68
  293. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512ifmavlintrin.h +0 -105
  294. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512pfintrin.h +0 -97
  295. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vbmi2intrin.h +0 -357
  296. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vbmiintrin.h +0 -105
  297. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vbmivlintrin.h +0 -188
  298. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlbf16intrin.h +0 -515
  299. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlbitalgintrin.h +0 -145
  300. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlbwintrin.h +0 -3161
  301. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlcdintrin.h +0 -225
  302. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vldqintrin.h +0 -1167
  303. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlfp16intrin.h +0 -2071
  304. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlintrin.h +0 -8431
  305. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlvbmi2intrin.h +0 -689
  306. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlvnniintrin.h +0 -304
  307. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vlvp2intersectintrin.h +0 -121
  308. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vnniintrin.h +0 -115
  309. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vp2intersectintrin.h +0 -77
  310. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vpopcntdqintrin.h +0 -54
  311. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avx512vpopcntdqvlintrin.h +0 -91
  312. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avxifmaintrin.h +0 -177
  313. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avxintrin.h +0 -5108
  314. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avxneconvertintrin.h +0 -484
  315. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avxvnniint16intrin.h +0 -473
  316. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avxvnniint8intrin.h +0 -471
  317. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/avxvnniintrin.h +0 -225
  318. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/bmi2intrin.h +0 -255
  319. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/bmiintrin.h +0 -431
  320. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/builtins.h +0 -16
  321. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cet.h +0 -66
  322. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cetintrin.h +0 -115
  323. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cldemoteintrin.h +0 -36
  324. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/clflushoptintrin.h +0 -36
  325. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/clwbintrin.h +0 -38
  326. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/clzerointrin.h +0 -38
  327. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cmpccxaddintrin.h +0 -70
  328. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cpuid.h +0 -331
  329. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/crc32intrin.h +0 -100
  330. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cuda_wrappers/algorithm +0 -116
  331. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cuda_wrappers/bits/basic_string.h +0 -9
  332. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cuda_wrappers/bits/basic_string.tcc +0 -9
  333. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cuda_wrappers/bits/shared_ptr_base.h +0 -9
  334. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cuda_wrappers/cmath +0 -90
  335. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cuda_wrappers/complex +0 -90
  336. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/cuda_wrappers/new +0 -106
  337. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/emmintrin.h +0 -4775
  338. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/enqcmdintrin.h +0 -63
  339. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/f16cintrin.h +0 -162
  340. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/float.h +0 -164
  341. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/fma4intrin.h +0 -218
  342. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/fmaintrin.h +0 -780
  343. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/fxsrintrin.h +0 -91
  344. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/gfniintrin.h +0 -194
  345. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/hexagon_circ_brev_intrinsics.h +0 -298
  346. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/hexagon_protos.h +0 -8439
  347. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/hexagon_types.h +0 -2621
  348. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/hresetintrin.h +0 -49
  349. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/htmintrin.h +0 -212
  350. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/htmxlintrin.h +0 -345
  351. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/hvx_hexagon_protos.h +0 -5183
  352. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ia32intrin.h +0 -441
  353. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/immintrin.h +0 -758
  354. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/intrin.h +0 -620
  355. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/inttypes.h +0 -97
  356. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/invpcidintrin.h +0 -23
  357. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/iso646.h +0 -27
  358. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/keylockerintrin.h +0 -530
  359. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/larchintrin.h +0 -234
  360. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/limits.h +0 -127
  361. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/llvm_libc_wrappers/ctype.h +0 -85
  362. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/llvm_libc_wrappers/inttypes.h +0 -34
  363. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/llvm_libc_wrappers/stdio.h +0 -34
  364. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/llvm_libc_wrappers/stdlib.h +0 -42
  365. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/llvm_libc_wrappers/string.h +0 -37
  366. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/lwpintrin.h +0 -136
  367. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/lzcntintrin.h +0 -104
  368. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/mm3dnow.h +0 -157
  369. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/mm_malloc.h +0 -67
  370. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/mmintrin.h +0 -1562
  371. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/module.modulemap +0 -326
  372. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/movdirintrin.h +0 -49
  373. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/msa.h +0 -573
  374. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/mwaitxintrin.h +0 -62
  375. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/nmmintrin.h +0 -20
  376. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/opencl-c-base.h +0 -820
  377. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/opencl-c.h +0 -18356
  378. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -105
  379. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/openmp_wrappers/cmath +0 -132
  380. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/openmp_wrappers/complex +0 -55
  381. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/openmp_wrappers/complex.h +0 -35
  382. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/openmp_wrappers/complex_cmath.h +0 -388
  383. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/openmp_wrappers/math.h +0 -61
  384. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/openmp_wrappers/new +0 -48
  385. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/pconfigintrin.h +0 -40
  386. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/pkuintrin.h +0 -34
  387. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/pmmintrin.h +0 -300
  388. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/popcntintrin.h +0 -59
  389. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/bmi2intrin.h +0 -134
  390. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/bmiintrin.h +0 -165
  391. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/emmintrin.h +0 -2269
  392. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/immintrin.h +0 -27
  393. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/mm_malloc.h +0 -45
  394. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/mmintrin.h +0 -1453
  395. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/pmmintrin.h +0 -145
  396. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/smmintrin.h +0 -663
  397. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/tmmintrin.h +0 -453
  398. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/x86gprintrin.h +0 -17
  399. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/x86intrin.h +0 -28
  400. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ppc_wrappers/xmmintrin.h +0 -1827
  401. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/prfchiintrin.h +0 -61
  402. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/prfchwintrin.h +0 -58
  403. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ptrauth.h +0 -354
  404. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/ptwriteintrin.h +0 -37
  405. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/raointintrin.h +0 -203
  406. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/rdpruintrin.h +0 -57
  407. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/rdseedintrin.h +0 -105
  408. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/riscv_ntlh.h +0 -28
  409. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/riscv_vector.h +0 -400
  410. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/rtmintrin.h +0 -45
  411. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/s390intrin.h +0 -25
  412. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/serializeintrin.h +0 -30
  413. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/sgxintrin.h +0 -60
  414. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/sha512intrin.h +0 -200
  415. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/shaintrin.h +0 -189
  416. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/sifive_vector.h +0 -16
  417. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/sm3intrin.h +0 -238
  418. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/sm4intrin.h +0 -269
  419. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/smmintrin.h +0 -2328
  420. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/stdalign.h +0 -26
  421. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/stdarg.h +0 -63
  422. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/stdatomic.h +0 -196
  423. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/stdbool.h +0 -34
  424. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/stddef.h +0 -116
  425. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/stdint.h +0 -979
  426. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/stdnoreturn.h +0 -29
  427. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/tbmintrin.h +0 -140
  428. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/tgmath.h +0 -1368
  429. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/tmmintrin.h +0 -775
  430. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/tsxldtrkintrin.h +0 -56
  431. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/uintrintrin.h +0 -157
  432. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/unwind.h +0 -332
  433. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/vadefs.h +0 -51
  434. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/vaesintrin.h +0 -85
  435. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/varargs.h +0 -12
  436. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/vecintrin.h +0 -11127
  437. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/velintrin.h +0 -71
  438. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/velintrin_approx.h +0 -120
  439. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/velintrin_gen.h +0 -1257
  440. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/vpclmulqdqintrin.h +0 -30
  441. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/waitpkgintrin.h +0 -42
  442. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/wasm_simd128.h +0 -1997
  443. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/wbnoinvdintrin.h +0 -24
  444. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/wmmintrin.h +0 -23
  445. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/x86gprintrin.h +0 -65
  446. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/x86intrin.h +0 -67
  447. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/xmmintrin.h +0 -3017
  448. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/xopintrin.h +0 -770
  449. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/xsavecintrin.h +0 -84
  450. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/xsaveintrin.h +0 -63
  451. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/xsaveoptintrin.h +0 -34
  452. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/xsavesintrin.h +0 -44
  453. package/framework/internal/metadata-generator-x86_64/bin/lib/clang/17/include/xtestintrin.h +0 -27
@@ -1,2621 +0,0 @@
1
- /******************************************************************************/
2
- /* (c) 2020 Qualcomm Innovation Center, Inc. All rights reserved. */
3
- /* */
4
- /******************************************************************************/
5
- #ifndef HEXAGON_TYPES_H
6
- #define HEXAGON_TYPES_H
7
-
8
- #include <hexagon_protos.h>
9
-
10
- /* Hexagon names */
11
- #define HEXAGON_Vect HEXAGON_Vect64
12
- #define HEXAGON_V_GET_D HEXAGON_V64_GET_D
13
- #define HEXAGON_V_GET_UD HEXAGON_V64_GET_UD
14
- #define HEXAGON_V_GET_W0 HEXAGON_V64_GET_W0
15
- #define HEXAGON_V_GET_W1 HEXAGON_V64_GET_W1
16
- #define HEXAGON_V_GET_UW0 HEXAGON_V64_GET_UW0
17
- #define HEXAGON_V_GET_UW1 HEXAGON_V64_GET_UW1
18
- #define HEXAGON_V_GET_H0 HEXAGON_V64_GET_H0
19
- #define HEXAGON_V_GET_H1 HEXAGON_V64_GET_H1
20
- #define HEXAGON_V_GET_H2 HEXAGON_V64_GET_H2
21
- #define HEXAGON_V_GET_H3 HEXAGON_V64_GET_H3
22
- #define HEXAGON_V_GET_UH0 HEXAGON_V64_GET_UH0
23
- #define HEXAGON_V_GET_UH1 HEXAGON_V64_GET_UH1
24
- #define HEXAGON_V_GET_UH2 HEXAGON_V64_GET_UH2
25
- #define HEXAGON_V_GET_UH3 HEXAGON_V64_GET_UH3
26
- #define HEXAGON_V_GET_B0 HEXAGON_V64_GET_B0
27
- #define HEXAGON_V_GET_B1 HEXAGON_V64_GET_B1
28
- #define HEXAGON_V_GET_B2 HEXAGON_V64_GET_B2
29
- #define HEXAGON_V_GET_B3 HEXAGON_V64_GET_B3
30
- #define HEXAGON_V_GET_B4 HEXAGON_V64_GET_B4
31
- #define HEXAGON_V_GET_B5 HEXAGON_V64_GET_B5
32
- #define HEXAGON_V_GET_B6 HEXAGON_V64_GET_B6
33
- #define HEXAGON_V_GET_B7 HEXAGON_V64_GET_B7
34
- #define HEXAGON_V_GET_UB0 HEXAGON_V64_GET_UB0
35
- #define HEXAGON_V_GET_UB1 HEXAGON_V64_GET_UB1
36
- #define HEXAGON_V_GET_UB2 HEXAGON_V64_GET_UB2
37
- #define HEXAGON_V_GET_UB3 HEXAGON_V64_GET_UB3
38
- #define HEXAGON_V_GET_UB4 HEXAGON_V64_GET_UB4
39
- #define HEXAGON_V_GET_UB5 HEXAGON_V64_GET_UB5
40
- #define HEXAGON_V_GET_UB6 HEXAGON_V64_GET_UB6
41
- #define HEXAGON_V_GET_UB7 HEXAGON_V64_GET_UB7
42
- #define HEXAGON_V_PUT_D HEXAGON_V64_PUT_D
43
- #define HEXAGON_V_PUT_W0 HEXAGON_V64_PUT_W0
44
- #define HEXAGON_V_PUT_W1 HEXAGON_V64_PUT_W1
45
- #define HEXAGON_V_PUT_H0 HEXAGON_V64_PUT_H0
46
- #define HEXAGON_V_PUT_H1 HEXAGON_V64_PUT_H1
47
- #define HEXAGON_V_PUT_H2 HEXAGON_V64_PUT_H2
48
- #define HEXAGON_V_PUT_H3 HEXAGON_V64_PUT_H3
49
- #define HEXAGON_V_PUT_B0 HEXAGON_V64_PUT_B0
50
- #define HEXAGON_V_PUT_B1 HEXAGON_V64_PUT_B1
51
- #define HEXAGON_V_PUT_B2 HEXAGON_V64_PUT_B2
52
- #define HEXAGON_V_PUT_B3 HEXAGON_V64_PUT_B3
53
- #define HEXAGON_V_PUT_B4 HEXAGON_V64_PUT_B4
54
- #define HEXAGON_V_PUT_B5 HEXAGON_V64_PUT_B5
55
- #define HEXAGON_V_PUT_B6 HEXAGON_V64_PUT_B6
56
- #define HEXAGON_V_PUT_B7 HEXAGON_V64_PUT_B7
57
- #define HEXAGON_V_CREATE_D HEXAGON_V64_CREATE_D
58
- #define HEXAGON_V_CREATE_W HEXAGON_V64_CREATE_W
59
- #define HEXAGON_V_CREATE_H HEXAGON_V64_CREATE_H
60
- #define HEXAGON_V_CREATE_B HEXAGON_V64_CREATE_B
61
-
62
- #ifdef __cplusplus
63
- #define HEXAGON_VectC HEXAGON_Vect64C
64
- #endif /* __cplusplus */
65
-
66
- /* 64 Bit Vectors */
67
-
68
- typedef long long __attribute__((__may_alias__)) HEXAGON_Vect64;
69
-
70
- /* Extract doubleword macros */
71
-
72
- #define HEXAGON_V64_GET_D(v) (v)
73
- #define HEXAGON_V64_GET_UD(v) ((unsigned long long)(v))
74
-
75
- /* Extract word macros */
76
-
77
- #define HEXAGON_V64_GET_W0(v) \
78
- __extension__({ \
79
- union { \
80
- long long d; \
81
- int w[2]; \
82
- } _HEXAGON_V64_internal_union; \
83
- _HEXAGON_V64_internal_union.d = (v); \
84
- _HEXAGON_V64_internal_union.w[0]; \
85
- })
86
- #define HEXAGON_V64_GET_W1(v) \
87
- __extension__({ \
88
- union { \
89
- long long d; \
90
- int w[2]; \
91
- } _HEXAGON_V64_internal_union; \
92
- _HEXAGON_V64_internal_union.d = (v); \
93
- _HEXAGON_V64_internal_union.w[1]; \
94
- })
95
- #define HEXAGON_V64_GET_UW0(v) \
96
- __extension__({ \
97
- union { \
98
- long long d; \
99
- unsigned int uw[2]; \
100
- } _HEXAGON_V64_internal_union; \
101
- _HEXAGON_V64_internal_union.d = (v); \
102
- _HEXAGON_V64_internal_union.uw[0]; \
103
- })
104
- #define HEXAGON_V64_GET_UW1(v) \
105
- __extension__({ \
106
- union { \
107
- long long d; \
108
- unsigned int uw[2]; \
109
- } _HEXAGON_V64_internal_union; \
110
- _HEXAGON_V64_internal_union.d = (v); \
111
- _HEXAGON_V64_internal_union.uw[1]; \
112
- })
113
-
114
- /* Extract half word macros */
115
-
116
- #define HEXAGON_V64_GET_H0(v) \
117
- __extension__({ \
118
- union { \
119
- long long d; \
120
- short h[4]; \
121
- } _HEXAGON_V64_internal_union; \
122
- _HEXAGON_V64_internal_union.d = (v); \
123
- _HEXAGON_V64_internal_union.h[0]; \
124
- })
125
- #define HEXAGON_V64_GET_H1(v) \
126
- __extension__({ \
127
- union { \
128
- long long d; \
129
- short h[4]; \
130
- } _HEXAGON_V64_internal_union; \
131
- _HEXAGON_V64_internal_union.d = (v); \
132
- _HEXAGON_V64_internal_union.h[1]; \
133
- })
134
- #define HEXAGON_V64_GET_H2(v) \
135
- __extension__({ \
136
- union { \
137
- long long d; \
138
- short h[4]; \
139
- } _HEXAGON_V64_internal_union; \
140
- _HEXAGON_V64_internal_union.d = (v); \
141
- _HEXAGON_V64_internal_union.h[2]; \
142
- })
143
- #define HEXAGON_V64_GET_H3(v) \
144
- __extension__({ \
145
- union { \
146
- long long d; \
147
- short h[4]; \
148
- } _HEXAGON_V64_internal_union; \
149
- _HEXAGON_V64_internal_union.d = (v); \
150
- _HEXAGON_V64_internal_union.h[3]; \
151
- })
152
- #define HEXAGON_V64_GET_UH0(v) \
153
- __extension__({ \
154
- union { \
155
- long long d; \
156
- unsigned short uh[4]; \
157
- } _HEXAGON_V64_internal_union; \
158
- _HEXAGON_V64_internal_union.d = (v); \
159
- _HEXAGON_V64_internal_union.uh[0]; \
160
- })
161
- #define HEXAGON_V64_GET_UH1(v) \
162
- __extension__({ \
163
- union { \
164
- long long d; \
165
- unsigned short uh[4]; \
166
- } _HEXAGON_V64_internal_union; \
167
- _HEXAGON_V64_internal_union.d = (v); \
168
- _HEXAGON_V64_internal_union.uh[1]; \
169
- })
170
- #define HEXAGON_V64_GET_UH2(v) \
171
- __extension__({ \
172
- union { \
173
- long long d; \
174
- unsigned short uh[4]; \
175
- } _HEXAGON_V64_internal_union; \
176
- _HEXAGON_V64_internal_union.d = (v); \
177
- _HEXAGON_V64_internal_union.uh[2]; \
178
- })
179
- #define HEXAGON_V64_GET_UH3(v) \
180
- __extension__({ \
181
- union { \
182
- long long d; \
183
- unsigned short uh[4]; \
184
- } _HEXAGON_V64_internal_union; \
185
- _HEXAGON_V64_internal_union.d = (v); \
186
- _HEXAGON_V64_internal_union.uh[3]; \
187
- })
188
-
189
- /* Extract byte macros */
190
-
191
- #define HEXAGON_V64_GET_B0(v) \
192
- __extension__({ \
193
- union { \
194
- long long d; \
195
- signed char b[8]; \
196
- } _HEXAGON_V64_internal_union; \
197
- _HEXAGON_V64_internal_union.d = (v); \
198
- _HEXAGON_V64_internal_union.b[0]; \
199
- })
200
- #define HEXAGON_V64_GET_B1(v) \
201
- __extension__({ \
202
- union { \
203
- long long d; \
204
- signed char b[8]; \
205
- } _HEXAGON_V64_internal_union; \
206
- _HEXAGON_V64_internal_union.d = (v); \
207
- _HEXAGON_V64_internal_union.b[1]; \
208
- })
209
- #define HEXAGON_V64_GET_B2(v) \
210
- __extension__({ \
211
- union { \
212
- long long d; \
213
- signed char b[8]; \
214
- } _HEXAGON_V64_internal_union; \
215
- _HEXAGON_V64_internal_union.d = (v); \
216
- _HEXAGON_V64_internal_union.b[2]; \
217
- })
218
- #define HEXAGON_V64_GET_B3(v) \
219
- __extension__({ \
220
- union { \
221
- long long d; \
222
- signed char b[8]; \
223
- } _HEXAGON_V64_internal_union; \
224
- _HEXAGON_V64_internal_union.d = (v); \
225
- _HEXAGON_V64_internal_union.b[3]; \
226
- })
227
- #define HEXAGON_V64_GET_B4(v) \
228
- __extension__({ \
229
- union { \
230
- long long d; \
231
- signed char b[8]; \
232
- } _HEXAGON_V64_internal_union; \
233
- _HEXAGON_V64_internal_union.d = (v); \
234
- _HEXAGON_V64_internal_union.b[4]; \
235
- })
236
- #define HEXAGON_V64_GET_B5(v) \
237
- __extension__({ \
238
- union { \
239
- long long d; \
240
- signed char b[8]; \
241
- } _HEXAGON_V64_internal_union; \
242
- _HEXAGON_V64_internal_union.d = (v); \
243
- _HEXAGON_V64_internal_union.b[5]; \
244
- })
245
- #define HEXAGON_V64_GET_B6(v) \
246
- __extension__({ \
247
- union { \
248
- long long d; \
249
- signed char b[8]; \
250
- } _HEXAGON_V64_internal_union; \
251
- _HEXAGON_V64_internal_union.d = (v); \
252
- _HEXAGON_V64_internal_union.b[6]; \
253
- })
254
- #define HEXAGON_V64_GET_B7(v) \
255
- __extension__({ \
256
- union { \
257
- long long d; \
258
- signed char b[8]; \
259
- } _HEXAGON_V64_internal_union; \
260
- _HEXAGON_V64_internal_union.d = (v); \
261
- _HEXAGON_V64_internal_union.b[7]; \
262
- })
263
- #define HEXAGON_V64_GET_UB0(v) \
264
- __extension__({ \
265
- union { \
266
- long long d; \
267
- unsigned char ub[8]; \
268
- } _HEXAGON_V64_internal_union; \
269
- _HEXAGON_V64_internal_union.d = (v); \
270
- _HEXAGON_V64_internal_union.ub[0]; \
271
- })
272
- #define HEXAGON_V64_GET_UB1(v) \
273
- __extension__({ \
274
- union { \
275
- long long d; \
276
- unsigned char ub[8]; \
277
- } _HEXAGON_V64_internal_union; \
278
- _HEXAGON_V64_internal_union.d = (v); \
279
- _HEXAGON_V64_internal_union.ub[1]; \
280
- })
281
- #define HEXAGON_V64_GET_UB2(v) \
282
- __extension__({ \
283
- union { \
284
- long long d; \
285
- unsigned char ub[8]; \
286
- } _HEXAGON_V64_internal_union; \
287
- _HEXAGON_V64_internal_union.d = (v); \
288
- _HEXAGON_V64_internal_union.ub[2]; \
289
- })
290
- #define HEXAGON_V64_GET_UB3(v) \
291
- __extension__({ \
292
- union { \
293
- long long d; \
294
- unsigned char ub[8]; \
295
- } _HEXAGON_V64_internal_union; \
296
- _HEXAGON_V64_internal_union.d = (v); \
297
- _HEXAGON_V64_internal_union.ub[3]; \
298
- })
299
- #define HEXAGON_V64_GET_UB4(v) \
300
- __extension__({ \
301
- union { \
302
- long long d; \
303
- unsigned char ub[8]; \
304
- } _HEXAGON_V64_internal_union; \
305
- _HEXAGON_V64_internal_union.d = (v); \
306
- _HEXAGON_V64_internal_union.ub[4]; \
307
- })
308
- #define HEXAGON_V64_GET_UB5(v) \
309
- __extension__({ \
310
- union { \
311
- long long d; \
312
- unsigned char ub[8]; \
313
- } _HEXAGON_V64_internal_union; \
314
- _HEXAGON_V64_internal_union.d = (v); \
315
- _HEXAGON_V64_internal_union.ub[5]; \
316
- })
317
- #define HEXAGON_V64_GET_UB6(v) \
318
- __extension__({ \
319
- union { \
320
- long long d; \
321
- unsigned char ub[8]; \
322
- } _HEXAGON_V64_internal_union; \
323
- _HEXAGON_V64_internal_union.d = (v); \
324
- _HEXAGON_V64_internal_union.ub[6]; \
325
- })
326
- #define HEXAGON_V64_GET_UB7(v) \
327
- __extension__({ \
328
- union { \
329
- long long d; \
330
- unsigned char ub[8]; \
331
- } _HEXAGON_V64_internal_union; \
332
- _HEXAGON_V64_internal_union.d = (v); \
333
- _HEXAGON_V64_internal_union.ub[7]; \
334
- })
335
-
336
- /* NOTE: All set macros return a HEXAGON_Vect64 type */
337
-
338
- /* Set doubleword macro */
339
-
340
- #define HEXAGON_V64_PUT_D(v, new) (new)
341
-
342
- /* Set word macros */
343
-
344
- #ifdef __hexagon__
345
-
346
- #define HEXAGON_V64_PUT_W0(v, new) \
347
- __extension__({ \
348
- union { \
349
- long long d; \
350
- int w[2]; \
351
- } _HEXAGON_V64_internal_union; \
352
- _HEXAGON_V64_internal_union.d = (v); \
353
- _HEXAGON_V64_internal_union.w[0] = (new); \
354
- _HEXAGON_V64_internal_union.d; \
355
- })
356
- #define HEXAGON_V64_PUT_W1(v, new) \
357
- __extension__({ \
358
- union { \
359
- long long d; \
360
- int w[2]; \
361
- } _HEXAGON_V64_internal_union; \
362
- _HEXAGON_V64_internal_union.d = (v); \
363
- _HEXAGON_V64_internal_union.w[1] = (new); \
364
- _HEXAGON_V64_internal_union.d; \
365
- })
366
-
367
- #else /* !__hexagon__ */
368
-
369
- #define HEXAGON_V64_PUT_W0(v, new) \
370
- (((v) & 0xffffffff00000000LL) | ((HEXAGON_Vect64)((unsigned int)(new))))
371
- #define HEXAGON_V64_PUT_W1(v, new) \
372
- (((v) & 0x00000000ffffffffLL) | (((HEXAGON_Vect64)(new)) << 32LL))
373
-
374
- #endif /* !__hexagon__ */
375
-
376
- /* Set half word macros */
377
-
378
- #ifdef __hexagon__
379
-
380
- #define HEXAGON_V64_PUT_H0(v, new) \
381
- __extension__({ \
382
- union { \
383
- long long d; \
384
- short h[4]; \
385
- } _HEXAGON_V64_internal_union; \
386
- _HEXAGON_V64_internal_union.d = (v); \
387
- _HEXAGON_V64_internal_union.h[0] = (new); \
388
- _HEXAGON_V64_internal_union.d; \
389
- })
390
- #define HEXAGON_V64_PUT_H1(v, new) \
391
- __extension__({ \
392
- union { \
393
- long long d; \
394
- short h[4]; \
395
- } _HEXAGON_V64_internal_union; \
396
- _HEXAGON_V64_internal_union.d = (v); \
397
- _HEXAGON_V64_internal_union.h[1] = (new); \
398
- _HEXAGON_V64_internal_union.d; \
399
- })
400
- #define HEXAGON_V64_PUT_H2(v, new) \
401
- __extension__({ \
402
- union { \
403
- long long d; \
404
- short h[4]; \
405
- } _HEXAGON_V64_internal_union; \
406
- _HEXAGON_V64_internal_union.d = (v); \
407
- _HEXAGON_V64_internal_union.h[2] = (new); \
408
- _HEXAGON_V64_internal_union.d; \
409
- })
410
- #define HEXAGON_V64_PUT_H3(v, new) \
411
- __extension__({ \
412
- union { \
413
- long long d; \
414
- short h[4]; \
415
- } _HEXAGON_V64_internal_union; \
416
- _HEXAGON_V64_internal_union.d = (v); \
417
- _HEXAGON_V64_internal_union.h[3] = (new); \
418
- _HEXAGON_V64_internal_union.d; \
419
- })
420
-
421
- #else /* !__hexagon__ */
422
-
423
- #define HEXAGON_V64_PUT_H0(v, new) \
424
- (((v) & 0xffffffffffff0000LL) | ((HEXAGON_Vect64)((unsigned short)(new))))
425
- #define HEXAGON_V64_PUT_H1(v, new) \
426
- (((v) & 0xffffffff0000ffffLL) | (((HEXAGON_Vect64)((unsigned short)(new))) << 16LL))
427
- #define HEXAGON_V64_PUT_H2(v, new) \
428
- (((v) & 0xffff0000ffffffffLL) | (((HEXAGON_Vect64)((unsigned short)(new))) << 32LL))
429
- #define HEXAGON_V64_PUT_H3(v, new) \
430
- (((v) & 0x0000ffffffffffffLL) | (((HEXAGON_Vect64)(new)) << 48LL))
431
-
432
- #endif /* !__hexagon__ */
433
-
434
- /* Set byte macros */
435
-
436
- #ifdef __hexagon__
437
-
438
- #define HEXAGON_V64_PUT_B0(v, new) \
439
- __extension__({ \
440
- union { \
441
- long long d; \
442
- char b[8]; \
443
- } _HEXAGON_V64_internal_union; \
444
- _HEXAGON_V64_internal_union.d = (v); \
445
- _HEXAGON_V64_internal_union.b[0] = (new); \
446
- _HEXAGON_V64_internal_union.d; \
447
- })
448
- #define HEXAGON_V64_PUT_B1(v, new) \
449
- __extension__({ \
450
- union { \
451
- long long d; \
452
- char b[8]; \
453
- } _HEXAGON_V64_internal_union; \
454
- _HEXAGON_V64_internal_union.d = (v); \
455
- _HEXAGON_V64_internal_union.b[1] = (new); \
456
- _HEXAGON_V64_internal_union.d; \
457
- })
458
- #define HEXAGON_V64_PUT_B2(v, new) \
459
- __extension__({ \
460
- union { \
461
- long long d; \
462
- char b[8]; \
463
- } _HEXAGON_V64_internal_union; \
464
- _HEXAGON_V64_internal_union.d = (v); \
465
- _HEXAGON_V64_internal_union.b[2] = (new); \
466
- _HEXAGON_V64_internal_union.d; \
467
- })
468
- #define HEXAGON_V64_PUT_B3(v, new) \
469
- __extension__({ \
470
- union { \
471
- long long d; \
472
- char b[8]; \
473
- } _HEXAGON_V64_internal_union; \
474
- _HEXAGON_V64_internal_union.d = (v); \
475
- _HEXAGON_V64_internal_union.b[3] = (new); \
476
- _HEXAGON_V64_internal_union.d; \
477
- })
478
- #define HEXAGON_V64_PUT_B4(v, new) \
479
- __extension__({ \
480
- union { \
481
- long long d; \
482
- char b[8]; \
483
- } _HEXAGON_V64_internal_union; \
484
- _HEXAGON_V64_internal_union.d = (v); \
485
- _HEXAGON_V64_internal_union.b[4] = (new); \
486
- _HEXAGON_V64_internal_union.d; \
487
- })
488
- #define HEXAGON_V64_PUT_B5(v, new) \
489
- __extension__({ \
490
- union { \
491
- long long d; \
492
- char b[8]; \
493
- } _HEXAGON_V64_internal_union; \
494
- _HEXAGON_V64_internal_union.d = (v); \
495
- _HEXAGON_V64_internal_union.b[5] = (new); \
496
- _HEXAGON_V64_internal_union.d; \
497
- })
498
- #define HEXAGON_V64_PUT_B6(v, new) \
499
- __extension__({ \
500
- union { \
501
- long long d; \
502
- char b[8]; \
503
- } _HEXAGON_V64_internal_union; \
504
- _HEXAGON_V64_internal_union.d = (v); \
505
- _HEXAGON_V64_internal_union.b[6] = (new); \
506
- _HEXAGON_V64_internal_union.d; \
507
- })
508
- #define HEXAGON_V64_PUT_B7(v, new) \
509
- __extension__({ \
510
- union { \
511
- long long d; \
512
- char b[8]; \
513
- } _HEXAGON_V64_internal_union; \
514
- _HEXAGON_V64_internal_union.d = (v); \
515
- _HEXAGON_V64_internal_union.b[7] = (new); \
516
- _HEXAGON_V64_internal_union.d; \
517
- })
518
-
519
- #else /* !__hexagon__ */
520
-
521
- #define HEXAGON_V64_PUT_B0(v, new) \
522
- (((v) & 0xffffffffffffff00LL) | ((HEXAGON_Vect64)((unsigned char)(new))))
523
- #define HEXAGON_V64_PUT_B1(v, new) \
524
- (((v) & 0xffffffffffff00ffLL) | (((HEXAGON_Vect64)((unsigned char)(new))) << 8LL))
525
- #define HEXAGON_V64_PUT_B2(v, new) \
526
- (((v) & 0xffffffffff00ffffLL) | (((HEXAGON_Vect64)((unsigned char)(new))) << 16LL))
527
- #define HEXAGON_V64_PUT_B3(v, new) \
528
- (((v) & 0xffffffff00ffffffLL) | (((HEXAGON_Vect64)((unsigned char)(new))) << 24LL))
529
- #define HEXAGON_V64_PUT_B4(v, new) \
530
- (((v) & 0xffffff00ffffffffLL) | (((HEXAGON_Vect64)((unsigned char)(new))) << 32LL))
531
- #define HEXAGON_V64_PUT_B5(v, new) \
532
- (((v) & 0xffff00ffffffffffLL) | (((HEXAGON_Vect64)((unsigned char)(new))) << 40LL))
533
- #define HEXAGON_V64_PUT_B6(v, new) \
534
- (((v) & 0xff00ffffffffffffLL) | (((HEXAGON_Vect64)((unsigned char)(new))) << 48LL))
535
- #define HEXAGON_V64_PUT_B7(v, new) \
536
- (((v) & 0x00ffffffffffffffLL) | (((HEXAGON_Vect64)(new)) << 56LL))
537
-
538
- #endif /* !__hexagon__ */
539
-
540
- /* NOTE: All create macros return a HEXAGON_Vect64 type */
541
-
542
- /* Create from a doubleword */
543
-
544
- #define HEXAGON_V64_CREATE_D(d) (d)
545
-
546
- /* Create from words */
547
-
548
- #ifdef __hexagon__
549
-
550
- #define HEXAGON_V64_CREATE_W(w1, w0) \
551
- __extension__({ \
552
- union { \
553
- long long d; \
554
- int w[2]; \
555
- } _HEXAGON_V64_internal_union; \
556
- _HEXAGON_V64_internal_union.w[0] = (w0); \
557
- _HEXAGON_V64_internal_union.w[1] = (w1); \
558
- _HEXAGON_V64_internal_union.d; \
559
- })
560
-
561
- #else /* !__hexagon__ */
562
-
563
- #define HEXAGON_V64_CREATE_W(w1, w0) \
564
- ((((HEXAGON_Vect64)(w1)) << 32LL) | ((HEXAGON_Vect64)((w0) & 0xffffffff)))
565
-
566
- #endif /* !__hexagon__ */
567
-
568
- /* Create from half words */
569
-
570
- #ifdef __hexagon__
571
-
572
- #define HEXAGON_V64_CREATE_H(h3, h2, h1, h0) \
573
- __extension__({ \
574
- union { \
575
- long long d; \
576
- short h[4]; \
577
- } _HEXAGON_V64_internal_union; \
578
- _HEXAGON_V64_internal_union.h[0] = (h0); \
579
- _HEXAGON_V64_internal_union.h[1] = (h1); \
580
- _HEXAGON_V64_internal_union.h[2] = (h2); \
581
- _HEXAGON_V64_internal_union.h[3] = (h3); \
582
- _HEXAGON_V64_internal_union.d; \
583
- })
584
-
585
- #else /* !__hexagon__ */
586
-
587
- #define HEXAGON_V64_CREATE_H(h3, h2, h1, h0) \
588
- ((((HEXAGON_Vect64)(h3)) << 48LL) | (((HEXAGON_Vect64)((h2) & 0xffff)) << 32LL) | \
589
- (((HEXAGON_Vect64)((h1) & 0xffff)) << 16LL) | ((HEXAGON_Vect64)((h0) & 0xffff)))
590
-
591
- #endif /* !__hexagon__ */
592
-
593
- /* Create from bytes */
594
-
595
- #ifdef __hexagon__
596
-
597
- #define HEXAGON_V64_CREATE_B(b7, b6, b5, b4, b3, b2, b1, b0) \
598
- __extension__({ \
599
- union { \
600
- long long d; \
601
- char b[8]; \
602
- } _HEXAGON_V64_internal_union; \
603
- _HEXAGON_V64_internal_union.b[0] = (b0); \
604
- _HEXAGON_V64_internal_union.b[1] = (b1); \
605
- _HEXAGON_V64_internal_union.b[2] = (b2); \
606
- _HEXAGON_V64_internal_union.b[3] = (b3); \
607
- _HEXAGON_V64_internal_union.b[4] = (b4); \
608
- _HEXAGON_V64_internal_union.b[5] = (b5); \
609
- _HEXAGON_V64_internal_union.b[6] = (b6); \
610
- _HEXAGON_V64_internal_union.b[7] = (b7); \
611
- _HEXAGON_V64_internal_union.d; \
612
- })
613
-
614
- #else /* !__hexagon__ */
615
-
616
- #define HEXAGON_V64_CREATE_B(b7, b6, b5, b4, b3, b2, b1, b0) \
617
- ((((HEXAGON_Vect64)(b7)) << 56LL) | (((HEXAGON_Vect64)((b6) & 0xff)) << 48LL) | \
618
- (((HEXAGON_Vect64)((b5) & 0xff)) << 40LL) | (((HEXAGON_Vect64)((b4) & 0xff)) << 32LL) | \
619
- (((HEXAGON_Vect64)((b3) & 0xff)) << 24LL) | (((HEXAGON_Vect64)((b2) & 0xff)) << 16LL) | \
620
- (((HEXAGON_Vect64)((b1) & 0xff)) << 8LL) | ((HEXAGON_Vect64)((b0) & 0xff)))
621
-
622
- #endif /* !__hexagon__ */
623
-
624
- #ifdef __cplusplus
625
-
626
- class HEXAGON_Vect64C {
627
- public:
628
- // Constructors
629
- HEXAGON_Vect64C(long long d = 0) : data(d) {};
630
- HEXAGON_Vect64C(int w1, int w0) : data(HEXAGON_V64_CREATE_W(w1, w0)) {};
631
- HEXAGON_Vect64C(short h3, short h2, short h1, short h0)
632
- : data(HEXAGON_V64_CREATE_H(h3, h2, h1, h0)) {};
633
- HEXAGON_Vect64C(signed char b7, signed char b6, signed char b5, signed char b4,
634
- signed char b3, signed char b2, signed char b1, signed char b0)
635
- : data(HEXAGON_V64_CREATE_B(b7, b6, b5, b4, b3, b2, b1, b0)) {};
636
- HEXAGON_Vect64C(const HEXAGON_Vect64C &v) : data(v.data) {};
637
-
638
- HEXAGON_Vect64C &operator=(const HEXAGON_Vect64C &v) {
639
- data = v.data;
640
- return *this;
641
- };
642
-
643
- operator long long() {
644
- return data;
645
- };
646
-
647
- // Extract doubleword methods
648
- long long D(void) {
649
- return HEXAGON_V64_GET_D(data);
650
- };
651
- unsigned long long UD(void) {
652
- return HEXAGON_V64_GET_UD(data);
653
- };
654
-
655
- // Extract word methods
656
- int W0(void) {
657
- return HEXAGON_V64_GET_W0(data);
658
- };
659
- int W1(void) {
660
- return HEXAGON_V64_GET_W1(data);
661
- };
662
- unsigned int UW0(void) {
663
- return HEXAGON_V64_GET_UW0(data);
664
- };
665
- unsigned int UW1(void) {
666
- return HEXAGON_V64_GET_UW1(data);
667
- };
668
-
669
- // Extract half word methods
670
- short H0(void) {
671
- return HEXAGON_V64_GET_H0(data);
672
- };
673
- short H1(void) {
674
- return HEXAGON_V64_GET_H1(data);
675
- };
676
- short H2(void) {
677
- return HEXAGON_V64_GET_H2(data);
678
- };
679
- short H3(void) {
680
- return HEXAGON_V64_GET_H3(data);
681
- };
682
- unsigned short UH0(void) {
683
- return HEXAGON_V64_GET_UH0(data);
684
- };
685
- unsigned short UH1(void) {
686
- return HEXAGON_V64_GET_UH1(data);
687
- };
688
- unsigned short UH2(void) {
689
- return HEXAGON_V64_GET_UH2(data);
690
- };
691
- unsigned short UH3(void) {
692
- return HEXAGON_V64_GET_UH3(data);
693
- };
694
-
695
- // Extract byte methods
696
- signed char B0(void) {
697
- return HEXAGON_V64_GET_B0(data);
698
- };
699
- signed char B1(void) {
700
- return HEXAGON_V64_GET_B1(data);
701
- };
702
- signed char B2(void) {
703
- return HEXAGON_V64_GET_B2(data);
704
- };
705
- signed char B3(void) {
706
- return HEXAGON_V64_GET_B3(data);
707
- };
708
- signed char B4(void) {
709
- return HEXAGON_V64_GET_B4(data);
710
- };
711
- signed char B5(void) {
712
- return HEXAGON_V64_GET_B5(data);
713
- };
714
- signed char B6(void) {
715
- return HEXAGON_V64_GET_B6(data);
716
- };
717
- signed char B7(void) {
718
- return HEXAGON_V64_GET_B7(data);
719
- };
720
- unsigned char UB0(void) {
721
- return HEXAGON_V64_GET_UB0(data);
722
- };
723
- unsigned char UB1(void) {
724
- return HEXAGON_V64_GET_UB1(data);
725
- };
726
- unsigned char UB2(void) {
727
- return HEXAGON_V64_GET_UB2(data);
728
- };
729
- unsigned char UB3(void) {
730
- return HEXAGON_V64_GET_UB3(data);
731
- };
732
- unsigned char UB4(void) {
733
- return HEXAGON_V64_GET_UB4(data);
734
- };
735
- unsigned char UB5(void) {
736
- return HEXAGON_V64_GET_UB5(data);
737
- };
738
- unsigned char UB6(void) {
739
- return HEXAGON_V64_GET_UB6(data);
740
- };
741
- unsigned char UB7(void) {
742
- return HEXAGON_V64_GET_UB7(data);
743
- };
744
-
745
- // NOTE: All set methods return a HEXAGON_Vect64C type
746
-
747
- // Set doubleword method
748
- HEXAGON_Vect64C D(long long d) {
749
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_D(data, d));
750
- };
751
-
752
- // Set word methods
753
- HEXAGON_Vect64C W0(int w) {
754
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_W0(data, w));
755
- };
756
- HEXAGON_Vect64C W1(int w) {
757
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_W1(data, w));
758
- };
759
-
760
- // Set half word methods
761
- HEXAGON_Vect64C H0(short h) {
762
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_H0(data, h));
763
- };
764
- HEXAGON_Vect64C H1(short h) {
765
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_H1(data, h));
766
- };
767
- HEXAGON_Vect64C H2(short h) {
768
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_H2(data, h));
769
- };
770
- HEXAGON_Vect64C H3(short h) {
771
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_H3(data, h));
772
- };
773
-
774
- // Set byte methods
775
- HEXAGON_Vect64C B0(signed char b) {
776
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B0(data, b));
777
- };
778
- HEXAGON_Vect64C B1(signed char b) {
779
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B1(data, b));
780
- };
781
- HEXAGON_Vect64C B2(signed char b) {
782
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B2(data, b));
783
- };
784
- HEXAGON_Vect64C B3(signed char b) {
785
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B3(data, b));
786
- };
787
- HEXAGON_Vect64C B4(signed char b) {
788
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B4(data, b));
789
- };
790
- HEXAGON_Vect64C B5(signed char b) {
791
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B5(data, b));
792
- };
793
- HEXAGON_Vect64C B6(signed char b) {
794
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B6(data, b));
795
- };
796
- HEXAGON_Vect64C B7(signed char b) {
797
- return HEXAGON_Vect64C(HEXAGON_V64_PUT_B7(data, b));
798
- };
799
-
800
- private:
801
- long long data;
802
- };
803
-
804
- #endif /* __cplusplus */
805
-
806
- /* 32 Bit Vectors */
807
-
808
- typedef int HEXAGON_Vect32;
809
-
810
- /* Extract word macros */
811
-
812
- #define HEXAGON_V32_GET_W(v) (v)
813
- #define HEXAGON_V32_GET_UW(v) ((unsigned int)(v))
814
-
815
- /* Extract half word macros */
816
-
817
- #define HEXAGON_V32_GET_H0(v) \
818
- __extension__({ \
819
- union { \
820
- int w; \
821
- short h[2]; \
822
- } _HEXAGON_V32_internal_union; \
823
- _HEXAGON_V32_internal_union.w = (v); \
824
- _HEXAGON_V32_internal_union.h[0]; \
825
- })
826
- #define HEXAGON_V32_GET_H1(v) \
827
- __extension__({ \
828
- union { \
829
- int w; \
830
- short h[2]; \
831
- } _HEXAGON_V32_internal_union; \
832
- _HEXAGON_V32_internal_union.w = (v); \
833
- _HEXAGON_V32_internal_union.h[1]; \
834
- })
835
- #define HEXAGON_V32_GET_UH0(v) \
836
- __extension__({ \
837
- union { \
838
- int w; \
839
- unsigned short uh[2]; \
840
- } _HEXAGON_V32_internal_union; \
841
- _HEXAGON_V32_internal_union.w = (v); \
842
- _HEXAGON_V32_internal_union.uh[0]; \
843
- })
844
- #define HEXAGON_V32_GET_UH1(v) \
845
- __extension__({ \
846
- union { \
847
- int w; \
848
- unsigned short uh[2]; \
849
- } _HEXAGON_V32_internal_union; \
850
- _HEXAGON_V32_internal_union.w = (v); \
851
- _HEXAGON_V32_internal_union.uh[1]; \
852
- })
853
-
854
- /* Extract byte macros */
855
-
856
- #define HEXAGON_V32_GET_B0(v) \
857
- __extension__({ \
858
- union { \
859
- int w; \
860
- signed char b[4]; \
861
- } _HEXAGON_V32_internal_union; \
862
- _HEXAGON_V32_internal_union.w = (v); \
863
- _HEXAGON_V32_internal_union.b[0]; \
864
- })
865
- #define HEXAGON_V32_GET_B1(v) \
866
- __extension__({ \
867
- union { \
868
- int w; \
869
- signed char b[4]; \
870
- } _HEXAGON_V32_internal_union; \
871
- _HEXAGON_V32_internal_union.w = (v); \
872
- _HEXAGON_V32_internal_union.b[1]; \
873
- })
874
- #define HEXAGON_V32_GET_B2(v) \
875
- __extension__({ \
876
- union { \
877
- int w; \
878
- signed char b[4]; \
879
- } _HEXAGON_V32_internal_union; \
880
- _HEXAGON_V32_internal_union.w = (v); \
881
- _HEXAGON_V32_internal_union.b[2]; \
882
- })
883
- #define HEXAGON_V32_GET_B3(v) \
884
- __extension__({ \
885
- union { \
886
- int w; \
887
- signed char b[4]; \
888
- } _HEXAGON_V32_internal_union; \
889
- _HEXAGON_V32_internal_union.w = (v); \
890
- _HEXAGON_V32_internal_union.b[3]; \
891
- })
892
- #define HEXAGON_V32_GET_UB0(v) \
893
- __extension__({ \
894
- union { \
895
- int w; \
896
- unsigned char ub[4]; \
897
- } _HEXAGON_V32_internal_union; \
898
- _HEXAGON_V32_internal_union.w = (v); \
899
- _HEXAGON_V32_internal_union.ub[0]; \
900
- })
901
- #define HEXAGON_V32_GET_UB1(v) \
902
- __extension__({ \
903
- union { \
904
- int w; \
905
- unsigned char ub[4]; \
906
- } _HEXAGON_V32_internal_union; \
907
- _HEXAGON_V32_internal_union.w = (v); \
908
- _HEXAGON_V32_internal_union.ub[1]; \
909
- })
910
- #define HEXAGON_V32_GET_UB2(v) \
911
- __extension__({ \
912
- union { \
913
- int w; \
914
- unsigned char ub[4]; \
915
- } _HEXAGON_V32_internal_union; \
916
- _HEXAGON_V32_internal_union.w = (v); \
917
- _HEXAGON_V32_internal_union.ub[2]; \
918
- })
919
- #define HEXAGON_V32_GET_UB3(v) \
920
- __extension__({ \
921
- union { \
922
- int w; \
923
- unsigned char ub[4]; \
924
- } _HEXAGON_V32_internal_union; \
925
- _HEXAGON_V32_internal_union.w = (v); \
926
- _HEXAGON_V32_internal_union.ub[3]; \
927
- })
928
-
929
- /* NOTE: All set macros return a HEXAGON_Vect32 type */
930
-
931
- /* Set word macro */
932
-
933
- #define HEXAGON_V32_PUT_W(v, new) (new)
934
-
935
- /* Set half word macros */
936
-
937
- #ifdef __hexagon__
938
-
939
- #define HEXAGON_V32_PUT_H0(v, new) \
940
- __extension__({ \
941
- union { \
942
- int w; \
943
- short h[2]; \
944
- } _HEXAGON_V32_internal_union; \
945
- _HEXAGON_V32_internal_union.w = (v); \
946
- _HEXAGON_V32_internal_union.h[0] = (new); \
947
- _HEXAGON_V32_internal_union.w; \
948
- })
949
- #define HEXAGON_V32_PUT_H1(v, new) \
950
- __extension__({ \
951
- union { \
952
- int w; \
953
- short h[2]; \
954
- } _HEXAGON_V32_internal_union; \
955
- _HEXAGON_V32_internal_union.w = (v); \
956
- _HEXAGON_V32_internal_union.h[1] = (new); \
957
- _HEXAGON_V32_internal_union.w; \
958
- })
959
-
960
- #else /* !__hexagon__ */
961
-
962
- #define HEXAGON_V32_PUT_H0(v, new) \
963
- (((v) & 0xffff0000) | ((HEXAGON_Vect32)((unsigned short)(new))))
964
- #define HEXAGON_V32_PUT_H1(v, new) (((v) & 0x0000ffff) | (((HEXAGON_Vect32)(new)) << 16))
965
-
966
- #endif /* !__hexagon__ */
967
-
968
- /* Set byte macros */
969
-
970
- #ifdef __hexagon__
971
-
972
- #define HEXAGON_V32_PUT_B0(v, new) \
973
- __extension__({ \
974
- union { \
975
- int w; \
976
- char b[4]; \
977
- } _HEXAGON_V32_internal_union; \
978
- _HEXAGON_V32_internal_union.w = (v); \
979
- _HEXAGON_V32_internal_union.b[0] = (new); \
980
- _HEXAGON_V32_internal_union.w; \
981
- })
982
- #define HEXAGON_V32_PUT_B1(v, new) \
983
- __extension__({ \
984
- union { \
985
- int w; \
986
- char b[4]; \
987
- } _HEXAGON_V32_internal_union; \
988
- _HEXAGON_V32_internal_union.w = (v); \
989
- _HEXAGON_V32_internal_union.b[1] = (new); \
990
- _HEXAGON_V32_internal_union.w; \
991
- })
992
- #define HEXAGON_V32_PUT_B2(v, new) \
993
- __extension__({ \
994
- union { \
995
- int w; \
996
- char b[4]; \
997
- } _HEXAGON_V32_internal_union; \
998
- _HEXAGON_V32_internal_union.w = (v); \
999
- _HEXAGON_V32_internal_union.b[2] = (new); \
1000
- _HEXAGON_V32_internal_union.w; \
1001
- })
1002
- #define HEXAGON_V32_PUT_B3(v, new) \
1003
- __extension__({ \
1004
- union { \
1005
- int w; \
1006
- char b[4]; \
1007
- } _HEXAGON_V32_internal_union; \
1008
- _HEXAGON_V32_internal_union.w = (v); \
1009
- _HEXAGON_V32_internal_union.b[3] = (new); \
1010
- _HEXAGON_V32_internal_union.w; \
1011
- })
1012
-
1013
- #else /* !__hexagon__ */
1014
-
1015
- #define HEXAGON_V32_PUT_B0(v, new) \
1016
- (((v) & 0xffffff00) | ((HEXAGON_Vect32)((unsigned char)(new))))
1017
- #define HEXAGON_V32_PUT_B1(v, new) \
1018
- (((v) & 0xffff00ff) | (((HEXAGON_Vect32)((unsigned char)(new))) << 8))
1019
- #define HEXAGON_V32_PUT_B2(v, new) \
1020
- (((v) & 0xff00ffff) | (((HEXAGON_Vect32)((unsigned char)(new))) << 16))
1021
- #define HEXAGON_V32_PUT_B3(v, new) (((v) & 0x00ffffff) | (((HEXAGON_Vect32)(new)) << 24))
1022
-
1023
- #endif /* !__hexagon__ */
1024
-
1025
- /* NOTE: All create macros return a HEXAGON_Vect32 type */
1026
-
1027
- /* Create from a word */
1028
-
1029
- #define HEXAGON_V32_CREATE_W(w) (w)
1030
-
1031
- /* Create from half words */
1032
-
1033
- #ifdef __hexagon__
1034
-
1035
- #define HEXAGON_V32_CREATE_H(h1, h0) \
1036
- __extension__({ \
1037
- union { \
1038
- long long d; \
1039
- short h[2]; \
1040
- } _HEXAGON_V32_internal_union; \
1041
- _HEXAGON_V32_internal_union.h[0] = (h0); \
1042
- _HEXAGON_V32_internal_union.h[1] = (h1); \
1043
- _HEXAGON_V32_internal_union.d; \
1044
- })
1045
-
1046
- #else /* !__hexagon__ */
1047
-
1048
- #define HEXAGON_V32_CREATE_H(h1, h0) \
1049
- ((((HEXAGON_Vect32)(h1)) << 16) | ((HEXAGON_Vect32)((h0) & 0xffff)))
1050
-
1051
- #endif /* !__hexagon__ */
1052
-
1053
- /* Create from bytes */
1054
- #ifdef __hexagon__
1055
-
1056
- #define HEXAGON_V32_CREATE_B(b3, b2, b1, b0) \
1057
- __extension__({ \
1058
- union { \
1059
- long long d; \
1060
- char b[4]; \
1061
- } _HEXAGON_V32_internal_union; \
1062
- _HEXAGON_V32_internal_union.b[0] = (b0); \
1063
- _HEXAGON_V32_internal_union.b[1] = (b1); \
1064
- _HEXAGON_V32_internal_union.b[2] = (b2); \
1065
- _HEXAGON_V32_internal_union.b[3] = (b3); \
1066
- _HEXAGON_V32_internal_union.d; \
1067
- })
1068
-
1069
- #else /* !__hexagon__ */
1070
-
1071
- #define HEXAGON_V32_CREATE_B(b3, b2, b1, b0) \
1072
- ((((HEXAGON_Vect32)(b3)) << 24) | (((HEXAGON_Vect32)((b2) & 0xff)) << 16) | \
1073
- (((HEXAGON_Vect32)((b1) & 0xff)) << 8) | ((HEXAGON_Vect32)((b0) & 0xff)))
1074
-
1075
- #endif /* !__hexagon__ */
1076
-
1077
- #ifdef __cplusplus
1078
-
1079
- class HEXAGON_Vect32C {
1080
- public:
1081
- // Constructors
1082
- HEXAGON_Vect32C(int w = 0) : data(w) {};
1083
- HEXAGON_Vect32C(short h1, short h0) : data(HEXAGON_V32_CREATE_H(h1, h0)) {};
1084
- HEXAGON_Vect32C(signed char b3, signed char b2, signed char b1, signed char b0)
1085
- : data(HEXAGON_V32_CREATE_B(b3, b2, b1, b0)) {};
1086
- HEXAGON_Vect32C(const HEXAGON_Vect32C &v) : data(v.data) {};
1087
-
1088
- HEXAGON_Vect32C &operator=(const HEXAGON_Vect32C &v) {
1089
- data = v.data;
1090
- return *this;
1091
- };
1092
-
1093
- operator int() {
1094
- return data;
1095
- };
1096
-
1097
- // Extract word methods
1098
- int W(void) {
1099
- return HEXAGON_V32_GET_W(data);
1100
- };
1101
- unsigned int UW(void) {
1102
- return HEXAGON_V32_GET_UW(data);
1103
- };
1104
-
1105
- // Extract half word methods
1106
- short H0(void) {
1107
- return HEXAGON_V32_GET_H0(data);
1108
- };
1109
- short H1(void) {
1110
- return HEXAGON_V32_GET_H1(data);
1111
- };
1112
- unsigned short UH0(void) {
1113
- return HEXAGON_V32_GET_UH0(data);
1114
- };
1115
- unsigned short UH1(void) {
1116
- return HEXAGON_V32_GET_UH1(data);
1117
- };
1118
-
1119
- // Extract byte methods
1120
- signed char B0(void) {
1121
- return HEXAGON_V32_GET_B0(data);
1122
- };
1123
- signed char B1(void) {
1124
- return HEXAGON_V32_GET_B1(data);
1125
- };
1126
- signed char B2(void) {
1127
- return HEXAGON_V32_GET_B2(data);
1128
- };
1129
- signed char B3(void) {
1130
- return HEXAGON_V32_GET_B3(data);
1131
- };
1132
- unsigned char UB0(void) {
1133
- return HEXAGON_V32_GET_UB0(data);
1134
- };
1135
- unsigned char UB1(void) {
1136
- return HEXAGON_V32_GET_UB1(data);
1137
- };
1138
- unsigned char UB2(void) {
1139
- return HEXAGON_V32_GET_UB2(data);
1140
- };
1141
- unsigned char UB3(void) {
1142
- return HEXAGON_V32_GET_UB3(data);
1143
- };
1144
-
1145
- // NOTE: All set methods return a HEXAGON_Vect32C type
1146
-
1147
- // Set word method
1148
- HEXAGON_Vect32C W(int w) {
1149
- return HEXAGON_Vect32C(HEXAGON_V32_PUT_W(data, w));
1150
- };
1151
-
1152
- // Set half word methods
1153
- HEXAGON_Vect32C H0(short h) {
1154
- return HEXAGON_Vect32C(HEXAGON_V32_PUT_H0(data, h));
1155
- };
1156
- HEXAGON_Vect32C H1(short h) {
1157
- return HEXAGON_Vect32C(HEXAGON_V32_PUT_H1(data, h));
1158
- };
1159
-
1160
- // Set byte methods
1161
- HEXAGON_Vect32C B0(signed char b) {
1162
- return HEXAGON_Vect32C(HEXAGON_V32_PUT_B0(data, b));
1163
- };
1164
- HEXAGON_Vect32C B1(signed char b) {
1165
- return HEXAGON_Vect32C(HEXAGON_V32_PUT_B1(data, b));
1166
- };
1167
- HEXAGON_Vect32C B2(signed char b) {
1168
- return HEXAGON_Vect32C(HEXAGON_V32_PUT_B2(data, b));
1169
- };
1170
- HEXAGON_Vect32C B3(signed char b) {
1171
- return HEXAGON_Vect32C(HEXAGON_V32_PUT_B3(data, b));
1172
- };
1173
-
1174
- private:
1175
- int data;
1176
- };
1177
-
1178
- #endif /* __cplusplus */
1179
-
1180
- // V65 Vector types
1181
- #if __HVX_ARCH__ >= 65
1182
- #if defined __HVX__ && (__HVX_LENGTH__ == 128)
1183
- typedef long HEXAGON_VecPred128 __attribute__((__vector_size__(128)))
1184
- __attribute__((aligned(128)));
1185
-
1186
- typedef long HEXAGON_Vect1024 __attribute__((__vector_size__(128)))
1187
- __attribute__((aligned(128)));
1188
-
1189
- typedef long HEXAGON_Vect2048 __attribute__((__vector_size__(256)))
1190
- __attribute__((aligned(256)));
1191
-
1192
- typedef long HEXAGON_UVect1024 __attribute__((__vector_size__(128)))
1193
- __attribute__((aligned(4)));
1194
-
1195
- typedef long HEXAGON_UVect2048 __attribute__((__vector_size__(256)))
1196
- __attribute__((aligned(4)));
1197
-
1198
- #define HVX_VectorPred HEXAGON_VecPred128
1199
- #define HVX_Vector HEXAGON_Vect1024
1200
- #define HVX_VectorPair HEXAGON_Vect2048
1201
- #define HVX_UVector HEXAGON_UVect1024
1202
- #define HVX_UVectorPair HEXAGON_UVect2048
1203
- #else /* defined __HVX__ && (__HVX_LENGTH__ == 128) */
1204
- #if defined __HVX__ && (__HVX_LENGTH__ == 64)
1205
- typedef long HEXAGON_VecPred64 __attribute__((__vector_size__(64)))
1206
- __attribute__((aligned(64)));
1207
-
1208
- typedef long HEXAGON_Vect512 __attribute__((__vector_size__(64)))
1209
- __attribute__((aligned(64)));
1210
-
1211
- typedef long HEXAGON_Vect1024 __attribute__((__vector_size__(128)))
1212
- __attribute__((aligned(128)));
1213
-
1214
- typedef long HEXAGON_UVect512 __attribute__((__vector_size__(64)))
1215
- __attribute__((aligned(4)));
1216
-
1217
- typedef long HEXAGON_UVect1024 __attribute__((__vector_size__(128)))
1218
- __attribute__((aligned(4)));
1219
-
1220
- #define HVX_VectorPred HEXAGON_VecPred64
1221
- #define HVX_Vector HEXAGON_Vect512
1222
- #define HVX_VectorPair HEXAGON_Vect1024
1223
- #define HVX_UVector HEXAGON_UVect512
1224
- #define HVX_UVectorPair HEXAGON_UVect1024
1225
- #endif /* defined __HVX__ && (__HVX_LENGTH__ == 64) */
1226
- #endif /* defined __HVX__ && (__HVX_LENGTH__ == 128) */
1227
- #endif /* __HVX_ARCH__ >= 65 */
1228
-
1229
- /* Predicates */
1230
-
1231
- typedef int HEXAGON_Pred;
1232
-
1233
- /***
1234
- *** backward compatibility aliases
1235
- ***/
1236
-
1237
- /* Old names */
1238
- #define Q6Vect Q6Vect64
1239
- #define Q6V_GET_D Q6V64_GET_D
1240
- #define Q6V_GET_UD Q6V64_GET_UD
1241
- #define Q6V_GET_W0 Q6V64_GET_W0
1242
- #define Q6V_GET_W1 Q6V64_GET_W1
1243
- #define Q6V_GET_UW0 Q6V64_GET_UW0
1244
- #define Q6V_GET_UW1 Q6V64_GET_UW1
1245
- #define Q6V_GET_H0 Q6V64_GET_H0
1246
- #define Q6V_GET_H1 Q6V64_GET_H1
1247
- #define Q6V_GET_H2 Q6V64_GET_H2
1248
- #define Q6V_GET_H3 Q6V64_GET_H3
1249
- #define Q6V_GET_UH0 Q6V64_GET_UH0
1250
- #define Q6V_GET_UH1 Q6V64_GET_UH1
1251
- #define Q6V_GET_UH2 Q6V64_GET_UH2
1252
- #define Q6V_GET_UH3 Q6V64_GET_UH3
1253
- #define Q6V_GET_B0 Q6V64_GET_B0
1254
- #define Q6V_GET_B1 Q6V64_GET_B1
1255
- #define Q6V_GET_B2 Q6V64_GET_B2
1256
- #define Q6V_GET_B3 Q6V64_GET_B3
1257
- #define Q6V_GET_B4 Q6V64_GET_B4
1258
- #define Q6V_GET_B5 Q6V64_GET_B5
1259
- #define Q6V_GET_B6 Q6V64_GET_B6
1260
- #define Q6V_GET_B7 Q6V64_GET_B7
1261
- #define Q6V_GET_UB0 Q6V64_GET_UB0
1262
- #define Q6V_GET_UB1 Q6V64_GET_UB1
1263
- #define Q6V_GET_UB2 Q6V64_GET_UB2
1264
- #define Q6V_GET_UB3 Q6V64_GET_UB3
1265
- #define Q6V_GET_UB4 Q6V64_GET_UB4
1266
- #define Q6V_GET_UB5 Q6V64_GET_UB5
1267
- #define Q6V_GET_UB6 Q6V64_GET_UB6
1268
- #define Q6V_GET_UB7 Q6V64_GET_UB7
1269
- #define Q6V_PUT_D Q6V64_PUT_D
1270
- #define Q6V_PUT_W0 Q6V64_PUT_W0
1271
- #define Q6V_PUT_W1 Q6V64_PUT_W1
1272
- #define Q6V_PUT_H0 Q6V64_PUT_H0
1273
- #define Q6V_PUT_H1 Q6V64_PUT_H1
1274
- #define Q6V_PUT_H2 Q6V64_PUT_H2
1275
- #define Q6V_PUT_H3 Q6V64_PUT_H3
1276
- #define Q6V_PUT_B0 Q6V64_PUT_B0
1277
- #define Q6V_PUT_B1 Q6V64_PUT_B1
1278
- #define Q6V_PUT_B2 Q6V64_PUT_B2
1279
- #define Q6V_PUT_B3 Q6V64_PUT_B3
1280
- #define Q6V_PUT_B4 Q6V64_PUT_B4
1281
- #define Q6V_PUT_B5 Q6V64_PUT_B5
1282
- #define Q6V_PUT_B6 Q6V64_PUT_B6
1283
- #define Q6V_PUT_B7 Q6V64_PUT_B7
1284
- #define Q6V_CREATE_D Q6V64_CREATE_D
1285
- #define Q6V_CREATE_W Q6V64_CREATE_W
1286
- #define Q6V_CREATE_H Q6V64_CREATE_H
1287
- #define Q6V_CREATE_B Q6V64_CREATE_B
1288
-
1289
- #ifdef __cplusplus
1290
- #define Q6VectC Q6Vect64C
1291
- #endif /* __cplusplus */
1292
-
1293
- /* 64 Bit Vectors */
1294
-
1295
- typedef long long __attribute__((__may_alias__)) Q6Vect64;
1296
-
1297
- /* Extract doubleword macros */
1298
-
1299
- #define Q6V64_GET_D(v) (v)
1300
- #define Q6V64_GET_UD(v) ((unsigned long long)(v))
1301
-
1302
- /* Extract word macros */
1303
-
1304
- #define Q6V64_GET_W0(v) \
1305
- __extension__({ \
1306
- union { \
1307
- long long d; \
1308
- int w[2]; \
1309
- } _Q6V64_internal_union; \
1310
- _Q6V64_internal_union.d = (v); \
1311
- _Q6V64_internal_union.w[0]; \
1312
- })
1313
- #define Q6V64_GET_W1(v) \
1314
- __extension__({ \
1315
- union { \
1316
- long long d; \
1317
- int w[2]; \
1318
- } _Q6V64_internal_union; \
1319
- _Q6V64_internal_union.d = (v); \
1320
- _Q6V64_internal_union.w[1]; \
1321
- })
1322
- #define Q6V64_GET_UW0(v) \
1323
- __extension__({ \
1324
- union { \
1325
- long long d; \
1326
- unsigned int uw[2]; \
1327
- } _Q6V64_internal_union; \
1328
- _Q6V64_internal_union.d = (v); \
1329
- _Q6V64_internal_union.uw[0]; \
1330
- })
1331
- #define Q6V64_GET_UW1(v) \
1332
- __extension__({ \
1333
- union { \
1334
- long long d; \
1335
- unsigned int uw[2]; \
1336
- } _Q6V64_internal_union; \
1337
- _Q6V64_internal_union.d = (v); \
1338
- _Q6V64_internal_union.uw[1]; \
1339
- })
1340
-
1341
- /* Extract half word macros */
1342
-
1343
- #define Q6V64_GET_H0(v) \
1344
- __extension__({ \
1345
- union { \
1346
- long long d; \
1347
- short h[4]; \
1348
- } _Q6V64_internal_union; \
1349
- _Q6V64_internal_union.d = (v); \
1350
- _Q6V64_internal_union.h[0]; \
1351
- })
1352
- #define Q6V64_GET_H1(v) \
1353
- __extension__({ \
1354
- union { \
1355
- long long d; \
1356
- short h[4]; \
1357
- } _Q6V64_internal_union; \
1358
- _Q6V64_internal_union.d = (v); \
1359
- _Q6V64_internal_union.h[1]; \
1360
- })
1361
- #define Q6V64_GET_H2(v) \
1362
- __extension__({ \
1363
- union { \
1364
- long long d; \
1365
- short h[4]; \
1366
- } _Q6V64_internal_union; \
1367
- _Q6V64_internal_union.d = (v); \
1368
- _Q6V64_internal_union.h[2]; \
1369
- })
1370
- #define Q6V64_GET_H3(v) \
1371
- __extension__({ \
1372
- union { \
1373
- long long d; \
1374
- short h[4]; \
1375
- } _Q6V64_internal_union; \
1376
- _Q6V64_internal_union.d = (v); \
1377
- _Q6V64_internal_union.h[3]; \
1378
- })
1379
- #define Q6V64_GET_UH0(v) \
1380
- __extension__({ \
1381
- union { \
1382
- long long d; \
1383
- unsigned short uh[4]; \
1384
- } _Q6V64_internal_union; \
1385
- _Q6V64_internal_union.d = (v); \
1386
- _Q6V64_internal_union.uh[0]; \
1387
- })
1388
- #define Q6V64_GET_UH1(v) \
1389
- __extension__({ \
1390
- union { \
1391
- long long d; \
1392
- unsigned short uh[4]; \
1393
- } _Q6V64_internal_union; \
1394
- _Q6V64_internal_union.d = (v); \
1395
- _Q6V64_internal_union.uh[1]; \
1396
- })
1397
- #define Q6V64_GET_UH2(v) \
1398
- __extension__({ \
1399
- union { \
1400
- long long d; \
1401
- unsigned short uh[4]; \
1402
- } _Q6V64_internal_union; \
1403
- _Q6V64_internal_union.d = (v); \
1404
- _Q6V64_internal_union.uh[2]; \
1405
- })
1406
- #define Q6V64_GET_UH3(v) \
1407
- __extension__({ \
1408
- union { \
1409
- long long d; \
1410
- unsigned short uh[4]; \
1411
- } _Q6V64_internal_union; \
1412
- _Q6V64_internal_union.d = (v); \
1413
- _Q6V64_internal_union.uh[3]; \
1414
- })
1415
-
1416
- /* Extract byte macros */
1417
-
1418
- #define Q6V64_GET_B0(v) \
1419
- __extension__({ \
1420
- union { \
1421
- long long d; \
1422
- signed char b[8]; \
1423
- } _Q6V64_internal_union; \
1424
- _Q6V64_internal_union.d = (v); \
1425
- _Q6V64_internal_union.b[0]; \
1426
- })
1427
- #define Q6V64_GET_B1(v) \
1428
- __extension__({ \
1429
- union { \
1430
- long long d; \
1431
- signed char b[8]; \
1432
- } _Q6V64_internal_union; \
1433
- _Q6V64_internal_union.d = (v); \
1434
- _Q6V64_internal_union.b[1]; \
1435
- })
1436
- #define Q6V64_GET_B2(v) \
1437
- __extension__({ \
1438
- union { \
1439
- long long d; \
1440
- signed char b[8]; \
1441
- } _Q6V64_internal_union; \
1442
- _Q6V64_internal_union.d = (v); \
1443
- _Q6V64_internal_union.b[2]; \
1444
- })
1445
- #define Q6V64_GET_B3(v) \
1446
- __extension__({ \
1447
- union { \
1448
- long long d; \
1449
- signed char b[8]; \
1450
- } _Q6V64_internal_union; \
1451
- _Q6V64_internal_union.d = (v); \
1452
- _Q6V64_internal_union.b[3]; \
1453
- })
1454
- #define Q6V64_GET_B4(v) \
1455
- __extension__({ \
1456
- union { \
1457
- long long d; \
1458
- signed char b[8]; \
1459
- } _Q6V64_internal_union; \
1460
- _Q6V64_internal_union.d = (v); \
1461
- _Q6V64_internal_union.b[4]; \
1462
- })
1463
- #define Q6V64_GET_B5(v) \
1464
- __extension__({ \
1465
- union { \
1466
- long long d; \
1467
- signed char b[8]; \
1468
- } _Q6V64_internal_union; \
1469
- _Q6V64_internal_union.d = (v); \
1470
- _Q6V64_internal_union.b[5]; \
1471
- })
1472
- #define Q6V64_GET_B6(v) \
1473
- __extension__({ \
1474
- union { \
1475
- long long d; \
1476
- signed char b[8]; \
1477
- } _Q6V64_internal_union; \
1478
- _Q6V64_internal_union.d = (v); \
1479
- _Q6V64_internal_union.b[6]; \
1480
- })
1481
- #define Q6V64_GET_B7(v) \
1482
- __extension__({ \
1483
- union { \
1484
- long long d; \
1485
- signed char b[8]; \
1486
- } _Q6V64_internal_union; \
1487
- _Q6V64_internal_union.d = (v); \
1488
- _Q6V64_internal_union.b[7]; \
1489
- })
1490
- #define Q6V64_GET_UB0(v) \
1491
- __extension__({ \
1492
- union { \
1493
- long long d; \
1494
- unsigned char ub[8]; \
1495
- } _Q6V64_internal_union; \
1496
- _Q6V64_internal_union.d = (v); \
1497
- _Q6V64_internal_union.ub[0]; \
1498
- })
1499
- #define Q6V64_GET_UB1(v) \
1500
- __extension__({ \
1501
- union { \
1502
- long long d; \
1503
- unsigned char ub[8]; \
1504
- } _Q6V64_internal_union; \
1505
- _Q6V64_internal_union.d = (v); \
1506
- _Q6V64_internal_union.ub[1]; \
1507
- })
1508
- #define Q6V64_GET_UB2(v) \
1509
- __extension__({ \
1510
- union { \
1511
- long long d; \
1512
- unsigned char ub[8]; \
1513
- } _Q6V64_internal_union; \
1514
- _Q6V64_internal_union.d = (v); \
1515
- _Q6V64_internal_union.ub[2]; \
1516
- })
1517
- #define Q6V64_GET_UB3(v) \
1518
- __extension__({ \
1519
- union { \
1520
- long long d; \
1521
- unsigned char ub[8]; \
1522
- } _Q6V64_internal_union; \
1523
- _Q6V64_internal_union.d = (v); \
1524
- _Q6V64_internal_union.ub[3]; \
1525
- })
1526
- #define Q6V64_GET_UB4(v) \
1527
- __extension__({ \
1528
- union { \
1529
- long long d; \
1530
- unsigned char ub[8]; \
1531
- } _Q6V64_internal_union; \
1532
- _Q6V64_internal_union.d = (v); \
1533
- _Q6V64_internal_union.ub[4]; \
1534
- })
1535
- #define Q6V64_GET_UB5(v) \
1536
- __extension__({ \
1537
- union { \
1538
- long long d; \
1539
- unsigned char ub[8]; \
1540
- } _Q6V64_internal_union; \
1541
- _Q6V64_internal_union.d = (v); \
1542
- _Q6V64_internal_union.ub[5]; \
1543
- })
1544
- #define Q6V64_GET_UB6(v) \
1545
- __extension__({ \
1546
- union { \
1547
- long long d; \
1548
- unsigned char ub[8]; \
1549
- } _Q6V64_internal_union; \
1550
- _Q6V64_internal_union.d = (v); \
1551
- _Q6V64_internal_union.ub[6]; \
1552
- })
1553
- #define Q6V64_GET_UB7(v) \
1554
- __extension__({ \
1555
- union { \
1556
- long long d; \
1557
- unsigned char ub[8]; \
1558
- } _Q6V64_internal_union; \
1559
- _Q6V64_internal_union.d = (v); \
1560
- _Q6V64_internal_union.ub[7]; \
1561
- })
1562
-
1563
- /* NOTE: All set macros return a Q6Vect64 type */
1564
-
1565
- /* Set doubleword macro */
1566
-
1567
- #define Q6V64_PUT_D(v, new) (new)
1568
-
1569
- /* Set word macros */
1570
-
1571
- #ifdef __qdsp6__
1572
-
1573
- #define Q6V64_PUT_W0(v, new) \
1574
- __extension__({ \
1575
- union { \
1576
- long long d; \
1577
- int w[2]; \
1578
- } _Q6V64_internal_union; \
1579
- _Q6V64_internal_union.d = (v); \
1580
- _Q6V64_internal_union.w[0] = (new); \
1581
- _Q6V64_internal_union.d; \
1582
- })
1583
- #define Q6V64_PUT_W1(v, new) \
1584
- __extension__({ \
1585
- union { \
1586
- long long d; \
1587
- int w[2]; \
1588
- } _Q6V64_internal_union; \
1589
- _Q6V64_internal_union.d = (v); \
1590
- _Q6V64_internal_union.w[1] = (new); \
1591
- _Q6V64_internal_union.d; \
1592
- })
1593
-
1594
- #else /* !__qdsp6__ */
1595
-
1596
- #define Q6V64_PUT_W0(v, new) \
1597
- (((v) & 0xffffffff00000000LL) | ((Q6Vect64)((unsigned int)(new))))
1598
- #define Q6V64_PUT_W1(v, new) \
1599
- (((v) & 0x00000000ffffffffLL) | (((Q6Vect64)(new)) << 32LL))
1600
-
1601
- #endif /* !__qdsp6__ */
1602
-
1603
- /* Set half word macros */
1604
-
1605
- #ifdef __qdsp6__
1606
-
1607
- #define Q6V64_PUT_H0(v, new) \
1608
- __extension__({ \
1609
- union { \
1610
- long long d; \
1611
- short h[4]; \
1612
- } _Q6V64_internal_union; \
1613
- _Q6V64_internal_union.d = (v); \
1614
- _Q6V64_internal_union.h[0] = (new); \
1615
- _Q6V64_internal_union.d; \
1616
- })
1617
- #define Q6V64_PUT_H1(v, new) \
1618
- __extension__({ \
1619
- union { \
1620
- long long d; \
1621
- short h[4]; \
1622
- } _Q6V64_internal_union; \
1623
- _Q6V64_internal_union.d = (v); \
1624
- _Q6V64_internal_union.h[1] = (new); \
1625
- _Q6V64_internal_union.d; \
1626
- })
1627
- #define Q6V64_PUT_H2(v, new) \
1628
- __extension__({ \
1629
- union { \
1630
- long long d; \
1631
- short h[4]; \
1632
- } _Q6V64_internal_union; \
1633
- _Q6V64_internal_union.d = (v); \
1634
- _Q6V64_internal_union.h[2] = (new); \
1635
- _Q6V64_internal_union.d; \
1636
- })
1637
- #define Q6V64_PUT_H3(v, new) \
1638
- __extension__({ \
1639
- union { \
1640
- long long d; \
1641
- short h[4]; \
1642
- } _Q6V64_internal_union; \
1643
- _Q6V64_internal_union.d = (v); \
1644
- _Q6V64_internal_union.h[3] = (new); \
1645
- _Q6V64_internal_union.d; \
1646
- })
1647
-
1648
- #else /* !__qdsp6__ */
1649
-
1650
- #define Q6V64_PUT_H0(v, new) \
1651
- (((v) & 0xffffffffffff0000LL) | ((Q6Vect64)((unsigned short)(new))))
1652
- #define Q6V64_PUT_H1(v, new) \
1653
- (((v) & 0xffffffff0000ffffLL) | (((Q6Vect64)((unsigned short)(new))) << 16LL))
1654
- #define Q6V64_PUT_H2(v, new) \
1655
- (((v) & 0xffff0000ffffffffLL) | (((Q6Vect64)((unsigned short)(new))) << 32LL))
1656
- #define Q6V64_PUT_H3(v, new) \
1657
- (((v) & 0x0000ffffffffffffLL) | (((Q6Vect64)(new)) << 48LL))
1658
-
1659
- #endif /* !__qdsp6__ */
1660
-
1661
- /* Set byte macros */
1662
-
1663
- #ifdef __qdsp6__
1664
-
1665
- #define Q6V64_PUT_B0(v, new) \
1666
- __extension__({ \
1667
- union { \
1668
- long long d; \
1669
- char b[8]; \
1670
- } _Q6V64_internal_union; \
1671
- _Q6V64_internal_union.d = (v); \
1672
- _Q6V64_internal_union.b[0] = (new); \
1673
- _Q6V64_internal_union.d; \
1674
- })
1675
- #define Q6V64_PUT_B1(v, new) \
1676
- __extension__({ \
1677
- union { \
1678
- long long d; \
1679
- char b[8]; \
1680
- } _Q6V64_internal_union; \
1681
- _Q6V64_internal_union.d = (v); \
1682
- _Q6V64_internal_union.b[1] = (new); \
1683
- _Q6V64_internal_union.d; \
1684
- })
1685
- #define Q6V64_PUT_B2(v, new) \
1686
- __extension__({ \
1687
- union { \
1688
- long long d; \
1689
- char b[8]; \
1690
- } _Q6V64_internal_union; \
1691
- _Q6V64_internal_union.d = (v); \
1692
- _Q6V64_internal_union.b[2] = (new); \
1693
- _Q6V64_internal_union.d; \
1694
- })
1695
- #define Q6V64_PUT_B3(v, new) \
1696
- __extension__({ \
1697
- union { \
1698
- long long d; \
1699
- char b[8]; \
1700
- } _Q6V64_internal_union; \
1701
- _Q6V64_internal_union.d = (v); \
1702
- _Q6V64_internal_union.b[3] = (new); \
1703
- _Q6V64_internal_union.d; \
1704
- })
1705
- #define Q6V64_PUT_B4(v, new) \
1706
- __extension__({ \
1707
- union { \
1708
- long long d; \
1709
- char b[8]; \
1710
- } _Q6V64_internal_union; \
1711
- _Q6V64_internal_union.d = (v); \
1712
- _Q6V64_internal_union.b[4] = (new); \
1713
- _Q6V64_internal_union.d; \
1714
- })
1715
- #define Q6V64_PUT_B5(v, new) \
1716
- __extension__({ \
1717
- union { \
1718
- long long d; \
1719
- char b[8]; \
1720
- } _Q6V64_internal_union; \
1721
- _Q6V64_internal_union.d = (v); \
1722
- _Q6V64_internal_union.b[5] = (new); \
1723
- _Q6V64_internal_union.d; \
1724
- })
1725
- #define Q6V64_PUT_B6(v, new) \
1726
- __extension__({ \
1727
- union { \
1728
- long long d; \
1729
- char b[8]; \
1730
- } _Q6V64_internal_union; \
1731
- _Q6V64_internal_union.d = (v); \
1732
- _Q6V64_internal_union.b[6] = (new); \
1733
- _Q6V64_internal_union.d; \
1734
- })
1735
- #define Q6V64_PUT_B7(v, new) \
1736
- __extension__({ \
1737
- union { \
1738
- long long d; \
1739
- char b[8]; \
1740
- } _Q6V64_internal_union; \
1741
- _Q6V64_internal_union.d = (v); \
1742
- _Q6V64_internal_union.b[7] = (new); \
1743
- _Q6V64_internal_union.d; \
1744
- })
1745
-
1746
- #else /* !__qdsp6__ */
1747
-
1748
- #define Q6V64_PUT_B0(v, new) \
1749
- (((v) & 0xffffffffffffff00LL) | ((Q6Vect64)((unsigned char)(new))))
1750
- #define Q6V64_PUT_B1(v, new) \
1751
- (((v) & 0xffffffffffff00ffLL) | (((Q6Vect64)((unsigned char)(new))) << 8LL))
1752
- #define Q6V64_PUT_B2(v, new) \
1753
- (((v) & 0xffffffffff00ffffLL) | (((Q6Vect64)((unsigned char)(new))) << 16LL))
1754
- #define Q6V64_PUT_B3(v, new) \
1755
- (((v) & 0xffffffff00ffffffLL) | (((Q6Vect64)((unsigned char)(new))) << 24LL))
1756
- #define Q6V64_PUT_B4(v, new) \
1757
- (((v) & 0xffffff00ffffffffLL) | (((Q6Vect64)((unsigned char)(new))) << 32LL))
1758
- #define Q6V64_PUT_B5(v, new) \
1759
- (((v) & 0xffff00ffffffffffLL) | (((Q6Vect64)((unsigned char)(new))) << 40LL))
1760
- #define Q6V64_PUT_B6(v, new) \
1761
- (((v) & 0xff00ffffffffffffLL) | (((Q6Vect64)((unsigned char)(new))) << 48LL))
1762
- #define Q6V64_PUT_B7(v, new) \
1763
- (((v) & 0x00ffffffffffffffLL) | (((Q6Vect64)(new)) << 56LL))
1764
-
1765
- #endif /* !__qdsp6__ */
1766
-
1767
- /* NOTE: All create macros return a Q6Vect64 type */
1768
-
1769
- /* Create from a doubleword */
1770
-
1771
- #define Q6V64_CREATE_D(d) (d)
1772
-
1773
- /* Create from words */
1774
-
1775
- #ifdef __qdsp6__
1776
-
1777
- #define Q6V64_CREATE_W(w1, w0) \
1778
- __extension__({ \
1779
- union { \
1780
- long long d; \
1781
- int w[2]; \
1782
- } _Q6V64_internal_union; \
1783
- _Q6V64_internal_union.w[0] = (w0); \
1784
- _Q6V64_internal_union.w[1] = (w1); \
1785
- _Q6V64_internal_union.d; \
1786
- })
1787
-
1788
- #else /* !__qdsp6__ */
1789
-
1790
- #define Q6V64_CREATE_W(w1, w0) \
1791
- ((((Q6Vect64)(w1)) << 32LL) | ((Q6Vect64)((w0) & 0xffffffff)))
1792
-
1793
- #endif /* !__qdsp6__ */
1794
-
1795
- /* Create from half words */
1796
-
1797
- #ifdef __qdsp6__
1798
-
1799
- #define Q6V64_CREATE_H(h3, h2, h1, h0) \
1800
- __extension__({ \
1801
- union { \
1802
- long long d; \
1803
- short h[4]; \
1804
- } _Q6V64_internal_union; \
1805
- _Q6V64_internal_union.h[0] = (h0); \
1806
- _Q6V64_internal_union.h[1] = (h1); \
1807
- _Q6V64_internal_union.h[2] = (h2); \
1808
- _Q6V64_internal_union.h[3] = (h3); \
1809
- _Q6V64_internal_union.d; \
1810
- })
1811
-
1812
- #else /* !__qdsp6__ */
1813
-
1814
- #define Q6V64_CREATE_H(h3, h2, h1, h0) \
1815
- ((((Q6Vect64)(h3)) << 48LL) | (((Q6Vect64)((h2) & 0xffff)) << 32LL) | \
1816
- (((Q6Vect64)((h1) & 0xffff)) << 16LL) | ((Q6Vect64)((h0) & 0xffff)))
1817
-
1818
- #endif /* !__qdsp6__ */
1819
-
1820
- /* Create from bytes */
1821
-
1822
- #ifdef __qdsp6__
1823
-
1824
- #define Q6V64_CREATE_B(b7, b6, b5, b4, b3, b2, b1, b0) \
1825
- __extension__({ \
1826
- union { \
1827
- long long d; \
1828
- char b[8]; \
1829
- } _Q6V64_internal_union; \
1830
- _Q6V64_internal_union.b[0] = (b0); \
1831
- _Q6V64_internal_union.b[1] = (b1); \
1832
- _Q6V64_internal_union.b[2] = (b2); \
1833
- _Q6V64_internal_union.b[3] = (b3); \
1834
- _Q6V64_internal_union.b[4] = (b4); \
1835
- _Q6V64_internal_union.b[5] = (b5); \
1836
- _Q6V64_internal_union.b[6] = (b6); \
1837
- _Q6V64_internal_union.b[7] = (b7); \
1838
- _Q6V64_internal_union.d; \
1839
- })
1840
-
1841
- #else /* !__qdsp6__ */
1842
-
1843
- #define Q6V64_CREATE_B(b7, b6, b5, b4, b3, b2, b1, b0) \
1844
- ((((Q6Vect64)(b7)) << 56LL) | (((Q6Vect64)((b6) & 0xff)) << 48LL) | \
1845
- (((Q6Vect64)((b5) & 0xff)) << 40LL) | (((Q6Vect64)((b4) & 0xff)) << 32LL) | \
1846
- (((Q6Vect64)((b3) & 0xff)) << 24LL) | (((Q6Vect64)((b2) & 0xff)) << 16LL) | \
1847
- (((Q6Vect64)((b1) & 0xff)) << 8LL) | ((Q6Vect64)((b0) & 0xff)))
1848
-
1849
- #endif /* !__qdsp6__ */
1850
-
1851
- #ifdef __cplusplus
1852
-
1853
- class Q6Vect64C {
1854
- public:
1855
- // Constructors
1856
- Q6Vect64C(long long d = 0) : data(d) {};
1857
- Q6Vect64C(int w1, int w0) : data(Q6V64_CREATE_W(w1, w0)) {};
1858
- Q6Vect64C(short h3, short h2, short h1, short h0)
1859
- : data(Q6V64_CREATE_H(h3, h2, h1, h0)) {};
1860
- Q6Vect64C(signed char b7, signed char b6, signed char b5, signed char b4,
1861
- signed char b3, signed char b2, signed char b1, signed char b0)
1862
- : data(Q6V64_CREATE_B(b7, b6, b5, b4, b3, b2, b1, b0)) {};
1863
- Q6Vect64C(const Q6Vect64C &v) : data(v.data) {};
1864
-
1865
- Q6Vect64C &operator=(const Q6Vect64C &v) {
1866
- data = v.data;
1867
- return *this;
1868
- };
1869
-
1870
- operator long long() {
1871
- return data;
1872
- };
1873
-
1874
- // Extract doubleword methods
1875
- long long D(void) {
1876
- return Q6V64_GET_D(data);
1877
- };
1878
- unsigned long long UD(void) {
1879
- return Q6V64_GET_UD(data);
1880
- };
1881
-
1882
- // Extract word methods
1883
- int W0(void) {
1884
- return Q6V64_GET_W0(data);
1885
- };
1886
- int W1(void) {
1887
- return Q6V64_GET_W1(data);
1888
- };
1889
- unsigned int UW0(void) {
1890
- return Q6V64_GET_UW0(data);
1891
- };
1892
- unsigned int UW1(void) {
1893
- return Q6V64_GET_UW1(data);
1894
- };
1895
-
1896
- // Extract half word methods
1897
- short H0(void) {
1898
- return Q6V64_GET_H0(data);
1899
- };
1900
- short H1(void) {
1901
- return Q6V64_GET_H1(data);
1902
- };
1903
- short H2(void) {
1904
- return Q6V64_GET_H2(data);
1905
- };
1906
- short H3(void) {
1907
- return Q6V64_GET_H3(data);
1908
- };
1909
- unsigned short UH0(void) {
1910
- return Q6V64_GET_UH0(data);
1911
- };
1912
- unsigned short UH1(void) {
1913
- return Q6V64_GET_UH1(data);
1914
- };
1915
- unsigned short UH2(void) {
1916
- return Q6V64_GET_UH2(data);
1917
- };
1918
- unsigned short UH3(void) {
1919
- return Q6V64_GET_UH3(data);
1920
- };
1921
-
1922
- // Extract byte methods
1923
- signed char B0(void) {
1924
- return Q6V64_GET_B0(data);
1925
- };
1926
- signed char B1(void) {
1927
- return Q6V64_GET_B1(data);
1928
- };
1929
- signed char B2(void) {
1930
- return Q6V64_GET_B2(data);
1931
- };
1932
- signed char B3(void) {
1933
- return Q6V64_GET_B3(data);
1934
- };
1935
- signed char B4(void) {
1936
- return Q6V64_GET_B4(data);
1937
- };
1938
- signed char B5(void) {
1939
- return Q6V64_GET_B5(data);
1940
- };
1941
- signed char B6(void) {
1942
- return Q6V64_GET_B6(data);
1943
- };
1944
- signed char B7(void) {
1945
- return Q6V64_GET_B7(data);
1946
- };
1947
- unsigned char UB0(void) {
1948
- return Q6V64_GET_UB0(data);
1949
- };
1950
- unsigned char UB1(void) {
1951
- return Q6V64_GET_UB1(data);
1952
- };
1953
- unsigned char UB2(void) {
1954
- return Q6V64_GET_UB2(data);
1955
- };
1956
- unsigned char UB3(void) {
1957
- return Q6V64_GET_UB3(data);
1958
- };
1959
- unsigned char UB4(void) {
1960
- return Q6V64_GET_UB4(data);
1961
- };
1962
- unsigned char UB5(void) {
1963
- return Q6V64_GET_UB5(data);
1964
- };
1965
- unsigned char UB6(void) {
1966
- return Q6V64_GET_UB6(data);
1967
- };
1968
- unsigned char UB7(void) {
1969
- return Q6V64_GET_UB7(data);
1970
- };
1971
-
1972
- // NOTE: All set methods return a Q6Vect64C type
1973
-
1974
- // Set doubleword method
1975
- Q6Vect64C D(long long d) {
1976
- return Q6Vect64C(Q6V64_PUT_D(data, d));
1977
- };
1978
-
1979
- // Set word methods
1980
- Q6Vect64C W0(int w) {
1981
- return Q6Vect64C(Q6V64_PUT_W0(data, w));
1982
- };
1983
- Q6Vect64C W1(int w) {
1984
- return Q6Vect64C(Q6V64_PUT_W1(data, w));
1985
- };
1986
-
1987
- // Set half word methods
1988
- Q6Vect64C H0(short h) {
1989
- return Q6Vect64C(Q6V64_PUT_H0(data, h));
1990
- };
1991
- Q6Vect64C H1(short h) {
1992
- return Q6Vect64C(Q6V64_PUT_H1(data, h));
1993
- };
1994
- Q6Vect64C H2(short h) {
1995
- return Q6Vect64C(Q6V64_PUT_H2(data, h));
1996
- };
1997
- Q6Vect64C H3(short h) {
1998
- return Q6Vect64C(Q6V64_PUT_H3(data, h));
1999
- };
2000
-
2001
- // Set byte methods
2002
- Q6Vect64C B0(signed char b) {
2003
- return Q6Vect64C(Q6V64_PUT_B0(data, b));
2004
- };
2005
- Q6Vect64C B1(signed char b) {
2006
- return Q6Vect64C(Q6V64_PUT_B1(data, b));
2007
- };
2008
- Q6Vect64C B2(signed char b) {
2009
- return Q6Vect64C(Q6V64_PUT_B2(data, b));
2010
- };
2011
- Q6Vect64C B3(signed char b) {
2012
- return Q6Vect64C(Q6V64_PUT_B3(data, b));
2013
- };
2014
- Q6Vect64C B4(signed char b) {
2015
- return Q6Vect64C(Q6V64_PUT_B4(data, b));
2016
- };
2017
- Q6Vect64C B5(signed char b) {
2018
- return Q6Vect64C(Q6V64_PUT_B5(data, b));
2019
- };
2020
- Q6Vect64C B6(signed char b) {
2021
- return Q6Vect64C(Q6V64_PUT_B6(data, b));
2022
- };
2023
- Q6Vect64C B7(signed char b) {
2024
- return Q6Vect64C(Q6V64_PUT_B7(data, b));
2025
- };
2026
-
2027
- private:
2028
- long long data;
2029
- };
2030
-
2031
- #endif /* __cplusplus */
2032
-
2033
- /* 32 Bit Vectors */
2034
-
2035
- typedef int Q6Vect32;
2036
-
2037
- /* Extract word macros */
2038
-
2039
- #define Q6V32_GET_W(v) (v)
2040
- #define Q6V32_GET_UW(v) ((unsigned int)(v))
2041
-
2042
- /* Extract half word macros */
2043
-
2044
- #define Q6V32_GET_H0(v) \
2045
- __extension__({ \
2046
- union { \
2047
- int w; \
2048
- short h[2]; \
2049
- } _Q6V32_internal_union; \
2050
- _Q6V32_internal_union.w = (v); \
2051
- _Q6V32_internal_union.h[0]; \
2052
- })
2053
- #define Q6V32_GET_H1(v) \
2054
- __extension__({ \
2055
- union { \
2056
- int w; \
2057
- short h[2]; \
2058
- } _Q6V32_internal_union; \
2059
- _Q6V32_internal_union.w = (v); \
2060
- _Q6V32_internal_union.h[1]; \
2061
- })
2062
- #define Q6V32_GET_UH0(v) \
2063
- __extension__({ \
2064
- union { \
2065
- int w; \
2066
- unsigned short uh[2]; \
2067
- } _Q6V32_internal_union; \
2068
- _Q6V32_internal_union.w = (v); \
2069
- _Q6V32_internal_union.uh[0]; \
2070
- })
2071
- #define Q6V32_GET_UH1(v) \
2072
- __extension__({ \
2073
- union { \
2074
- int w; \
2075
- unsigned short uh[2]; \
2076
- } _Q6V32_internal_union; \
2077
- _Q6V32_internal_union.w = (v); \
2078
- _Q6V32_internal_union.uh[1]; \
2079
- })
2080
-
2081
- /* Extract byte macros */
2082
-
2083
- #define Q6V32_GET_B0(v) \
2084
- __extension__({ \
2085
- union { \
2086
- int w; \
2087
- signed char b[4]; \
2088
- } _Q6V32_internal_union; \
2089
- _Q6V32_internal_union.w = (v); \
2090
- _Q6V32_internal_union.b[0]; \
2091
- })
2092
- #define Q6V32_GET_B1(v) \
2093
- __extension__({ \
2094
- union { \
2095
- int w; \
2096
- signed char b[4]; \
2097
- } _Q6V32_internal_union; \
2098
- _Q6V32_internal_union.w = (v); \
2099
- _Q6V32_internal_union.b[1]; \
2100
- })
2101
- #define Q6V32_GET_B2(v) \
2102
- __extension__({ \
2103
- union { \
2104
- int w; \
2105
- signed char b[4]; \
2106
- } _Q6V32_internal_union; \
2107
- _Q6V32_internal_union.w = (v); \
2108
- _Q6V32_internal_union.b[2]; \
2109
- })
2110
- #define Q6V32_GET_B3(v) \
2111
- __extension__({ \
2112
- union { \
2113
- int w; \
2114
- signed char b[4]; \
2115
- } _Q6V32_internal_union; \
2116
- _Q6V32_internal_union.w = (v); \
2117
- _Q6V32_internal_union.b[3]; \
2118
- })
2119
- #define Q6V32_GET_UB0(v) \
2120
- __extension__({ \
2121
- union { \
2122
- int w; \
2123
- unsigned char ub[4]; \
2124
- } _Q6V32_internal_union; \
2125
- _Q6V32_internal_union.w = (v); \
2126
- _Q6V32_internal_union.ub[0]; \
2127
- })
2128
- #define Q6V32_GET_UB1(v) \
2129
- __extension__({ \
2130
- union { \
2131
- int w; \
2132
- unsigned char ub[4]; \
2133
- } _Q6V32_internal_union; \
2134
- _Q6V32_internal_union.w = (v); \
2135
- _Q6V32_internal_union.ub[1]; \
2136
- })
2137
- #define Q6V32_GET_UB2(v) \
2138
- __extension__({ \
2139
- union { \
2140
- int w; \
2141
- unsigned char ub[4]; \
2142
- } _Q6V32_internal_union; \
2143
- _Q6V32_internal_union.w = (v); \
2144
- _Q6V32_internal_union.ub[2]; \
2145
- })
2146
- #define Q6V32_GET_UB3(v) \
2147
- __extension__({ \
2148
- union { \
2149
- int w; \
2150
- unsigned char ub[4]; \
2151
- } _Q6V32_internal_union; \
2152
- _Q6V32_internal_union.w = (v); \
2153
- _Q6V32_internal_union.ub[3]; \
2154
- })
2155
-
2156
- /* NOTE: All set macros return a Q6Vect32 type */
2157
-
2158
- /* Set word macro */
2159
-
2160
- #define Q6V32_PUT_W(v, new) (new)
2161
-
2162
- /* Set half word macros */
2163
-
2164
- #ifdef __qdsp6__
2165
-
2166
- #define Q6V32_PUT_H0(v, new) \
2167
- __extension__({ \
2168
- union { \
2169
- int w; \
2170
- short h[2]; \
2171
- } _Q6V32_internal_union; \
2172
- _Q6V32_internal_union.w = (v); \
2173
- _Q6V32_internal_union.h[0] = (new); \
2174
- _Q6V32_internal_union.w; \
2175
- })
2176
- #define Q6V32_PUT_H1(v, new) \
2177
- __extension__({ \
2178
- union { \
2179
- int w; \
2180
- short h[2]; \
2181
- } _Q6V32_internal_union; \
2182
- _Q6V32_internal_union.w = (v); \
2183
- _Q6V32_internal_union.h[1] = (new); \
2184
- _Q6V32_internal_union.w; \
2185
- })
2186
-
2187
- #else /* !__qdsp6__ */
2188
-
2189
- #define Q6V32_PUT_H0(v, new) \
2190
- (((v) & 0xffff0000) | ((Q6Vect32)((unsigned short)(new))))
2191
- #define Q6V32_PUT_H1(v, new) (((v) & 0x0000ffff) | (((Q6Vect32)(new)) << 16))
2192
-
2193
- #endif /* !__qdsp6__ */
2194
-
2195
- /* Set byte macros */
2196
-
2197
- #ifdef __qdsp6__
2198
-
2199
- #define Q6V32_PUT_B0(v, new) \
2200
- __extension__({ \
2201
- union { \
2202
- int w; \
2203
- char b[4]; \
2204
- } _Q6V32_internal_union; \
2205
- _Q6V32_internal_union.w = (v); \
2206
- _Q6V32_internal_union.b[0] = (new); \
2207
- _Q6V32_internal_union.w; \
2208
- })
2209
- #define Q6V32_PUT_B1(v, new) \
2210
- __extension__({ \
2211
- union { \
2212
- int w; \
2213
- char b[4]; \
2214
- } _Q6V32_internal_union; \
2215
- _Q6V32_internal_union.w = (v); \
2216
- _Q6V32_internal_union.b[1] = (new); \
2217
- _Q6V32_internal_union.w; \
2218
- })
2219
- #define Q6V32_PUT_B2(v, new) \
2220
- __extension__({ \
2221
- union { \
2222
- int w; \
2223
- char b[4]; \
2224
- } _Q6V32_internal_union; \
2225
- _Q6V32_internal_union.w = (v); \
2226
- _Q6V32_internal_union.b[2] = (new); \
2227
- _Q6V32_internal_union.w; \
2228
- })
2229
- #define Q6V32_PUT_B3(v, new) \
2230
- __extension__({ \
2231
- union { \
2232
- int w; \
2233
- char b[4]; \
2234
- } _Q6V32_internal_union; \
2235
- _Q6V32_internal_union.w = (v); \
2236
- _Q6V32_internal_union.b[3] = (new); \
2237
- _Q6V32_internal_union.w; \
2238
- })
2239
-
2240
- #else /* !__qdsp6__ */
2241
-
2242
- #define Q6V32_PUT_B0(v, new) \
2243
- (((v) & 0xffffff00) | ((Q6Vect32)((unsigned char)(new))))
2244
- #define Q6V32_PUT_B1(v, new) \
2245
- (((v) & 0xffff00ff) | (((Q6Vect32)((unsigned char)(new))) << 8))
2246
- #define Q6V32_PUT_B2(v, new) \
2247
- (((v) & 0xff00ffff) | (((Q6Vect32)((unsigned char)(new))) << 16))
2248
- #define Q6V32_PUT_B3(v, new) (((v) & 0x00ffffff) | (((Q6Vect32)(new)) << 24))
2249
-
2250
- #endif /* !__qdsp6__ */
2251
-
2252
- /* NOTE: All create macros return a Q6Vect32 type */
2253
-
2254
- /* Create from a word */
2255
-
2256
- #define Q6V32_CREATE_W(w) (w)
2257
-
2258
- /* Create from half words */
2259
-
2260
- #ifdef __qdsp6__
2261
-
2262
- #define Q6V32_CREATE_H(h1, h0) \
2263
- __extension__({ \
2264
- union { \
2265
- long long d; \
2266
- short h[2]; \
2267
- } _Q6V32_internal_union; \
2268
- _Q6V32_internal_union.h[0] = (h0); \
2269
- _Q6V32_internal_union.h[1] = (h1); \
2270
- _Q6V32_internal_union.d; \
2271
- })
2272
-
2273
- #else /* !__qdsp6__ */
2274
-
2275
- #define Q6V32_CREATE_H(h1, h0) \
2276
- ((((Q6Vect32)(h1)) << 16) | ((Q6Vect32)((h0) & 0xffff)))
2277
-
2278
- #endif /* !__qdsp6__ */
2279
-
2280
- /* Create from bytes */
2281
- #ifdef __qdsp6__
2282
-
2283
- #define Q6V32_CREATE_B(b3, b2, b1, b0) \
2284
- __extension__({ \
2285
- union { \
2286
- long long d; \
2287
- char b[4]; \
2288
- } _Q6V32_internal_union; \
2289
- _Q6V32_internal_union.b[0] = (b0); \
2290
- _Q6V32_internal_union.b[1] = (b1); \
2291
- _Q6V32_internal_union.b[2] = (b2); \
2292
- _Q6V32_internal_union.b[3] = (b3); \
2293
- _Q6V32_internal_union.d; \
2294
- })
2295
-
2296
- #else /* !__qdsp6__ */
2297
-
2298
- #define Q6V32_CREATE_B(b3, b2, b1, b0) \
2299
- ((((Q6Vect32)(b3)) << 24) | (((Q6Vect32)((b2) & 0xff)) << 16) | \
2300
- (((Q6Vect32)((b1) & 0xff)) << 8) | ((Q6Vect32)((b0) & 0xff)))
2301
-
2302
- #endif /* !__qdsp6__ */
2303
-
2304
- #ifdef __cplusplus
2305
-
2306
- class Q6Vect32C {
2307
- public:
2308
- // Constructors
2309
- Q6Vect32C(int w = 0) : data(w) {};
2310
- Q6Vect32C(short h1, short h0) : data(Q6V32_CREATE_H(h1, h0)) {};
2311
- Q6Vect32C(signed char b3, signed char b2, signed char b1, signed char b0)
2312
- : data(Q6V32_CREATE_B(b3, b2, b1, b0)) {};
2313
- Q6Vect32C(const Q6Vect32C &v) : data(v.data) {};
2314
-
2315
- Q6Vect32C &operator=(const Q6Vect32C &v) {
2316
- data = v.data;
2317
- return *this;
2318
- };
2319
-
2320
- operator int() {
2321
- return data;
2322
- };
2323
-
2324
- // Extract word methods
2325
- int W(void) {
2326
- return Q6V32_GET_W(data);
2327
- };
2328
- unsigned int UW(void) {
2329
- return Q6V32_GET_UW(data);
2330
- };
2331
-
2332
- // Extract half word methods
2333
- short H0(void) {
2334
- return Q6V32_GET_H0(data);
2335
- };
2336
- short H1(void) {
2337
- return Q6V32_GET_H1(data);
2338
- };
2339
- unsigned short UH0(void) {
2340
- return Q6V32_GET_UH0(data);
2341
- };
2342
- unsigned short UH1(void) {
2343
- return Q6V32_GET_UH1(data);
2344
- };
2345
-
2346
- // Extract byte methods
2347
- signed char B0(void) {
2348
- return Q6V32_GET_B0(data);
2349
- };
2350
- signed char B1(void) {
2351
- return Q6V32_GET_B1(data);
2352
- };
2353
- signed char B2(void) {
2354
- return Q6V32_GET_B2(data);
2355
- };
2356
- signed char B3(void) {
2357
- return Q6V32_GET_B3(data);
2358
- };
2359
- unsigned char UB0(void) {
2360
- return Q6V32_GET_UB0(data);
2361
- };
2362
- unsigned char UB1(void) {
2363
- return Q6V32_GET_UB1(data);
2364
- };
2365
- unsigned char UB2(void) {
2366
- return Q6V32_GET_UB2(data);
2367
- };
2368
- unsigned char UB3(void) {
2369
- return Q6V32_GET_UB3(data);
2370
- };
2371
-
2372
- // NOTE: All set methods return a Q6Vect32C type
2373
-
2374
- // Set word method
2375
- Q6Vect32C W(int w) {
2376
- return Q6Vect32C(Q6V32_PUT_W(data, w));
2377
- };
2378
-
2379
- // Set half word methods
2380
- Q6Vect32C H0(short h) {
2381
- return Q6Vect32C(Q6V32_PUT_H0(data, h));
2382
- };
2383
- Q6Vect32C H1(short h) {
2384
- return Q6Vect32C(Q6V32_PUT_H1(data, h));
2385
- };
2386
-
2387
- // Set byte methods
2388
- Q6Vect32C B0(signed char b) {
2389
- return Q6Vect32C(Q6V32_PUT_B0(data, b));
2390
- };
2391
- Q6Vect32C B1(signed char b) {
2392
- return Q6Vect32C(Q6V32_PUT_B1(data, b));
2393
- };
2394
- Q6Vect32C B2(signed char b) {
2395
- return Q6Vect32C(Q6V32_PUT_B2(data, b));
2396
- };
2397
- Q6Vect32C B3(signed char b) {
2398
- return Q6Vect32C(Q6V32_PUT_B3(data, b));
2399
- };
2400
-
2401
- private:
2402
- int data;
2403
- };
2404
-
2405
- #endif /* __cplusplus */
2406
-
2407
- // V65 Vector types
2408
- #if __HVX_ARCH__ >= 65
2409
- #if defined __HVX__ && (__HVX_LENGTH__ == 128)
2410
- typedef long Q6VecPred128 __attribute__((__vector_size__(128)))
2411
- __attribute__((aligned(128)));
2412
-
2413
- typedef long Q6Vect1024 __attribute__((__vector_size__(128)))
2414
- __attribute__((aligned(128)));
2415
-
2416
- typedef long Q6Vect2048 __attribute__((__vector_size__(256)))
2417
- __attribute__((aligned(256)));
2418
-
2419
- #else /* defined __HVX__ && (__HVX_LENGTH__ == 128) */
2420
- #if defined __HVX__ && (__HVX_LENGTH__ == 64)
2421
- typedef long Q6VecPred64 __attribute__((__vector_size__(64)))
2422
- __attribute__((aligned(64)));
2423
-
2424
- typedef long Q6Vect512 __attribute__((__vector_size__(64)))
2425
- __attribute__((aligned(64)));
2426
-
2427
- typedef long Q6Vect1024 __attribute__((__vector_size__(128)))
2428
- __attribute__((aligned(128)));
2429
-
2430
- #endif /* defined __HVX__ && (__HVX_LENGTH__ == 64) */
2431
- #endif /* defined __HVX__ && (__HVX_LENGTH__ == 128) */
2432
- #endif /* __HVX_ARCH__ >= 65 */
2433
-
2434
- /* Predicates */
2435
-
2436
- typedef int Q6Pred;
2437
-
2438
-
2439
- #ifdef __HVX__
2440
-
2441
- // Extract HVX VectorPair macro.
2442
- #define HEXAGON_HVX_GET_W(v) (v)
2443
-
2444
- // Extract HVX Vector macros.
2445
- #define HEXAGON_HVX_GET_V0(v) \
2446
- __extension__({ \
2447
- union { \
2448
- HVX_VectorPair W; \
2449
- HVX_Vector V[2]; \
2450
- } _HEXAGON_HVX_internal_union; \
2451
- _HEXAGON_HVX_internal_union.W = (v); \
2452
- _HEXAGON_HVX_internal_union.V[0]; \
2453
- })
2454
- #define HEXAGON_HVX_GET_V1(v) \
2455
- __extension__({ \
2456
- union { \
2457
- HVX_VectorPair W; \
2458
- HVX_Vector V[2]; \
2459
- } _HEXAGON_HVX_internal_union; \
2460
- _HEXAGON_HVX_internal_union.W = (v); \
2461
- _HEXAGON_HVX_internal_union.V[1]; \
2462
- })
2463
- #define HEXAGON_HVX_GET_P(v) \
2464
- __extension__({ \
2465
- union { \
2466
- HVX_VectorPair W; \
2467
- HVX_VectorPred P[2]; \
2468
- } _HEXAGON_HVX_internal_union; \
2469
- _HEXAGON_HVX_internal_union.W = (v); \
2470
- _HEXAGON_HVX_internal_union.P[0]; \
2471
- })
2472
-
2473
- // Set HVX VectorPair macro.
2474
- #define HEXAGON_HVX_PUT_W(v, new) (new)
2475
-
2476
- // Set HVX Vector macros.
2477
- #define HEXAGON_HVX_PUT_V0(v, new) \
2478
- __extension__({ \
2479
- union { \
2480
- HVX_VectorPair W; \
2481
- HVX_Vector V[2]; \
2482
- } _HEXAGON_HVX_internal_union; \
2483
- _HEXAGON_HVX_internal_union.W = (v); \
2484
- _HEXAGON_HVX_internal_union.V[0] = (new); \
2485
- _HEXAGON_HVX_internal_union.W; \
2486
- })
2487
-
2488
- #define HEXAGON_HVX_PUT_V1(v, new) \
2489
- __extension__({ \
2490
- union { \
2491
- HVX_VectorPair W; \
2492
- HVX_Vector V[2]; \
2493
- } _HEXAGON_HVX_internal_union; \
2494
- _HEXAGON_HVX_internal_union.W = (v); \
2495
- _HEXAGON_HVX_internal_union.V[1] = (new); \
2496
- _HEXAGON_HVX_internal_union.W; \
2497
- })
2498
-
2499
- #define HEXAGON_HVX_PUT_P(v, new) \
2500
- __extension__({ \
2501
- union { \
2502
- HVX_VectorPair W; \
2503
- HVX_VectorPred P[2]; \
2504
- } _HEXAGON_HVX_internal_union; \
2505
- _HEXAGON_HVX_internal_union.W = (v); \
2506
- _HEXAGON_HVX_internal_union.P[0] = (new); \
2507
- _HEXAGON_HVX_internal_union.W; \
2508
- })
2509
-
2510
-
2511
- #define HEXAGON_HVX_CREATE_W(v1, v0) \
2512
- __extension__({ \
2513
- union { \
2514
- HVX_VectorPair W; \
2515
- HVX_Vector V[2]; \
2516
- } _HEXAGON_HVX_internal_union; \
2517
- _HEXAGON_HVX_internal_union.V[0] = (v0); \
2518
- _HEXAGON_HVX_internal_union.V[1] = (v1); \
2519
- _HEXAGON_HVX_internal_union.W; \
2520
- })
2521
-
2522
- #ifdef __cplusplus
2523
-
2524
- class HVX_Vect {
2525
- public:
2526
- // Constructors.
2527
- // Default.
2528
- HVX_Vect() : data(Q6_W_vcombine_VV(Q6_V_vzero(), Q6_V_vzero())){};
2529
-
2530
- // Custom constructors.
2531
- HVX_Vect(HVX_VectorPair W) : data(W){};
2532
- HVX_Vect(HVX_Vector v1, HVX_Vector v0) : data(HEXAGON_HVX_CREATE_W(v1, v0)){};
2533
-
2534
- // Copy constructor.
2535
- HVX_Vect(const HVX_Vect &W) = default;
2536
-
2537
- // Move constructor.
2538
- HVX_Vect(HVX_Vect &&W) = default;
2539
-
2540
- // Assignment operator.
2541
- HVX_Vect &operator=(const HVX_Vect &W) = default;
2542
-
2543
- operator HVX_VectorPair() { return data; };
2544
-
2545
- // Extract VectorPair method.
2546
- HVX_VectorPair W(void) { return HEXAGON_HVX_GET_W(data); };
2547
-
2548
- // Extract Vector methods.
2549
- HVX_Vector V0(void) { return HEXAGON_HVX_GET_V0(data); };
2550
- HVX_Vector V1(void) { return HEXAGON_HVX_GET_V1(data); };
2551
- HVX_VectorPred P(void) { return HEXAGON_HVX_GET_P(data); };
2552
-
2553
- // NOTE: All set methods return a HVX_Vect type.
2554
- // Set HVX VectorPair method.
2555
- HVX_Vect W(HVX_VectorPair w) { return HVX_Vect(HEXAGON_HVX_PUT_W(data, w)); };
2556
-
2557
- // Set HVX Vector methods.
2558
- HVX_Vect V0(HVX_Vector v) { return HVX_Vect(HEXAGON_HVX_PUT_V0(data, v)); };
2559
- HVX_Vect V1(HVX_Vector v) { return HVX_Vect(HEXAGON_HVX_PUT_V1(data, v)); };
2560
- HVX_Vect P(HVX_VectorPred p) { return HVX_Vect(HEXAGON_HVX_PUT_P(data, p)); };
2561
-
2562
- private:
2563
- HVX_VectorPair data;
2564
- };
2565
-
2566
- #endif /* __cplusplus */
2567
- #endif /* __HVX__ */
2568
-
2569
- #define HEXAGON_UDMA_DM0_STATUS_IDLE 0x00000000
2570
- #define HEXAGON_UDMA_DM0_STATUS_RUN 0x00000001
2571
- #define HEXAGON_UDMA_DM0_STATUS_ERROR 0x00000002
2572
- #define HEXAGON_UDMA_DESC_DSTATE_INCOMPLETE 0
2573
- #define HEXAGON_UDMA_DESC_DSTATE_COMPLETE 1
2574
- #define HEXAGON_UDMA_DESC_ORDER_NOORDER 0
2575
- #define HEXAGON_UDMA_DESC_ORDER_ORDER 1
2576
- #define HEXAGON_UDMA_DESC_BYPASS_OFF 0
2577
- #define HEXAGON_UDMA_DESC_BYPASS_ON 1
2578
- #define HEXAGON_UDMA_DESC_COMP_NONE 0
2579
- #define HEXAGON_UDMA_DESC_COMP_DLBC 1
2580
- #define HEXAGON_UDMA_DESC_DESCTYPE_TYPE0 0
2581
- #define HEXAGON_UDMA_DESC_DESCTYPE_TYPE1 1
2582
-
2583
- typedef struct hexagon_udma_descriptor_type0_s
2584
- {
2585
- void *next;
2586
- unsigned int length:24;
2587
- unsigned int desctype:2;
2588
- unsigned int dstcomp:1;
2589
- unsigned int srccomp:1;
2590
- unsigned int dstbypass:1;
2591
- unsigned int srcbypass:1;
2592
- unsigned int order:1;
2593
- unsigned int dstate:1;
2594
- void *src;
2595
- void *dst;
2596
- } hexagon_udma_descriptor_type0_t;
2597
-
2598
- typedef struct hexagon_udma_descriptor_type1_s
2599
- {
2600
- void *next;
2601
- unsigned int length:24;
2602
- unsigned int desctype:2;
2603
- unsigned int dstcomp:1;
2604
- unsigned int srccomp:1;
2605
- unsigned int dstbypass:1;
2606
- unsigned int srcbypass:1;
2607
- unsigned int order:1;
2608
- unsigned int dstate:1;
2609
- void *src;
2610
- void *dst;
2611
- unsigned int allocation:28;
2612
- unsigned int padding:4;
2613
- unsigned int roiwidth:16;
2614
- unsigned int roiheight:16;
2615
- unsigned int srcstride:16;
2616
- unsigned int dststride:16;
2617
- unsigned int srcwidthoffset:16;
2618
- unsigned int dstwidthoffset:16;
2619
- } hexagon_udma_descriptor_type1_t;
2620
-
2621
- #endif /* !HEXAGON_TYPES_H */