casadi 3.7.2__cp314-none-win_amd64.whl

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 (2398) hide show
  1. casadi/__init__.py +92 -0
  2. casadi/_casadi.pyd +0 -0
  3. casadi/blasfeo.lib +0 -0
  4. casadi/casadi-cli.exe +0 -0
  5. casadi/casadi.lib +0 -0
  6. casadi/casadi.py +54468 -0
  7. casadi/cbc.exe +0 -0
  8. casadi/clp.exe +0 -0
  9. casadi/cmake/alpaqa/alpaqaConfig.cmake +24 -0
  10. casadi/cmake/alpaqa/alpaqaConfigVersion.cmake +67 -0
  11. casadi/cmake/alpaqa/alpaqaTargets-release.cmake +19 -0
  12. casadi/cmake/alpaqa/alpaqaTargets.cmake +108 -0
  13. casadi/cmake/casadi-config-version.cmake +11 -0
  14. casadi/cmake/casadi-config.cmake +8 -0
  15. casadi/cmake/casadi-targets-release.cmake +19 -0
  16. casadi/cmake/casadi-targets.cmake +94 -0
  17. casadi/cmake/ghc_filesystem/ghc_filesystem-config-version.cmake +76 -0
  18. casadi/cmake/ghc_filesystem/ghc_filesystem-config.cmake +30 -0
  19. casadi/cmake/ghc_filesystem/ghc_filesystem-targets.cmake +99 -0
  20. casadi/cmake/highs/highs-config.cmake +17 -0
  21. casadi/cmake/highs/highs-targets-release.cmake +28 -0
  22. casadi/cmake/highs/highs-targets.cmake +105 -0
  23. casadi/cmake/libzip/libzip-config-version.cmake +48 -0
  24. casadi/cmake/libzip/libzip-config.cmake +69 -0
  25. casadi/cmake/libzip/libzip-targets-release.cmake +19 -0
  26. casadi/cmake/libzip/libzip-targets.cmake +99 -0
  27. casadi/cmake/libzip/modules/FindMbedTLS.cmake +141 -0
  28. casadi/cmake/libzip/modules/FindNettle.cmake +141 -0
  29. casadi/cmake/libzip/modules/Findzstd.cmake +186 -0
  30. casadi/cmake/osqp/osqp-config.cmake +1 -0
  31. casadi/cmake/osqp/osqp-targets-release.cmake +29 -0
  32. casadi/cmake/osqp/osqp-targets.cmake +101 -0
  33. casadi/cmake/proxsuite/find-external/Simde/FindSimde.cmake +39 -0
  34. casadi/cmake/proxsuite/proxsuiteConfig.cmake +177 -0
  35. casadi/cmake/proxsuite/proxsuiteConfigVersion.cmake +67 -0
  36. casadi/cmake/proxsuite/proxsuiteTargets.cmake +107 -0
  37. casadi/cmake/qdldl/qdldl-config.cmake +1 -0
  38. casadi/cmake/qdldl/qdldl-targets-release.cmake +29 -0
  39. casadi/cmake/qdldl/qdldl-targets.cmake +101 -0
  40. casadi/cmake/sleqp/sleqp-config-version.cmake +67 -0
  41. casadi/cmake/sleqp/sleqp-config.cmake +1 -0
  42. casadi/cmake/sleqp/sleqp-targets-release.cmake +20 -0
  43. casadi/cmake/sleqp/sleqp-targets.cmake +94 -0
  44. casadi/cmake/trlib/trlib-config-release.cmake +19 -0
  45. casadi/cmake/trlib/trlib-config-version.cmake +59 -0
  46. casadi/cmake/trlib/trlib-config.cmake +99 -0
  47. casadi/daqp.lib +0 -0
  48. casadi/fatrop.lib +0 -0
  49. casadi/highs.exe +0 -0
  50. casadi/highs.lib +0 -0
  51. casadi/hpipm.lib +0 -0
  52. casadi/include/alpaqa/accelerators/anderson.hpp +133 -0
  53. casadi/include/alpaqa/accelerators/internal/anderson-helpers.hpp +92 -0
  54. casadi/include/alpaqa/accelerators/internal/limited-memory-qr.hpp +295 -0
  55. casadi/include/alpaqa/accelerators/lbfgs.hpp +244 -0
  56. casadi/include/alpaqa/accelerators/steihaugcg.hpp +143 -0
  57. casadi/include/alpaqa/alpaqa.hpp +3 -0
  58. casadi/include/alpaqa/casadi/CasADiControlProblem.hpp +185 -0
  59. casadi/include/alpaqa/casadi/CasADiFunctionWrapper.hpp +104 -0
  60. casadi/include/alpaqa/casadi/CasADiProblem.hpp +102 -0
  61. casadi/include/alpaqa/casadi-loader-export.hpp +15 -0
  62. casadi/include/alpaqa/casadi-ocp-loader-export.hpp +15 -0
  63. casadi/include/alpaqa/config/config.hpp +165 -0
  64. casadi/include/alpaqa/dl/dl-problem.h +476 -0
  65. casadi/include/alpaqa/dl/dl-problem.hpp +301 -0
  66. casadi/include/alpaqa/export.h +42 -0
  67. casadi/include/alpaqa/export.hpp +30 -0
  68. casadi/include/alpaqa/implementation/accelerators/lbfgs.tpp +240 -0
  69. casadi/include/alpaqa/implementation/casadi/CasADiControlProblem.tpp +594 -0
  70. casadi/include/alpaqa/implementation/casadi/CasADiLoader-util.hpp +50 -0
  71. casadi/include/alpaqa/implementation/casadi/CasADiProblem.tpp +425 -0
  72. casadi/include/alpaqa/implementation/inner/directions/panoc/structured-lbfgs.tpp +164 -0
  73. casadi/include/alpaqa/implementation/inner/panoc-helpers.tpp +389 -0
  74. casadi/include/alpaqa/implementation/inner/panoc-ocp.tpp +798 -0
  75. casadi/include/alpaqa/implementation/inner/panoc.tpp +448 -0
  76. casadi/include/alpaqa/implementation/inner/pantr.tpp +474 -0
  77. casadi/include/alpaqa/implementation/inner/zerofpr.tpp +482 -0
  78. casadi/include/alpaqa/implementation/outer/alm.tpp +228 -0
  79. casadi/include/alpaqa/implementation/outer/internal/alm-helpers.tpp +80 -0
  80. casadi/include/alpaqa/implementation/params/params.tpp +158 -0
  81. casadi/include/alpaqa/implementation/problem/ocproblem.tpp +56 -0
  82. casadi/include/alpaqa/implementation/problem/type-erased-problem.tpp +211 -0
  83. casadi/include/alpaqa/implementation/util/io/csv.tpp +120 -0
  84. casadi/include/alpaqa/implementation/util/print.tpp +151 -0
  85. casadi/include/alpaqa/inner/directions/panoc/anderson.hpp +98 -0
  86. casadi/include/alpaqa/inner/directions/panoc/lbfgs.hpp +94 -0
  87. casadi/include/alpaqa/inner/directions/panoc/structured-lbfgs.hpp +146 -0
  88. casadi/include/alpaqa/inner/directions/panoc/structured-newton.hpp +264 -0
  89. casadi/include/alpaqa/inner/directions/panoc-direction-update.hpp +96 -0
  90. casadi/include/alpaqa/inner/directions/panoc-ocp/lqr.hpp +181 -0
  91. casadi/include/alpaqa/inner/directions/panoc-ocp/ocp-vars.hpp +492 -0
  92. casadi/include/alpaqa/inner/directions/pantr/newton-tr.hpp +192 -0
  93. casadi/include/alpaqa/inner/directions/pantr/pantr-direction.hpp +99 -0
  94. casadi/include/alpaqa/inner/inner-solve-options.hpp +30 -0
  95. casadi/include/alpaqa/inner/internal/lipschitz.hpp +27 -0
  96. casadi/include/alpaqa/inner/internal/panoc-helpers.hpp +10 -0
  97. casadi/include/alpaqa/inner/internal/panoc-stop-crit.hpp +124 -0
  98. casadi/include/alpaqa/inner/internal/solverstatus.hpp +42 -0
  99. casadi/include/alpaqa/inner/panoc-ocp.hpp +302 -0
  100. casadi/include/alpaqa/inner/panoc.hpp +274 -0
  101. casadi/include/alpaqa/inner/pantr.hpp +284 -0
  102. casadi/include/alpaqa/inner/zerofpr.hpp +274 -0
  103. casadi/include/alpaqa/ipopt/ipopt-adapter.hpp +81 -0
  104. casadi/include/alpaqa/ipopt/ipopt-enums.hpp +35 -0
  105. casadi/include/alpaqa/lbfgsb/lbfgsb-adapter.hpp +111 -0
  106. casadi/include/alpaqa/newton-tr-pantr-alm.hpp +27 -0
  107. casadi/include/alpaqa/outer/alm.hpp +190 -0
  108. casadi/include/alpaqa/outer/internal/alm-helpers.hpp +10 -0
  109. casadi/include/alpaqa/panoc-alm.hpp +27 -0
  110. casadi/include/alpaqa/panoc-anderson-alm.hpp +27 -0
  111. casadi/include/alpaqa/params/params.hpp +60 -0
  112. casadi/include/alpaqa/problem/box-constr-problem.hpp +220 -0
  113. casadi/include/alpaqa/problem/box.hpp +82 -0
  114. casadi/include/alpaqa/problem/functional-problem.hpp +73 -0
  115. casadi/include/alpaqa/problem/kkt-error.hpp +43 -0
  116. casadi/include/alpaqa/problem/ocproblem-counters.hpp +116 -0
  117. casadi/include/alpaqa/problem/ocproblem.hpp +662 -0
  118. casadi/include/alpaqa/problem/problem-counters.hpp +116 -0
  119. casadi/include/alpaqa/problem/problem-with-counters.hpp +141 -0
  120. casadi/include/alpaqa/problem/type-erased-problem.hpp +874 -0
  121. casadi/include/alpaqa/problem/unconstr-problem.hpp +37 -0
  122. casadi/include/alpaqa/structured-panoc-alm.hpp +27 -0
  123. casadi/include/alpaqa/structured-zerofpr-alm.hpp +27 -0
  124. casadi/include/alpaqa/util/alloc-check.hpp +23 -0
  125. casadi/include/alpaqa/util/atomic-stop-signal.hpp +24 -0
  126. casadi/include/alpaqa/util/check-dim.hpp +64 -0
  127. casadi/include/alpaqa/util/copyable_unique_ptr.hpp +32 -0
  128. casadi/include/alpaqa/util/demangled-typename.hpp +9 -0
  129. casadi/include/alpaqa/util/enumerate.hpp +70 -0
  130. casadi/include/alpaqa/util/float.hpp +25 -0
  131. casadi/include/alpaqa/util/index-set.hpp +97 -0
  132. casadi/include/alpaqa/util/io/csv.hpp +43 -0
  133. casadi/include/alpaqa/util/iter-adapter.hpp +68 -0
  134. casadi/include/alpaqa/util/max-history.hpp +47 -0
  135. casadi/include/alpaqa/util/noop-delete.hpp +15 -0
  136. casadi/include/alpaqa/util/not-implemented.hpp +12 -0
  137. casadi/include/alpaqa/util/print.hpp +78 -0
  138. casadi/include/alpaqa/util/quadmath/quadmath-print.hpp +20 -0
  139. casadi/include/alpaqa/util/quadmath/quadmath.hpp +137 -0
  140. casadi/include/alpaqa/util/required-method.hpp +29 -0
  141. casadi/include/alpaqa/util/ringbuffer.hpp +212 -0
  142. casadi/include/alpaqa/util/set-intersection.hpp +129 -0
  143. casadi/include/alpaqa/util/sparse-ops.hpp +164 -0
  144. casadi/include/alpaqa/util/timed.hpp +22 -0
  145. casadi/include/alpaqa/util/type-erasure.hpp +568 -0
  146. casadi/include/alpaqa/util/type-traits.hpp +58 -0
  147. casadi/include/alpaqa/zerofpr-alm.hpp +27 -0
  148. casadi/include/alpaqa/zerofpr-anderson-alm.hpp +27 -0
  149. casadi/include/alpaqa-version.h +8 -0
  150. casadi/include/blasfeo.h +52 -0
  151. casadi/include/blasfeo_block_size.h +447 -0
  152. casadi/include/blasfeo_common.h +274 -0
  153. casadi/include/blasfeo_d_aux.h +255 -0
  154. casadi/include/blasfeo_d_aux_ext_dep.h +145 -0
  155. casadi/include/blasfeo_d_aux_ext_dep_ref.h +84 -0
  156. casadi/include/blasfeo_d_aux_old.h +75 -0
  157. casadi/include/blasfeo_d_aux_ref.h +208 -0
  158. casadi/include/blasfeo_d_aux_test.h +226 -0
  159. casadi/include/blasfeo_d_blas.h +46 -0
  160. casadi/include/blasfeo_d_blas_api.h +281 -0
  161. casadi/include/blasfeo_d_blasfeo_api.h +364 -0
  162. casadi/include/blasfeo_d_blasfeo_api_ref.h +147 -0
  163. casadi/include/blasfeo_d_blasfeo_hp_api.h +84 -0
  164. casadi/include/blasfeo_d_blasfeo_ref_api.h +283 -0
  165. casadi/include/blasfeo_d_kernel.h +1321 -0
  166. casadi/include/blasfeo_i_aux_ext_dep.h +69 -0
  167. casadi/include/blasfeo_m_aux.h +57 -0
  168. casadi/include/blasfeo_memory.h +62 -0
  169. casadi/include/blasfeo_naming.h +77 -0
  170. casadi/include/blasfeo_processor_features.h +88 -0
  171. casadi/include/blasfeo_s_aux.h +168 -0
  172. casadi/include/blasfeo_s_aux_ext_dep.h +141 -0
  173. casadi/include/blasfeo_s_aux_ext_dep_ref.h +82 -0
  174. casadi/include/blasfeo_s_aux_old.h +64 -0
  175. casadi/include/blasfeo_s_aux_ref.h +147 -0
  176. casadi/include/blasfeo_s_aux_test.h +177 -0
  177. casadi/include/blasfeo_s_blas.h +46 -0
  178. casadi/include/blasfeo_s_blas_api.h +182 -0
  179. casadi/include/blasfeo_s_blasfeo_api.h +284 -0
  180. casadi/include/blasfeo_s_blasfeo_api_ref.h +135 -0
  181. casadi/include/blasfeo_s_blasfeo_ref_api.h +252 -0
  182. casadi/include/blasfeo_s_kernel.h +692 -0
  183. casadi/include/blasfeo_stdlib.h +62 -0
  184. casadi/include/blasfeo_target.h +73 -0
  185. casadi/include/blasfeo_timing.h +114 -0
  186. casadi/include/blasfeo_v_aux_ext_dep.h +83 -0
  187. casadi/include/casadi/casadi.hpp +31 -0
  188. casadi/include/casadi/casadi.i +4920 -0
  189. casadi/include/casadi/casadi_c.h +138 -0
  190. casadi/include/casadi/casadi_numpy.hpp +97 -0
  191. casadi/include/casadi/config.h +46 -0
  192. casadi/include/casadi/core/archiver.hpp +58 -0
  193. casadi/include/casadi/core/blazing_spline.hpp +47 -0
  194. casadi/include/casadi/core/calculus.hpp +1805 -0
  195. casadi/include/casadi/core/callback.hpp +235 -0
  196. casadi/include/casadi/core/casadi_common.hpp +355 -0
  197. casadi/include/casadi/core/casadi_enum.hpp +90 -0
  198. casadi/include/casadi/core/casadi_export.h +42 -0
  199. casadi/include/casadi/core/casadi_interrupt.hpp +83 -0
  200. casadi/include/casadi/core/casadi_limits.hpp +104 -0
  201. casadi/include/casadi/core/casadi_logger.hpp +134 -0
  202. casadi/include/casadi/core/casadi_meta.hpp +122 -0
  203. casadi/include/casadi/core/casadi_misc.hpp +1022 -0
  204. casadi/include/casadi/core/casadi_types.hpp +66 -0
  205. casadi/include/casadi/core/code_generator.hpp +1071 -0
  206. casadi/include/casadi/core/conic.hpp +213 -0
  207. casadi/include/casadi/core/core.hpp +75 -0
  208. casadi/include/casadi/core/dae_builder.hpp +885 -0
  209. casadi/include/casadi/core/dm.hpp +90 -0
  210. casadi/include/casadi/core/dm_fwd.hpp +39 -0
  211. casadi/include/casadi/core/dple.hpp +138 -0
  212. casadi/include/casadi/core/exception.hpp +167 -0
  213. casadi/include/casadi/core/expm.hpp +84 -0
  214. casadi/include/casadi/core/external.hpp +70 -0
  215. casadi/include/casadi/core/filesystem.hpp +58 -0
  216. casadi/include/casadi/core/fmu.hpp +270 -0
  217. casadi/include/casadi/core/function.hpp +1389 -0
  218. casadi/include/casadi/core/generic_expression.hpp +760 -0
  219. casadi/include/casadi/core/generic_matrix.hpp +1805 -0
  220. casadi/include/casadi/core/generic_shared.hpp +395 -0
  221. casadi/include/casadi/core/generic_shared_impl.hpp +218 -0
  222. casadi/include/casadi/core/generic_shared_internal.hpp +215 -0
  223. casadi/include/casadi/core/generic_type.hpp +314 -0
  224. casadi/include/casadi/core/global_options.hpp +107 -0
  225. casadi/include/casadi/core/im.hpp +52 -0
  226. casadi/include/casadi/core/im_fwd.hpp +35 -0
  227. casadi/include/casadi/core/importer.hpp +221 -0
  228. casadi/include/casadi/core/integration_tools.hpp +292 -0
  229. casadi/include/casadi/core/integrator.hpp +290 -0
  230. casadi/include/casadi/core/interpolant.hpp +163 -0
  231. casadi/include/casadi/core/linsol.hpp +171 -0
  232. casadi/include/casadi/core/matrix_decl.hpp +1423 -0
  233. casadi/include/casadi/core/matrix_fwd.hpp +37 -0
  234. casadi/include/casadi/core/mx.hpp +1014 -0
  235. casadi/include/casadi/core/nlp_builder.hpp +163 -0
  236. casadi/include/casadi/core/nlp_tools.hpp +124 -0
  237. casadi/include/casadi/core/nlpsol.hpp +234 -0
  238. casadi/include/casadi/core/nonzeros.hpp +111 -0
  239. casadi/include/casadi/core/options.hpp +122 -0
  240. casadi/include/casadi/core/optistack.hpp +704 -0
  241. casadi/include/casadi/core/polynomial.hpp +126 -0
  242. casadi/include/casadi/core/printable.hpp +81 -0
  243. casadi/include/casadi/core/resource.hpp +107 -0
  244. casadi/include/casadi/core/rootfinder.hpp +176 -0
  245. casadi/include/casadi/core/runtime/casadi_axpy.hpp +8 -0
  246. casadi/include/casadi/core/runtime/casadi_bfgs.hpp +49 -0
  247. casadi/include/casadi/core/runtime/casadi_bilin.hpp +42 -0
  248. casadi/include/casadi/core/runtime/casadi_blazing_1d_boor_eval.hpp +112 -0
  249. casadi/include/casadi/core/runtime/casadi_blazing_2d_boor_eval.hpp +311 -0
  250. casadi/include/casadi/core/runtime/casadi_blazing_3d_boor_eval.hpp +645 -0
  251. casadi/include/casadi/core/runtime/casadi_blazing_de_boor.hpp +101 -0
  252. casadi/include/casadi/core/runtime/casadi_bound_consistency.hpp +51 -0
  253. casadi/include/casadi/core/runtime/casadi_cache.hpp +59 -0
  254. casadi/include/casadi/core/runtime/casadi_clear.hpp +27 -0
  255. casadi/include/casadi/core/runtime/casadi_clip_max.hpp +33 -0
  256. casadi/include/casadi/core/runtime/casadi_clip_min.hpp +33 -0
  257. casadi/include/casadi/core/runtime/casadi_convexify.hpp +182 -0
  258. casadi/include/casadi/core/runtime/casadi_copy.hpp +31 -0
  259. casadi/include/casadi/core/runtime/casadi_cvx.hpp +463 -0
  260. casadi/include/casadi/core/runtime/casadi_de_boor.hpp +36 -0
  261. casadi/include/casadi/core/runtime/casadi_dense_lsqr.hpp +247 -0
  262. casadi/include/casadi/core/runtime/casadi_densify.hpp +48 -0
  263. casadi/include/casadi/core/runtime/casadi_dot.hpp +27 -0
  264. casadi/include/casadi/core/runtime/casadi_feasiblesqpmethod.hpp +208 -0
  265. casadi/include/casadi/core/runtime/casadi_file_slurp.hpp +32 -0
  266. casadi/include/casadi/core/runtime/casadi_fill.hpp +27 -0
  267. casadi/include/casadi/core/runtime/casadi_finite_diff.hpp +345 -0
  268. casadi/include/casadi/core/runtime/casadi_flip.hpp +33 -0
  269. casadi/include/casadi/core/runtime/casadi_getu.hpp +35 -0
  270. casadi/include/casadi/core/runtime/casadi_iamax.hpp +36 -0
  271. casadi/include/casadi/core/runtime/casadi_interpn.hpp +39 -0
  272. casadi/include/casadi/core/runtime/casadi_interpn_grad.hpp +72 -0
  273. casadi/include/casadi/core/runtime/casadi_interpn_interpolate.hpp +43 -0
  274. casadi/include/casadi/core/runtime/casadi_interpn_weights.hpp +39 -0
  275. casadi/include/casadi/core/runtime/casadi_ipqp.hpp +868 -0
  276. casadi/include/casadi/core/runtime/casadi_jac.hpp +186 -0
  277. casadi/include/casadi/core/runtime/casadi_kkt.hpp +67 -0
  278. casadi/include/casadi/core/runtime/casadi_kron.hpp +50 -0
  279. casadi/include/casadi/core/runtime/casadi_ldl.hpp +109 -0
  280. casadi/include/casadi/core/runtime/casadi_logsumexp.hpp +41 -0
  281. casadi/include/casadi/core/runtime/casadi_low.hpp +65 -0
  282. casadi/include/casadi/core/runtime/casadi_lsqr.hpp +247 -0
  283. casadi/include/casadi/core/runtime/casadi_masked_norm_inf.hpp +33 -0
  284. casadi/include/casadi/core/runtime/casadi_max_viol.hpp +37 -0
  285. casadi/include/casadi/core/runtime/casadi_mmax.hpp +28 -0
  286. casadi/include/casadi/core/runtime/casadi_mmin.hpp +29 -0
  287. casadi/include/casadi/core/runtime/casadi_mtimes.hpp +75 -0
  288. casadi/include/casadi/core/runtime/casadi_mv.hpp +46 -0
  289. casadi/include/casadi/core/runtime/casadi_mv_dense.hpp +39 -0
  290. casadi/include/casadi/core/runtime/casadi_nd_boor_dual_eval.hpp +127 -0
  291. casadi/include/casadi/core/runtime/casadi_nd_boor_eval.hpp +120 -0
  292. casadi/include/casadi/core/runtime/casadi_newton.hpp +66 -0
  293. casadi/include/casadi/core/runtime/casadi_nlp.hpp +295 -0
  294. casadi/include/casadi/core/runtime/casadi_norm_1.hpp +29 -0
  295. casadi/include/casadi/core/runtime/casadi_norm_2.hpp +24 -0
  296. casadi/include/casadi/core/runtime/casadi_norm_inf.hpp +28 -0
  297. casadi/include/casadi/core/runtime/casadi_norm_inf_mul.hpp +105 -0
  298. casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
  299. casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
  300. casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
  301. casadi/include/casadi/core/runtime/casadi_polyval.hpp +29 -0
  302. casadi/include/casadi/core/runtime/casadi_print_canonical.hpp +55 -0
  303. casadi/include/casadi/core/runtime/casadi_print_scalar.hpp +25 -0
  304. casadi/include/casadi/core/runtime/casadi_print_vector.hpp +32 -0
  305. casadi/include/casadi/core/runtime/casadi_printme.hpp +26 -0
  306. casadi/include/casadi/core/runtime/casadi_project.hpp +39 -0
  307. casadi/include/casadi/core/runtime/casadi_qp.hpp +86 -0
  308. casadi/include/casadi/core/runtime/casadi_qr.hpp +272 -0
  309. casadi/include/casadi/core/runtime/casadi_qrqp.hpp +1239 -0
  310. casadi/include/casadi/core/runtime/casadi_rank1.hpp +40 -0
  311. casadi/include/casadi/core/runtime/casadi_regularize.hpp +73 -0
  312. casadi/include/casadi/core/runtime/casadi_runtime.hpp +318 -0
  313. casadi/include/casadi/core/runtime/casadi_scal.hpp +26 -0
  314. casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
  315. casadi/include/casadi/core/runtime/casadi_sparsify.hpp +42 -0
  316. casadi/include/casadi/core/runtime/casadi_sparsity.hpp +24 -0
  317. casadi/include/casadi/core/runtime/casadi_sqpmethod.hpp +178 -0
  318. casadi/include/casadi/core/runtime/casadi_sum.hpp +31 -0
  319. casadi/include/casadi/core/runtime/casadi_sum_viol.hpp +37 -0
  320. casadi/include/casadi/core/runtime/casadi_swap.hpp +32 -0
  321. casadi/include/casadi/core/runtime/casadi_trans.hpp +35 -0
  322. casadi/include/casadi/core/runtime/casadi_tri_project.hpp +37 -0
  323. casadi/include/casadi/core/runtime/casadi_trilsolve.hpp +81 -0
  324. casadi/include/casadi/core/runtime/casadi_triusolve.hpp +81 -0
  325. casadi/include/casadi/core/runtime/casadi_vector_fmax.hpp +28 -0
  326. casadi/include/casadi/core/runtime/casadi_vector_fmin.hpp +28 -0
  327. casadi/include/casadi/core/runtime/casadi_vfmax.hpp +28 -0
  328. casadi/include/casadi/core/runtime/casadi_vfmin.hpp +28 -0
  329. casadi/include/casadi/core/runtime/shared.hpp +261 -0
  330. casadi/include/casadi/core/serializer.hpp +264 -0
  331. casadi/include/casadi/core/serializing_stream.hpp +336 -0
  332. casadi/include/casadi/core/shared_object.hpp +182 -0
  333. casadi/include/casadi/core/slice.hpp +149 -0
  334. casadi/include/casadi/core/sparsity.hpp +1507 -0
  335. casadi/include/casadi/core/sparsity_interface.hpp +763 -0
  336. casadi/include/casadi/core/submatrix.hpp +156 -0
  337. casadi/include/casadi/core/sx.hpp +244 -0
  338. casadi/include/casadi/core/sx_elem.hpp +376 -0
  339. casadi/include/casadi/core/sx_fwd.hpp +45 -0
  340. casadi/include/casadi/core/timing.hpp +98 -0
  341. casadi/include/casadi/core/tools.hpp +67 -0
  342. casadi/include/casadi/core/xml_file.hpp +93 -0
  343. casadi/include/casadi/core/xml_node.hpp +212 -0
  344. casadi/include/casadi/doc.i +62244 -0
  345. casadi/include/casadi/doc_merged.i +38499 -0
  346. casadi/include/casadi/mem.h +311 -0
  347. casadi/include/casadi/valgrind-casadi.supp +649 -0
  348. casadi/include/casadi/valgrind-python.supp +3886 -0
  349. casadi/include/coin/BonArraysHelpers.hpp +52 -0
  350. casadi/include/coin/BonAuxInfos.hpp +110 -0
  351. casadi/include/coin/BonBabInfos.hpp +57 -0
  352. casadi/include/coin/BonBabSetupBase.hpp +386 -0
  353. casadi/include/coin/BonBonminSetup.hpp +95 -0
  354. casadi/include/coin/BonBranchingTQP.hpp +197 -0
  355. casadi/include/coin/BonCbc.hpp +127 -0
  356. casadi/include/coin/BonCbcLpStrategy.hpp +45 -0
  357. casadi/include/coin/BonCbcNlpStrategy.hpp +98 -0
  358. casadi/include/coin/BonCbcNode.hpp +133 -0
  359. casadi/include/coin/BonChooseVariable.hpp +345 -0
  360. casadi/include/coin/BonCurvBranchingSolver.hpp +77 -0
  361. casadi/include/coin/BonCutStrengthener.hpp +244 -0
  362. casadi/include/coin/BonDiver.hpp +424 -0
  363. casadi/include/coin/BonDummyHeuristic.hpp +53 -0
  364. casadi/include/coin/BonDummyPump.hpp +43 -0
  365. casadi/include/coin/BonEcpCuts.hpp +97 -0
  366. casadi/include/coin/BonExitCodes.hpp +12 -0
  367. casadi/include/coin/BonFixAndSolveHeuristic.hpp +43 -0
  368. casadi/include/coin/BonGuessHeuristic.hpp +46 -0
  369. casadi/include/coin/BonHeuristicDive.hpp +88 -0
  370. casadi/include/coin/BonHeuristicDiveFractional.hpp +67 -0
  371. casadi/include/coin/BonHeuristicDiveMIP.hpp +83 -0
  372. casadi/include/coin/BonHeuristicDiveMIPFractional.hpp +67 -0
  373. casadi/include/coin/BonHeuristicDiveMIPVectorLength.hpp +74 -0
  374. casadi/include/coin/BonHeuristicDiveVectorLength.hpp +74 -0
  375. casadi/include/coin/BonHeuristicFPump.hpp +111 -0
  376. casadi/include/coin/BonHeuristicLocalBranching.hpp +59 -0
  377. casadi/include/coin/BonHeuristicRINS.hpp +55 -0
  378. casadi/include/coin/BonIpoptInteriorWarmStarter.hpp +103 -0
  379. casadi/include/coin/BonIpoptSolver.hpp +188 -0
  380. casadi/include/coin/BonIpoptWarmStart.hpp +148 -0
  381. casadi/include/coin/BonLinearCutsGenerator.hpp +75 -0
  382. casadi/include/coin/BonLocalSolverBasedHeuristic.hpp +102 -0
  383. casadi/include/coin/BonLpBranchingSolver.hpp +80 -0
  384. casadi/include/coin/BonMilpRounding.hpp +74 -0
  385. casadi/include/coin/BonOACutGenerator2.hpp +56 -0
  386. casadi/include/coin/BonOAMessages.hpp +44 -0
  387. casadi/include/coin/BonOaDecBase.hpp +297 -0
  388. casadi/include/coin/BonOaFeasChecker.hpp +73 -0
  389. casadi/include/coin/BonOaNlpOptim.hpp +116 -0
  390. casadi/include/coin/BonOsiTMINLPInterface.hpp +1342 -0
  391. casadi/include/coin/BonOuterApprox.hpp +123 -0
  392. casadi/include/coin/BonPseudoCosts.hpp +91 -0
  393. casadi/include/coin/BonPumpForMinlp.hpp +45 -0
  394. casadi/include/coin/BonQuadCut.hpp +217 -0
  395. casadi/include/coin/BonQuadRow.hpp +122 -0
  396. casadi/include/coin/BonRegisteredOptions.hpp +225 -0
  397. casadi/include/coin/BonStrongBranchingSolver.hpp +69 -0
  398. casadi/include/coin/BonSubMipSolver.hpp +143 -0
  399. casadi/include/coin/BonTMINLP.hpp +420 -0
  400. casadi/include/coin/BonTMINLP2OsiLP.hpp +164 -0
  401. casadi/include/coin/BonTMINLP2Quad.hpp +191 -0
  402. casadi/include/coin/BonTMINLP2TNLP.hpp +509 -0
  403. casadi/include/coin/BonTMINLPLinObj.hpp +216 -0
  404. casadi/include/coin/BonTMatrix.hpp +167 -0
  405. casadi/include/coin/BonTNLP2FPNLP.hpp +264 -0
  406. casadi/include/coin/BonTNLPSolver.hpp +241 -0
  407. casadi/include/coin/BonTypes.hpp +95 -0
  408. casadi/include/coin/BonminConfig.h +19 -0
  409. casadi/include/coin/CbcBranchActual.hpp +26 -0
  410. casadi/include/coin/CbcBranchAllDifferent.hpp +61 -0
  411. casadi/include/coin/CbcBranchBase.hpp +79 -0
  412. casadi/include/coin/CbcBranchCut.hpp +182 -0
  413. casadi/include/coin/CbcBranchDecision.hpp +135 -0
  414. casadi/include/coin/CbcBranchDefaultDecision.hpp +101 -0
  415. casadi/include/coin/CbcBranchDynamic.hpp +210 -0
  416. casadi/include/coin/CbcBranchLotsize.hpp +249 -0
  417. casadi/include/coin/CbcBranchToFixLots.hpp +94 -0
  418. casadi/include/coin/CbcBranchingObject.hpp +245 -0
  419. casadi/include/coin/CbcClique.hpp +309 -0
  420. casadi/include/coin/CbcCompare.hpp +46 -0
  421. casadi/include/coin/CbcCompareActual.hpp +16 -0
  422. casadi/include/coin/CbcCompareBase.hpp +155 -0
  423. casadi/include/coin/CbcCompareDefault.hpp +129 -0
  424. casadi/include/coin/CbcCompareDepth.hpp +48 -0
  425. casadi/include/coin/CbcCompareEstimate.hpp +48 -0
  426. casadi/include/coin/CbcCompareObjective.hpp +50 -0
  427. casadi/include/coin/CbcConfig.h +18 -0
  428. casadi/include/coin/CbcConsequence.hpp +50 -0
  429. casadi/include/coin/CbcCountRowCut.hpp +176 -0
  430. casadi/include/coin/CbcCutGenerator.hpp +550 -0
  431. casadi/include/coin/CbcCutModifier.hpp +59 -0
  432. casadi/include/coin/CbcCutSubsetModifier.hpp +69 -0
  433. casadi/include/coin/CbcDummyBranchingObject.hpp +83 -0
  434. casadi/include/coin/CbcEventHandler.hpp +250 -0
  435. casadi/include/coin/CbcFathom.hpp +136 -0
  436. casadi/include/coin/CbcFathomDynamicProgramming.hpp +177 -0
  437. casadi/include/coin/CbcFeasibilityBase.hpp +60 -0
  438. casadi/include/coin/CbcFixVariable.hpp +68 -0
  439. casadi/include/coin/CbcFollowOn.hpp +207 -0
  440. casadi/include/coin/CbcFullNodeInfo.hpp +171 -0
  441. casadi/include/coin/CbcGeneral.hpp +60 -0
  442. casadi/include/coin/CbcGeneralDepth.hpp +289 -0
  443. casadi/include/coin/CbcHeuristic.hpp +735 -0
  444. casadi/include/coin/CbcHeuristicDINS.hpp +98 -0
  445. casadi/include/coin/CbcHeuristicDW.hpp +374 -0
  446. casadi/include/coin/CbcHeuristicDive.hpp +198 -0
  447. casadi/include/coin/CbcHeuristicDiveCoefficient.hpp +52 -0
  448. casadi/include/coin/CbcHeuristicDiveFractional.hpp +52 -0
  449. casadi/include/coin/CbcHeuristicDiveGuided.hpp +55 -0
  450. casadi/include/coin/CbcHeuristicDiveLineSearch.hpp +52 -0
  451. casadi/include/coin/CbcHeuristicDivePseudoCost.hpp +60 -0
  452. casadi/include/coin/CbcHeuristicDiveVectorLength.hpp +52 -0
  453. casadi/include/coin/CbcHeuristicFPump.hpp +375 -0
  454. casadi/include/coin/CbcHeuristicGreedy.hpp +289 -0
  455. casadi/include/coin/CbcHeuristicLocal.hpp +276 -0
  456. casadi/include/coin/CbcHeuristicPivotAndFix.hpp +58 -0
  457. casadi/include/coin/CbcHeuristicRENS.hpp +79 -0
  458. casadi/include/coin/CbcHeuristicRINS.hpp +106 -0
  459. casadi/include/coin/CbcHeuristicRandRound.hpp +58 -0
  460. casadi/include/coin/CbcHeuristicVND.hpp +95 -0
  461. casadi/include/coin/CbcLinked.hpp +1443 -0
  462. casadi/include/coin/CbcMessage.hpp +94 -0
  463. casadi/include/coin/CbcMipStartIO.hpp +29 -0
  464. casadi/include/coin/CbcModel.hpp +3296 -0
  465. casadi/include/coin/CbcNWay.hpp +171 -0
  466. casadi/include/coin/CbcNode.hpp +380 -0
  467. casadi/include/coin/CbcNodeInfo.hpp +377 -0
  468. casadi/include/coin/CbcObject.hpp +288 -0
  469. casadi/include/coin/CbcObjectUpdateData.hpp +63 -0
  470. casadi/include/coin/CbcOrClpParam.cpp +4321 -0
  471. casadi/include/coin/CbcOrClpParam.hpp +585 -0
  472. casadi/include/coin/CbcParam.hpp +338 -0
  473. casadi/include/coin/CbcPartialNodeInfo.hpp +116 -0
  474. casadi/include/coin/CbcSOS.hpp +290 -0
  475. casadi/include/coin/CbcSimpleInteger.hpp +299 -0
  476. casadi/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp +619 -0
  477. casadi/include/coin/CbcSimpleIntegerPseudoCost.hpp +122 -0
  478. casadi/include/coin/CbcSolver.hpp +460 -0
  479. casadi/include/coin/CbcStrategy.hpp +269 -0
  480. casadi/include/coin/CbcSubProblem.hpp +84 -0
  481. casadi/include/coin/CbcTree.hpp +493 -0
  482. casadi/include/coin/CbcTreeLocal.hpp +393 -0
  483. casadi/include/coin/Cbc_C_Interface.h +904 -0
  484. casadi/include/coin/Cgl012cut.hpp +464 -0
  485. casadi/include/coin/CglAllDifferent.hpp +115 -0
  486. casadi/include/coin/CglClique.hpp +312 -0
  487. casadi/include/coin/CglConfig.h +19 -0
  488. casadi/include/coin/CglCutGenerator.hpp +133 -0
  489. casadi/include/coin/CglDuplicateRow.hpp +189 -0
  490. casadi/include/coin/CglFlowCover.hpp +371 -0
  491. casadi/include/coin/CglGMI.hpp +364 -0
  492. casadi/include/coin/CglGMIParam.hpp +313 -0
  493. casadi/include/coin/CglGomory.hpp +204 -0
  494. casadi/include/coin/CglKnapsackCover.hpp +310 -0
  495. casadi/include/coin/CglLandP.hpp +306 -0
  496. casadi/include/coin/CglLandPValidator.hpp +130 -0
  497. casadi/include/coin/CglLiftAndProject.hpp +104 -0
  498. casadi/include/coin/CglMessage.hpp +49 -0
  499. casadi/include/coin/CglMixedIntegerRounding.hpp +429 -0
  500. casadi/include/coin/CglMixedIntegerRounding2.hpp +427 -0
  501. casadi/include/coin/CglOddHole.hpp +160 -0
  502. casadi/include/coin/CglParam.hpp +93 -0
  503. casadi/include/coin/CglPreProcess.hpp +600 -0
  504. casadi/include/coin/CglProbing.hpp +543 -0
  505. casadi/include/coin/CglRedSplit.hpp +448 -0
  506. casadi/include/coin/CglRedSplit2.hpp +494 -0
  507. casadi/include/coin/CglRedSplit2Param.hpp +495 -0
  508. casadi/include/coin/CglRedSplitParam.hpp +272 -0
  509. casadi/include/coin/CglResidualCapacity.hpp +240 -0
  510. casadi/include/coin/CglSimpleRounding.hpp +174 -0
  511. casadi/include/coin/CglStored.hpp +140 -0
  512. casadi/include/coin/CglTreeInfo.hpp +216 -0
  513. casadi/include/coin/CglTwomir.hpp +562 -0
  514. casadi/include/coin/CglZeroHalf.hpp +133 -0
  515. casadi/include/coin/ClpAmplObjective.hpp +113 -0
  516. casadi/include/coin/ClpCholeskyBase.hpp +321 -0
  517. casadi/include/coin/ClpCholeskyDense.hpp +157 -0
  518. casadi/include/coin/ClpCholeskyMumps.hpp +65 -0
  519. casadi/include/coin/ClpCholeskyPardiso.hpp +67 -0
  520. casadi/include/coin/ClpConfig.h +17 -0
  521. casadi/include/coin/ClpConstraint.hpp +129 -0
  522. casadi/include/coin/ClpConstraintAmpl.hpp +109 -0
  523. casadi/include/coin/ClpConstraintLinear.hpp +113 -0
  524. casadi/include/coin/ClpConstraintQuadratic.hpp +123 -0
  525. casadi/include/coin/ClpDualRowDantzig.hpp +72 -0
  526. casadi/include/coin/ClpDualRowPivot.hpp +136 -0
  527. casadi/include/coin/ClpDualRowSteepest.hpp +160 -0
  528. casadi/include/coin/ClpDummyMatrix.hpp +186 -0
  529. casadi/include/coin/ClpDynamicExampleMatrix.hpp +199 -0
  530. casadi/include/coin/ClpDynamicMatrix.hpp +420 -0
  531. casadi/include/coin/ClpEventHandler.hpp +193 -0
  532. casadi/include/coin/ClpFactorization.hpp +556 -0
  533. casadi/include/coin/ClpGubDynamicMatrix.hpp +270 -0
  534. casadi/include/coin/ClpGubMatrix.hpp +373 -0
  535. casadi/include/coin/ClpInterior.hpp +622 -0
  536. casadi/include/coin/ClpLinearObjective.hpp +104 -0
  537. casadi/include/coin/ClpMatrixBase.hpp +561 -0
  538. casadi/include/coin/ClpMessage.hpp +131 -0
  539. casadi/include/coin/ClpModel.hpp +1442 -0
  540. casadi/include/coin/ClpNetworkMatrix.hpp +235 -0
  541. casadi/include/coin/ClpNode.hpp +364 -0
  542. casadi/include/coin/ClpNonLinearCost.hpp +432 -0
  543. casadi/include/coin/ClpObjective.hpp +142 -0
  544. casadi/include/coin/ClpPEDualRowDantzig.hpp +84 -0
  545. casadi/include/coin/ClpPEDualRowSteepest.hpp +100 -0
  546. casadi/include/coin/ClpPEPrimalColumnDantzig.hpp +71 -0
  547. casadi/include/coin/ClpPEPrimalColumnSteepest.hpp +107 -0
  548. casadi/include/coin/ClpPESimplex.hpp +231 -0
  549. casadi/include/coin/ClpPackedMatrix.hpp +778 -0
  550. casadi/include/coin/ClpParameters.hpp +132 -0
  551. casadi/include/coin/ClpPdcoBase.hpp +110 -0
  552. casadi/include/coin/ClpPlusMinusOneMatrix.hpp +565 -0
  553. casadi/include/coin/ClpPresolve.hpp +379 -0
  554. casadi/include/coin/ClpPrimalColumnDantzig.hpp +74 -0
  555. casadi/include/coin/ClpPrimalColumnPivot.hpp +163 -0
  556. casadi/include/coin/ClpPrimalColumnSteepest.hpp +281 -0
  557. casadi/include/coin/ClpQuadraticObjective.hpp +161 -0
  558. casadi/include/coin/ClpSimplex.hpp +2137 -0
  559. casadi/include/coin/ClpSimplexDual.hpp +304 -0
  560. casadi/include/coin/ClpSimplexNonlinear.hpp +117 -0
  561. casadi/include/coin/ClpSimplexOther.hpp +282 -0
  562. casadi/include/coin/ClpSimplexPrimal.hpp +244 -0
  563. casadi/include/coin/ClpSolve.hpp +505 -0
  564. casadi/include/coin/Clp_C_Interface.h +554 -0
  565. casadi/include/coin/CoinAlloc.hpp +179 -0
  566. casadi/include/coin/CoinBuild.hpp +159 -0
  567. casadi/include/coin/CoinDenseFactorization.hpp +452 -0
  568. casadi/include/coin/CoinDenseVector.hpp +401 -0
  569. casadi/include/coin/CoinDistance.hpp +51 -0
  570. casadi/include/coin/CoinError.hpp +274 -0
  571. casadi/include/coin/CoinFactorization.hpp +2178 -0
  572. casadi/include/coin/CoinFileIO.hpp +185 -0
  573. casadi/include/coin/CoinFinite.hpp +37 -0
  574. casadi/include/coin/CoinFloatEqual.hpp +204 -0
  575. casadi/include/coin/CoinHelperFunctions.hpp +1270 -0
  576. casadi/include/coin/CoinIndexedVector.hpp +1437 -0
  577. casadi/include/coin/CoinLpIO.hpp +836 -0
  578. casadi/include/coin/CoinMessage.hpp +95 -0
  579. casadi/include/coin/CoinMessageHandler.hpp +717 -0
  580. casadi/include/coin/CoinModel.hpp +1214 -0
  581. casadi/include/coin/CoinModelUseful.hpp +518 -0
  582. casadi/include/coin/CoinMpsIO.hpp +1142 -0
  583. casadi/include/coin/CoinOslFactorization.hpp +287 -0
  584. casadi/include/coin/CoinPackedMatrix.hpp +956 -0
  585. casadi/include/coin/CoinPackedVector.hpp +670 -0
  586. casadi/include/coin/CoinPackedVectorBase.hpp +274 -0
  587. casadi/include/coin/CoinParam.hpp +644 -0
  588. casadi/include/coin/CoinPragma.hpp +29 -0
  589. casadi/include/coin/CoinPresolveDoubleton.hpp +76 -0
  590. casadi/include/coin/CoinPresolveDual.hpp +84 -0
  591. casadi/include/coin/CoinPresolveDupcol.hpp +259 -0
  592. casadi/include/coin/CoinPresolveEmpty.hpp +120 -0
  593. casadi/include/coin/CoinPresolveFixed.hpp +185 -0
  594. casadi/include/coin/CoinPresolveForcing.hpp +69 -0
  595. casadi/include/coin/CoinPresolveImpliedFree.hpp +66 -0
  596. casadi/include/coin/CoinPresolveIsolated.hpp +59 -0
  597. casadi/include/coin/CoinPresolveMatrix.hpp +1996 -0
  598. casadi/include/coin/CoinPresolveMonitor.hpp +105 -0
  599. casadi/include/coin/CoinPresolvePsdebug.hpp +169 -0
  600. casadi/include/coin/CoinPresolveSingleton.hpp +115 -0
  601. casadi/include/coin/CoinPresolveSubst.hpp +103 -0
  602. casadi/include/coin/CoinPresolveTighten.hpp +58 -0
  603. casadi/include/coin/CoinPresolveTripleton.hpp +69 -0
  604. casadi/include/coin/CoinPresolveUseless.hpp +63 -0
  605. casadi/include/coin/CoinPresolveZeros.hpp +65 -0
  606. casadi/include/coin/CoinRational.hpp +43 -0
  607. casadi/include/coin/CoinSearchTree.hpp +523 -0
  608. casadi/include/coin/CoinShallowPackedVector.hpp +149 -0
  609. casadi/include/coin/CoinSignal.hpp +127 -0
  610. casadi/include/coin/CoinSimpFactorization.hpp +432 -0
  611. casadi/include/coin/CoinSmartPtr.hpp +548 -0
  612. casadi/include/coin/CoinSnapshot.hpp +572 -0
  613. casadi/include/coin/CoinSort.hpp +753 -0
  614. casadi/include/coin/CoinStructuredModel.hpp +270 -0
  615. casadi/include/coin/CoinTime.hpp +350 -0
  616. casadi/include/coin/CoinTypes.hpp +67 -0
  617. casadi/include/coin/CoinUtility.hpp +26 -0
  618. casadi/include/coin/CoinUtilsConfig.h +34 -0
  619. casadi/include/coin/CoinWarmStart.hpp +56 -0
  620. casadi/include/coin/CoinWarmStartBasis.hpp +468 -0
  621. casadi/include/coin/CoinWarmStartDual.hpp +180 -0
  622. casadi/include/coin/CoinWarmStartPrimalDual.hpp +233 -0
  623. casadi/include/coin/CoinWarmStartVector.hpp +523 -0
  624. casadi/include/coin/Coin_C_defines.h +149 -0
  625. casadi/include/coin/Idiot.hpp +327 -0
  626. casadi/include/coin/OsiAuxInfo.hpp +261 -0
  627. casadi/include/coin/OsiBranchingObject.hpp +1097 -0
  628. casadi/include/coin/OsiCbcSolverInterface.hpp +791 -0
  629. casadi/include/coin/OsiChooseVariable.hpp +645 -0
  630. casadi/include/coin/OsiClpSolverInterface.hpp +1604 -0
  631. casadi/include/coin/OsiColCut.hpp +322 -0
  632. casadi/include/coin/OsiCollections.hpp +34 -0
  633. casadi/include/coin/OsiConfig.h +19 -0
  634. casadi/include/coin/OsiCut.hpp +251 -0
  635. casadi/include/coin/OsiCuts.hpp +505 -0
  636. casadi/include/coin/OsiPresolve.hpp +272 -0
  637. casadi/include/coin/OsiRowCut.hpp +345 -0
  638. casadi/include/coin/OsiRowCutDebugger.hpp +190 -0
  639. casadi/include/coin/OsiSolverBranch.hpp +169 -0
  640. casadi/include/coin/OsiSolverInterface.hpp +2221 -0
  641. casadi/include/coin/OsiSolverParameters.hpp +144 -0
  642. casadi/include/coin/OsiUnitTests.hpp +390 -0
  643. casadi/include/coin-or/IpAlgBuilder.hpp +417 -0
  644. casadi/include/coin-or/IpAlgStrategy.hpp +201 -0
  645. casadi/include/coin-or/IpAlgTypes.hpp +64 -0
  646. casadi/include/coin-or/IpAugSystemSolver.hpp +212 -0
  647. casadi/include/coin-or/IpBlas.hpp +426 -0
  648. casadi/include/coin-or/IpCachedResults.hpp +897 -0
  649. casadi/include/coin-or/IpCompoundMatrix.hpp +423 -0
  650. casadi/include/coin-or/IpCompoundSymMatrix.hpp +348 -0
  651. casadi/include/coin-or/IpCompoundVector.hpp +395 -0
  652. casadi/include/coin-or/IpConvCheck.hpp +97 -0
  653. casadi/include/coin-or/IpDebug.hpp +167 -0
  654. casadi/include/coin-or/IpDenseVector.hpp +626 -0
  655. casadi/include/coin-or/IpDiagMatrix.hpp +158 -0
  656. casadi/include/coin-or/IpEqMultCalculator.hpp +76 -0
  657. casadi/include/coin-or/IpException.hpp +156 -0
  658. casadi/include/coin-or/IpExpansionMatrix.hpp +245 -0
  659. casadi/include/coin-or/IpGenTMatrix.hpp +290 -0
  660. casadi/include/coin-or/IpHessianUpdater.hpp +73 -0
  661. casadi/include/coin-or/IpIdentityMatrix.hpp +167 -0
  662. casadi/include/coin-or/IpIpoptAlg.hpp +257 -0
  663. casadi/include/coin-or/IpIpoptApplication.hpp +367 -0
  664. casadi/include/coin-or/IpIpoptCalculatedQuantities.hpp +1009 -0
  665. casadi/include/coin-or/IpIpoptData.hpp +966 -0
  666. casadi/include/coin-or/IpIpoptNLP.hpp +328 -0
  667. casadi/include/coin-or/IpIterateInitializer.hpp +68 -0
  668. casadi/include/coin-or/IpIteratesVector.hpp +840 -0
  669. casadi/include/coin-or/IpIterationOutput.hpp +78 -0
  670. casadi/include/coin-or/IpJournalist.hpp +573 -0
  671. casadi/include/coin-or/IpLapack.hpp +227 -0
  672. casadi/include/coin-or/IpLibraryLoader.hpp +76 -0
  673. casadi/include/coin-or/IpLineSearch.hpp +106 -0
  674. casadi/include/coin-or/IpLinearSolvers.h +46 -0
  675. casadi/include/coin-or/IpMatrix.hpp +434 -0
  676. casadi/include/coin-or/IpMuUpdate.hpp +77 -0
  677. casadi/include/coin-or/IpNLP.hpp +306 -0
  678. casadi/include/coin-or/IpNLPScaling.hpp +582 -0
  679. casadi/include/coin-or/IpObserver.hpp +422 -0
  680. casadi/include/coin-or/IpOptionsList.hpp +412 -0
  681. casadi/include/coin-or/IpOrigIpoptNLP.hpp +603 -0
  682. casadi/include/coin-or/IpPDSystemSolver.hpp +137 -0
  683. casadi/include/coin-or/IpReferenced.hpp +262 -0
  684. casadi/include/coin-or/IpRegOptions.hpp +1152 -0
  685. casadi/include/coin-or/IpReturnCodes.h +23 -0
  686. casadi/include/coin-or/IpReturnCodes.hpp +18 -0
  687. casadi/include/coin-or/IpReturnCodes.inc +71 -0
  688. casadi/include/coin-or/IpReturnCodes_inc.h +45 -0
  689. casadi/include/coin-or/IpScaledMatrix.hpp +291 -0
  690. casadi/include/coin-or/IpSearchDirCalculator.hpp +72 -0
  691. casadi/include/coin-or/IpSmartPtr.hpp +865 -0
  692. casadi/include/coin-or/IpSolveStatistics.hpp +210 -0
  693. casadi/include/coin-or/IpSparseSymLinearSolverInterface.hpp +260 -0
  694. casadi/include/coin-or/IpStdAugSystemSolver.cpp +555 -0
  695. casadi/include/coin-or/IpStdCInterface.h +428 -0
  696. casadi/include/coin-or/IpSumSymMatrix.hpp +186 -0
  697. casadi/include/coin-or/IpSymLinearSolver.hpp +141 -0
  698. casadi/include/coin-or/IpSymMatrix.hpp +167 -0
  699. casadi/include/coin-or/IpSymScaledMatrix.hpp +255 -0
  700. casadi/include/coin-or/IpSymTMatrix.hpp +275 -0
  701. casadi/include/coin-or/IpTNLP.hpp +820 -0
  702. casadi/include/coin-or/IpTNLPAdapter.hpp +648 -0
  703. casadi/include/coin-or/IpTNLPReducer.hpp +274 -0
  704. casadi/include/coin-or/IpTaggedObject.hpp +128 -0
  705. casadi/include/coin-or/IpTimedTask.hpp +218 -0
  706. casadi/include/coin-or/IpTimingStatistics.hpp +323 -0
  707. casadi/include/coin-or/IpTripletHelper.hpp +308 -0
  708. casadi/include/coin-or/IpTypes.h +81 -0
  709. casadi/include/coin-or/IpTypes.hpp +30 -0
  710. casadi/include/coin-or/IpUtils.hpp +166 -0
  711. casadi/include/coin-or/IpVector.hpp +892 -0
  712. casadi/include/coin-or/IpZeroSymMatrix.hpp +155 -0
  713. casadi/include/coin-or/IpoptConfig.h +45 -0
  714. casadi/include/coin-or/SensAlgorithm.hpp +114 -0
  715. casadi/include/coin-or/SensApplication.hpp +188 -0
  716. casadi/include/coin-or/SensBacksolver.hpp +36 -0
  717. casadi/include/coin-or/SensMeasurement.hpp +56 -0
  718. casadi/include/coin-or/SensPCalculator.hpp +137 -0
  719. casadi/include/coin-or/SensRegOp.hpp +21 -0
  720. casadi/include/coin-or/SensSchurData.hpp +182 -0
  721. casadi/include/coin-or/SensSchurDriver.hpp +118 -0
  722. casadi/include/coin-or/SensSimpleBacksolver.hpp +49 -0
  723. casadi/include/coin-or/SensStepCalc.hpp +85 -0
  724. casadi/include/coin-or/SensUtils.hpp +63 -0
  725. casadi/include/coin-or/metis/defs.h +161 -0
  726. casadi/include/coin-or/metis/macros.h +143 -0
  727. casadi/include/coin-or/metis/metis.h +37 -0
  728. casadi/include/coin-or/metis/proto.h +505 -0
  729. casadi/include/coin-or/metis/rename.h +418 -0
  730. casadi/include/coin-or/metis/struct.h +251 -0
  731. casadi/include/coin-or/mumps/dmumps_c.h +142 -0
  732. casadi/include/coin-or/mumps/mumps_c_types.h +72 -0
  733. casadi/include/coin-or/mumps/mumps_compat.h +27 -0
  734. casadi/include/coin-or/mumps/mumps_int_def.h +11 -0
  735. casadi/include/coin-or/mumps/mumps_mpi.h +67 -0
  736. casadi/include/d_blas.h +78 -0
  737. casadi/include/d_blas_64.h +73 -0
  738. casadi/include/daqp/api.h +46 -0
  739. casadi/include/daqp/auxiliary.h +29 -0
  740. casadi/include/daqp/bnb.h +32 -0
  741. casadi/include/daqp/codegen.h +18 -0
  742. casadi/include/daqp/constants.h +92 -0
  743. casadi/include/daqp/daqp.h +22 -0
  744. casadi/include/daqp/daqp_prox.h +18 -0
  745. casadi/include/daqp/factorization.h +18 -0
  746. casadi/include/daqp/types.h +161 -0
  747. casadi/include/daqp/utils.h +44 -0
  748. casadi/include/dlfcn.h +94 -0
  749. casadi/include/eigen3/Eigen/Cholesky +45 -0
  750. casadi/include/eigen3/Eigen/CholmodSupport +48 -0
  751. casadi/include/eigen3/Eigen/Core +384 -0
  752. casadi/include/eigen3/Eigen/Dense +7 -0
  753. casadi/include/eigen3/Eigen/Eigen +2 -0
  754. casadi/include/eigen3/Eigen/Eigenvalues +60 -0
  755. casadi/include/eigen3/Eigen/Geometry +59 -0
  756. casadi/include/eigen3/Eigen/Householder +29 -0
  757. casadi/include/eigen3/Eigen/IterativeLinearSolvers +48 -0
  758. casadi/include/eigen3/Eigen/Jacobi +32 -0
  759. casadi/include/eigen3/Eigen/KLUSupport +41 -0
  760. casadi/include/eigen3/Eigen/LU +47 -0
  761. casadi/include/eigen3/Eigen/MetisSupport +35 -0
  762. casadi/include/eigen3/Eigen/OrderingMethods +70 -0
  763. casadi/include/eigen3/Eigen/PaStiXSupport +49 -0
  764. casadi/include/eigen3/Eigen/PardisoSupport +35 -0
  765. casadi/include/eigen3/Eigen/QR +50 -0
  766. casadi/include/eigen3/Eigen/QtAlignedMalloc +39 -0
  767. casadi/include/eigen3/Eigen/SPQRSupport +34 -0
  768. casadi/include/eigen3/Eigen/SVD +50 -0
  769. casadi/include/eigen3/Eigen/Sparse +34 -0
  770. casadi/include/eigen3/Eigen/SparseCholesky +37 -0
  771. casadi/include/eigen3/Eigen/SparseCore +69 -0
  772. casadi/include/eigen3/Eigen/SparseLU +50 -0
  773. casadi/include/eigen3/Eigen/SparseQR +36 -0
  774. casadi/include/eigen3/Eigen/StdDeque +27 -0
  775. casadi/include/eigen3/Eigen/StdList +26 -0
  776. casadi/include/eigen3/Eigen/StdVector +27 -0
  777. casadi/include/eigen3/Eigen/SuperLUSupport +64 -0
  778. casadi/include/eigen3/Eigen/UmfPackSupport +40 -0
  779. casadi/include/eigen3/Eigen/src/Cholesky/LDLT.h +688 -0
  780. casadi/include/eigen3/Eigen/src/Cholesky/LLT.h +558 -0
  781. casadi/include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
  782. casadi/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
  783. casadi/include/eigen3/Eigen/src/Core/ArithmeticSequence.h +413 -0
  784. casadi/include/eigen3/Eigen/src/Core/Array.h +417 -0
  785. casadi/include/eigen3/Eigen/src/Core/ArrayBase.h +226 -0
  786. casadi/include/eigen3/Eigen/src/Core/ArrayWrapper.h +209 -0
  787. casadi/include/eigen3/Eigen/src/Core/Assign.h +90 -0
  788. casadi/include/eigen3/Eigen/src/Core/AssignEvaluator.h +1010 -0
  789. casadi/include/eigen3/Eigen/src/Core/Assign_MKL.h +178 -0
  790. casadi/include/eigen3/Eigen/src/Core/BandMatrix.h +353 -0
  791. casadi/include/eigen3/Eigen/src/Core/Block.h +448 -0
  792. casadi/include/eigen3/Eigen/src/Core/BooleanRedux.h +162 -0
  793. casadi/include/eigen3/Eigen/src/Core/CommaInitializer.h +164 -0
  794. casadi/include/eigen3/Eigen/src/Core/ConditionEstimator.h +175 -0
  795. casadi/include/eigen3/Eigen/src/Core/CoreEvaluators.h +1741 -0
  796. casadi/include/eigen3/Eigen/src/Core/CoreIterators.h +132 -0
  797. casadi/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h +183 -0
  798. casadi/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
  799. casadi/include/eigen3/Eigen/src/Core/CwiseTernaryOp.h +197 -0
  800. casadi/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h +103 -0
  801. casadi/include/eigen3/Eigen/src/Core/CwiseUnaryView.h +132 -0
  802. casadi/include/eigen3/Eigen/src/Core/DenseBase.h +701 -0
  803. casadi/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h +685 -0
  804. casadi/include/eigen3/Eigen/src/Core/DenseStorage.h +652 -0
  805. casadi/include/eigen3/Eigen/src/Core/Diagonal.h +258 -0
  806. casadi/include/eigen3/Eigen/src/Core/DiagonalMatrix.h +391 -0
  807. casadi/include/eigen3/Eigen/src/Core/DiagonalProduct.h +28 -0
  808. casadi/include/eigen3/Eigen/src/Core/Dot.h +318 -0
  809. casadi/include/eigen3/Eigen/src/Core/EigenBase.h +160 -0
  810. casadi/include/eigen3/Eigen/src/Core/ForceAlignedAccess.h +150 -0
  811. casadi/include/eigen3/Eigen/src/Core/Fuzzy.h +155 -0
  812. casadi/include/eigen3/Eigen/src/Core/GeneralProduct.h +465 -0
  813. casadi/include/eigen3/Eigen/src/Core/GenericPacketMath.h +1040 -0
  814. casadi/include/eigen3/Eigen/src/Core/GlobalFunctions.h +194 -0
  815. casadi/include/eigen3/Eigen/src/Core/IO.h +258 -0
  816. casadi/include/eigen3/Eigen/src/Core/IndexedView.h +237 -0
  817. casadi/include/eigen3/Eigen/src/Core/Inverse.h +117 -0
  818. casadi/include/eigen3/Eigen/src/Core/Map.h +171 -0
  819. casadi/include/eigen3/Eigen/src/Core/MapBase.h +310 -0
  820. casadi/include/eigen3/Eigen/src/Core/MathFunctions.h +2057 -0
  821. casadi/include/eigen3/Eigen/src/Core/MathFunctionsImpl.h +200 -0
  822. casadi/include/eigen3/Eigen/src/Core/Matrix.h +565 -0
  823. casadi/include/eigen3/Eigen/src/Core/MatrixBase.h +547 -0
  824. casadi/include/eigen3/Eigen/src/Core/NestByValue.h +85 -0
  825. casadi/include/eigen3/Eigen/src/Core/NoAlias.h +109 -0
  826. casadi/include/eigen3/Eigen/src/Core/NumTraits.h +335 -0
  827. casadi/include/eigen3/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
  828. casadi/include/eigen3/Eigen/src/Core/PermutationMatrix.h +605 -0
  829. casadi/include/eigen3/Eigen/src/Core/PlainObjectBase.h +1128 -0
  830. casadi/include/eigen3/Eigen/src/Core/Product.h +191 -0
  831. casadi/include/eigen3/Eigen/src/Core/ProductEvaluators.h +1179 -0
  832. casadi/include/eigen3/Eigen/src/Core/Random.h +218 -0
  833. casadi/include/eigen3/Eigen/src/Core/Redux.h +515 -0
  834. casadi/include/eigen3/Eigen/src/Core/Ref.h +381 -0
  835. casadi/include/eigen3/Eigen/src/Core/Replicate.h +142 -0
  836. casadi/include/eigen3/Eigen/src/Core/Reshaped.h +454 -0
  837. casadi/include/eigen3/Eigen/src/Core/ReturnByValue.h +119 -0
  838. casadi/include/eigen3/Eigen/src/Core/Reverse.h +217 -0
  839. casadi/include/eigen3/Eigen/src/Core/Select.h +164 -0
  840. casadi/include/eigen3/Eigen/src/Core/SelfAdjointView.h +365 -0
  841. casadi/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
  842. casadi/include/eigen3/Eigen/src/Core/Solve.h +188 -0
  843. casadi/include/eigen3/Eigen/src/Core/SolveTriangular.h +235 -0
  844. casadi/include/eigen3/Eigen/src/Core/SolverBase.h +168 -0
  845. casadi/include/eigen3/Eigen/src/Core/StableNorm.h +251 -0
  846. casadi/include/eigen3/Eigen/src/Core/StlIterators.h +463 -0
  847. casadi/include/eigen3/Eigen/src/Core/Stride.h +116 -0
  848. casadi/include/eigen3/Eigen/src/Core/Swap.h +68 -0
  849. casadi/include/eigen3/Eigen/src/Core/Transpose.h +464 -0
  850. casadi/include/eigen3/Eigen/src/Core/Transpositions.h +386 -0
  851. casadi/include/eigen3/Eigen/src/Core/TriangularMatrix.h +1001 -0
  852. casadi/include/eigen3/Eigen/src/Core/VectorBlock.h +96 -0
  853. casadi/include/eigen3/Eigen/src/Core/VectorwiseOp.h +784 -0
  854. casadi/include/eigen3/Eigen/src/Core/Visitor.h +381 -0
  855. casadi/include/eigen3/Eigen/src/Core/arch/AVX/Complex.h +372 -0
  856. casadi/include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
  857. casadi/include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
  858. casadi/include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
  859. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
  860. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
  861. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
  862. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
  863. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
  864. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
  865. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
  866. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
  867. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
  868. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
  869. casadi/include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
  870. casadi/include/eigen3/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
  871. casadi/include/eigen3/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
  872. casadi/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
  873. casadi/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
  874. casadi/include/eigen3/Eigen/src/Core/arch/Default/Half.h +942 -0
  875. casadi/include/eigen3/Eigen/src/Core/arch/Default/Settings.h +49 -0
  876. casadi/include/eigen3/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
  877. casadi/include/eigen3/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
  878. casadi/include/eigen3/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
  879. casadi/include/eigen3/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
  880. casadi/include/eigen3/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
  881. casadi/include/eigen3/Eigen/src/Core/arch/MSA/Complex.h +648 -0
  882. casadi/include/eigen3/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
  883. casadi/include/eigen3/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
  884. casadi/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h +584 -0
  885. casadi/include/eigen3/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
  886. casadi/include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
  887. casadi/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
  888. casadi/include/eigen3/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
  889. casadi/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h +351 -0
  890. casadi/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
  891. casadi/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
  892. casadi/include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
  893. casadi/include/eigen3/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
  894. casadi/include/eigen3/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
  895. casadi/include/eigen3/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
  896. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
  897. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
  898. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
  899. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
  900. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
  901. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
  902. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
  903. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
  904. casadi/include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
  905. casadi/include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
  906. casadi/include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
  907. casadi/include/eigen3/Eigen/src/Core/functors/StlFunctors.h +166 -0
  908. casadi/include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
  909. casadi/include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
  910. casadi/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
  911. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
  912. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
  913. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
  914. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
  915. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
  916. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
  917. casadi/include/eigen3/Eigen/src/Core/products/Parallelizer.h +180 -0
  918. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
  919. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
  920. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
  921. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
  922. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
  923. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
  924. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
  925. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
  926. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
  927. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
  928. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
  929. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
  930. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
  931. casadi/include/eigen3/Eigen/src/Core/util/BlasUtil.h +583 -0
  932. casadi/include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
  933. casadi/include/eigen3/Eigen/src/Core/util/Constants.h +563 -0
  934. casadi/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
  935. casadi/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
  936. casadi/include/eigen3/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
  937. casadi/include/eigen3/Eigen/src/Core/util/IntegralConstant.h +272 -0
  938. casadi/include/eigen3/Eigen/src/Core/util/MKL_support.h +137 -0
  939. casadi/include/eigen3/Eigen/src/Core/util/Macros.h +1464 -0
  940. casadi/include/eigen3/Eigen/src/Core/util/Memory.h +1163 -0
  941. casadi/include/eigen3/Eigen/src/Core/util/Meta.h +812 -0
  942. casadi/include/eigen3/Eigen/src/Core/util/NonMPL2.h +3 -0
  943. casadi/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
  944. casadi/include/eigen3/Eigen/src/Core/util/ReshapedHelper.h +51 -0
  945. casadi/include/eigen3/Eigen/src/Core/util/StaticAssert.h +221 -0
  946. casadi/include/eigen3/Eigen/src/Core/util/SymbolicIndex.h +293 -0
  947. casadi/include/eigen3/Eigen/src/Core/util/XprHelper.h +856 -0
  948. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
  949. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
  950. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
  951. casadi/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
  952. casadi/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
  953. casadi/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
  954. casadi/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
  955. casadi/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
  956. casadi/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h +657 -0
  957. casadi/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h +558 -0
  958. casadi/include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
  959. casadi/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
  960. casadi/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
  961. casadi/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
  962. casadi/include/eigen3/Eigen/src/Geometry/AlignedBox.h +486 -0
  963. casadi/include/eigen3/Eigen/src/Geometry/AngleAxis.h +247 -0
  964. casadi/include/eigen3/Eigen/src/Geometry/EulerAngles.h +114 -0
  965. casadi/include/eigen3/Eigen/src/Geometry/Homogeneous.h +501 -0
  966. casadi/include/eigen3/Eigen/src/Geometry/Hyperplane.h +282 -0
  967. casadi/include/eigen3/Eigen/src/Geometry/OrthoMethods.h +235 -0
  968. casadi/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h +232 -0
  969. casadi/include/eigen3/Eigen/src/Geometry/Quaternion.h +870 -0
  970. casadi/include/eigen3/Eigen/src/Geometry/Rotation2D.h +199 -0
  971. casadi/include/eigen3/Eigen/src/Geometry/RotationBase.h +206 -0
  972. casadi/include/eigen3/Eigen/src/Geometry/Scaling.h +188 -0
  973. casadi/include/eigen3/Eigen/src/Geometry/Transform.h +1563 -0
  974. casadi/include/eigen3/Eigen/src/Geometry/Translation.h +202 -0
  975. casadi/include/eigen3/Eigen/src/Geometry/Umeyama.h +166 -0
  976. casadi/include/eigen3/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
  977. casadi/include/eigen3/Eigen/src/Householder/BlockHouseholder.h +110 -0
  978. casadi/include/eigen3/Eigen/src/Householder/Householder.h +176 -0
  979. casadi/include/eigen3/Eigen/src/Householder/HouseholderSequence.h +545 -0
  980. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
  981. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
  982. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
  983. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
  984. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
  985. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
  986. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
  987. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
  988. casadi/include/eigen3/Eigen/src/Jacobi/Jacobi.h +483 -0
  989. casadi/include/eigen3/Eigen/src/KLUSupport/KLUSupport.h +358 -0
  990. casadi/include/eigen3/Eigen/src/LU/Determinant.h +117 -0
  991. casadi/include/eigen3/Eigen/src/LU/FullPivLU.h +877 -0
  992. casadi/include/eigen3/Eigen/src/LU/InverseImpl.h +432 -0
  993. casadi/include/eigen3/Eigen/src/LU/PartialPivLU.h +624 -0
  994. casadi/include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
  995. casadi/include/eigen3/Eigen/src/LU/arch/InverseSize4.h +351 -0
  996. casadi/include/eigen3/Eigen/src/MetisSupport/MetisSupport.h +137 -0
  997. casadi/include/eigen3/Eigen/src/OrderingMethods/Amd.h +435 -0
  998. casadi/include/eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
  999. casadi/include/eigen3/Eigen/src/OrderingMethods/Ordering.h +153 -0
  1000. casadi/include/eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
  1001. casadi/include/eigen3/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
  1002. casadi/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
  1003. casadi/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
  1004. casadi/include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
  1005. casadi/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
  1006. casadi/include/eigen3/Eigen/src/QR/HouseholderQR.h +434 -0
  1007. casadi/include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
  1008. casadi/include/eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
  1009. casadi/include/eigen3/Eigen/src/SVD/BDCSVD.h +1366 -0
  1010. casadi/include/eigen3/Eigen/src/SVD/JacobiSVD.h +812 -0
  1011. casadi/include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
  1012. casadi/include/eigen3/Eigen/src/SVD/SVDBase.h +376 -0
  1013. casadi/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
  1014. casadi/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
  1015. casadi/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
  1016. casadi/include/eigen3/Eigen/src/SparseCore/AmbiVector.h +378 -0
  1017. casadi/include/eigen3/Eigen/src/SparseCore/CompressedStorage.h +274 -0
  1018. casadi/include/eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
  1019. casadi/include/eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
  1020. casadi/include/eigen3/Eigen/src/SparseCore/SparseAssign.h +270 -0
  1021. casadi/include/eigen3/Eigen/src/SparseCore/SparseBlock.h +571 -0
  1022. casadi/include/eigen3/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  1023. casadi/include/eigen3/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
  1024. casadi/include/eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
  1025. casadi/include/eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
  1026. casadi/include/eigen3/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
  1027. casadi/include/eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
  1028. casadi/include/eigen3/Eigen/src/SparseCore/SparseDot.h +98 -0
  1029. casadi/include/eigen3/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
  1030. casadi/include/eigen3/Eigen/src/SparseCore/SparseMap.h +305 -0
  1031. casadi/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
  1032. casadi/include/eigen3/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
  1033. casadi/include/eigen3/Eigen/src/SparseCore/SparsePermutation.h +178 -0
  1034. casadi/include/eigen3/Eigen/src/SparseCore/SparseProduct.h +181 -0
  1035. casadi/include/eigen3/Eigen/src/SparseCore/SparseRedux.h +49 -0
  1036. casadi/include/eigen3/Eigen/src/SparseCore/SparseRef.h +397 -0
  1037. casadi/include/eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
  1038. casadi/include/eigen3/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
  1039. casadi/include/eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
  1040. casadi/include/eigen3/Eigen/src/SparseCore/SparseTranspose.h +92 -0
  1041. casadi/include/eigen3/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
  1042. casadi/include/eigen3/Eigen/src/SparseCore/SparseUtil.h +186 -0
  1043. casadi/include/eigen3/Eigen/src/SparseCore/SparseVector.h +478 -0
  1044. casadi/include/eigen3/Eigen/src/SparseCore/SparseView.h +254 -0
  1045. casadi/include/eigen3/Eigen/src/SparseCore/TriangularSolver.h +315 -0
  1046. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU.h +923 -0
  1047. casadi/include/eigen3/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
  1048. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
  1049. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
  1050. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
  1051. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
  1052. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
  1053. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
  1054. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
  1055. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
  1056. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
  1057. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
  1058. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
  1059. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
  1060. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
  1061. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
  1062. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
  1063. casadi/include/eigen3/Eigen/src/SparseQR/SparseQR.h +758 -0
  1064. casadi/include/eigen3/Eigen/src/StlSupport/StdDeque.h +116 -0
  1065. casadi/include/eigen3/Eigen/src/StlSupport/StdList.h +106 -0
  1066. casadi/include/eigen3/Eigen/src/StlSupport/StdVector.h +131 -0
  1067. casadi/include/eigen3/Eigen/src/StlSupport/details.h +84 -0
  1068. casadi/include/eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
  1069. casadi/include/eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
  1070. casadi/include/eigen3/Eigen/src/misc/Image.h +82 -0
  1071. casadi/include/eigen3/Eigen/src/misc/Kernel.h +79 -0
  1072. casadi/include/eigen3/Eigen/src/misc/RealSvd2x2.h +55 -0
  1073. casadi/include/eigen3/Eigen/src/misc/blas.h +440 -0
  1074. casadi/include/eigen3/Eigen/src/misc/lapack.h +152 -0
  1075. casadi/include/eigen3/Eigen/src/misc/lapacke.h +16292 -0
  1076. casadi/include/eigen3/Eigen/src/misc/lapacke_mangling.h +17 -0
  1077. casadi/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
  1078. casadi/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
  1079. casadi/include/eigen3/Eigen/src/plugins/BlockMethods.h +1442 -0
  1080. casadi/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
  1081. casadi/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
  1082. casadi/include/eigen3/Eigen/src/plugins/IndexedViewMethods.h +262 -0
  1083. casadi/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
  1084. casadi/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
  1085. casadi/include/eigen3/Eigen/src/plugins/ReshapedMethods.h +149 -0
  1086. casadi/include/eigen3/signature_of_eigen3_matrix_library +1 -0
  1087. casadi/include/eigen3/unsupported/Eigen/AdolcForward +159 -0
  1088. casadi/include/eigen3/unsupported/Eigen/AlignedVector3 +234 -0
  1089. casadi/include/eigen3/unsupported/Eigen/ArpackSupport +30 -0
  1090. casadi/include/eigen3/unsupported/Eigen/AutoDiff +46 -0
  1091. casadi/include/eigen3/unsupported/Eigen/BVH +95 -0
  1092. casadi/include/eigen3/unsupported/Eigen/CXX11/Tensor +137 -0
  1093. casadi/include/eigen3/unsupported/Eigen/CXX11/TensorSymmetry +42 -0
  1094. casadi/include/eigen3/unsupported/Eigen/CXX11/ThreadPool +74 -0
  1095. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +554 -0
  1096. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +329 -0
  1097. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +247 -0
  1098. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +1176 -0
  1099. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +1559 -0
  1100. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +1093 -0
  1101. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +518 -0
  1102. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +377 -0
  1103. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +1023 -0
  1104. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +73 -0
  1105. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +6 -0
  1106. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +1413 -0
  1107. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +575 -0
  1108. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +1650 -0
  1109. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +1679 -0
  1110. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +456 -0
  1111. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +1132 -0
  1112. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +544 -0
  1113. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +214 -0
  1114. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +347 -0
  1115. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +137 -0
  1116. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +6 -0
  1117. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +104 -0
  1118. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +389 -0
  1119. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +1048 -0
  1120. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +409 -0
  1121. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +236 -0
  1122. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +490 -0
  1123. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +236 -0
  1124. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +983 -0
  1125. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +703 -0
  1126. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +388 -0
  1127. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +669 -0
  1128. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +379 -0
  1129. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +237 -0
  1130. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +191 -0
  1131. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +488 -0
  1132. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +302 -0
  1133. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +33 -0
  1134. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +99 -0
  1135. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +44 -0
  1136. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +79 -0
  1137. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +603 -0
  1138. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +738 -0
  1139. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +247 -0
  1140. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +82 -0
  1141. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +263 -0
  1142. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +216 -0
  1143. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +98 -0
  1144. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +327 -0
  1145. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +311 -0
  1146. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +1102 -0
  1147. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +708 -0
  1148. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +291 -0
  1149. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +322 -0
  1150. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +998 -0
  1151. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +6 -0
  1152. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +966 -0
  1153. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +582 -0
  1154. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +454 -0
  1155. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +465 -0
  1156. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +528 -0
  1157. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +513 -0
  1158. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +471 -0
  1159. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +161 -0
  1160. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +346 -0
  1161. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +303 -0
  1162. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +264 -0
  1163. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +249 -0
  1164. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +629 -0
  1165. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +293 -0
  1166. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +236 -0
  1167. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +338 -0
  1168. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +669 -0
  1169. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +67 -0
  1170. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +249 -0
  1171. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +486 -0
  1172. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +236 -0
  1173. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +23 -0
  1174. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +40 -0
  1175. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +301 -0
  1176. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +48 -0
  1177. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +20 -0
  1178. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +537 -0
  1179. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +88 -0
  1180. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h +261 -0
  1181. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +158 -0
  1182. casadi/include/eigen3/unsupported/Eigen/EulerAngles +43 -0
  1183. casadi/include/eigen3/unsupported/Eigen/FFT +419 -0
  1184. casadi/include/eigen3/unsupported/Eigen/IterativeSolvers +51 -0
  1185. casadi/include/eigen3/unsupported/Eigen/KroneckerProduct +36 -0
  1186. casadi/include/eigen3/unsupported/Eigen/LevenbergMarquardt +49 -0
  1187. casadi/include/eigen3/unsupported/Eigen/MPRealSupport +213 -0
  1188. casadi/include/eigen3/unsupported/Eigen/MatrixFunctions +504 -0
  1189. casadi/include/eigen3/unsupported/Eigen/MoreVectorization +24 -0
  1190. casadi/include/eigen3/unsupported/Eigen/NonLinearOptimization +140 -0
  1191. casadi/include/eigen3/unsupported/Eigen/NumericalDiff +56 -0
  1192. casadi/include/eigen3/unsupported/Eigen/OpenGLSupport +322 -0
  1193. casadi/include/eigen3/unsupported/Eigen/Polynomials +137 -0
  1194. casadi/include/eigen3/unsupported/Eigen/Skyline +39 -0
  1195. casadi/include/eigen3/unsupported/Eigen/SparseExtra +54 -0
  1196. casadi/include/eigen3/unsupported/Eigen/SpecialFunctions +103 -0
  1197. casadi/include/eigen3/unsupported/Eigen/Splines +35 -0
  1198. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +108 -0
  1199. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +730 -0
  1200. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +220 -0
  1201. casadi/include/eigen3/unsupported/Eigen/src/BVH/BVAlgorithms.h +293 -0
  1202. casadi/include/eigen3/unsupported/Eigen/src/BVH/KdBVH.h +223 -0
  1203. casadi/include/eigen3/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +790 -0
  1204. casadi/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerAngles.h +355 -0
  1205. casadi/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerSystem.h +305 -0
  1206. casadi/include/eigen3/unsupported/Eigen/src/FFT/ei_fftw_impl.h +261 -0
  1207. casadi/include/eigen3/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +449 -0
  1208. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +187 -0
  1209. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +511 -0
  1210. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/GMRES.h +335 -0
  1211. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IDRS.h +436 -0
  1212. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +90 -0
  1213. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IterationController.h +154 -0
  1214. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/MINRES.h +267 -0
  1215. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/Scaling.h +193 -0
  1216. casadi/include/eigen3/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +305 -0
  1217. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +84 -0
  1218. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +202 -0
  1219. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +160 -0
  1220. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +188 -0
  1221. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +396 -0
  1222. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +441 -0
  1223. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +569 -0
  1224. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +373 -0
  1225. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +705 -0
  1226. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +368 -0
  1227. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +117 -0
  1228. casadi/include/eigen3/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +95 -0
  1229. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +601 -0
  1230. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +657 -0
  1231. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h +66 -0
  1232. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h +70 -0
  1233. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +107 -0
  1234. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +79 -0
  1235. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +298 -0
  1236. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +91 -0
  1237. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +30 -0
  1238. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +99 -0
  1239. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +49 -0
  1240. casadi/include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +130 -0
  1241. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/Companion.h +280 -0
  1242. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +428 -0
  1243. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +143 -0
  1244. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +352 -0
  1245. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrix.h +862 -0
  1246. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +212 -0
  1247. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineProduct.h +295 -0
  1248. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineStorage.h +259 -0
  1249. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineUtil.h +89 -0
  1250. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +122 -0
  1251. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +1079 -0
  1252. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +404 -0
  1253. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/MarketIO.h +282 -0
  1254. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +247 -0
  1255. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/RandomSetter.h +349 -0
  1256. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +286 -0
  1257. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +68 -0
  1258. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +357 -0
  1259. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +66 -0
  1260. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +1959 -0
  1261. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +118 -0
  1262. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +67 -0
  1263. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +167 -0
  1264. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +58 -0
  1265. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +330 -0
  1266. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +58 -0
  1267. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +2045 -0
  1268. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +79 -0
  1269. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +46 -0
  1270. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +16 -0
  1271. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +46 -0
  1272. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +16 -0
  1273. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +369 -0
  1274. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +54 -0
  1275. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +34 -0
  1276. casadi/include/eigen3/unsupported/Eigen/src/Splines/Spline.h +507 -0
  1277. casadi/include/eigen3/unsupported/Eigen/src/Splines/SplineFitting.h +431 -0
  1278. casadi/include/eigen3/unsupported/Eigen/src/Splines/SplineFwd.h +93 -0
  1279. casadi/include/fatrop/auxiliary/Common.hpp +34 -0
  1280. casadi/include/fatrop/auxiliary/DynamicLib.hpp +34 -0
  1281. casadi/include/fatrop/auxiliary/FatropOptions.hpp +68 -0
  1282. casadi/include/fatrop/auxiliary/FatropVector.hpp +143 -0
  1283. casadi/include/fatrop/auxiliary/LinearAlgebra.hpp +88 -0
  1284. casadi/include/fatrop/auxiliary/VectorUtils.hpp +54 -0
  1285. casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +496 -0
  1286. casadi/include/fatrop/fatrop.hpp +39 -0
  1287. casadi/include/fatrop/function_evaluation/CasadiCodegen.hpp +104 -0
  1288. casadi/include/fatrop/function_evaluation/FunctionEvaluation.hpp +60 -0
  1289. casadi/include/fatrop/json/json.h +946 -0
  1290. casadi/include/fatrop/ocp/CasadiCApiUserdataWrap.hpp +87 -0
  1291. casadi/include/fatrop/ocp/DuInfEvaluator.hpp +38 -0
  1292. casadi/include/fatrop/ocp/FatropOCP.hpp +161 -0
  1293. casadi/include/fatrop/ocp/FatropOCPBuilder.hpp +52 -0
  1294. casadi/include/fatrop/ocp/FatropOCPResto.hpp +299 -0
  1295. casadi/include/fatrop/ocp/OCP.hpp +82 -0
  1296. casadi/include/fatrop/ocp/OCPAbstract.hpp +254 -0
  1297. casadi/include/fatrop/ocp/OCPAdapter.hpp +197 -0
  1298. casadi/include/fatrop/ocp/OCPCInterface.h +289 -0
  1299. casadi/include/fatrop/ocp/OCPDims.hpp +60 -0
  1300. casadi/include/fatrop/ocp/OCPInitializer.hpp +41 -0
  1301. casadi/include/fatrop/ocp/OCPKKT.hpp +69 -0
  1302. casadi/include/fatrop/ocp/OCPLSRiccati.hpp +198 -0
  1303. casadi/include/fatrop/ocp/OCPLSScaler.hpp +66 -0
  1304. casadi/include/fatrop/ocp/OCPLinearSolver.hpp +75 -0
  1305. casadi/include/fatrop/ocp/OCPNoScaling.hpp +42 -0
  1306. casadi/include/fatrop/ocp/OCPScalingMethod.hpp +42 -0
  1307. casadi/include/fatrop/ocp/StageOCP.hpp +592 -0
  1308. casadi/include/fatrop/ocp/StageOCPApplication.hpp +242 -0
  1309. casadi/include/fatrop/ocp/StageOCPExpressions.hpp +182 -0
  1310. casadi/include/fatrop/ocp/UStageEvalAbstract.hpp +168 -0
  1311. casadi/include/fatrop/ocp/UStageOCPImpl.hpp +152 -0
  1312. casadi/include/fatrop/quasi_newton/bfgs.hpp +159 -0
  1313. casadi/include/fatrop/solver/AlgBuilder.hpp +76 -0
  1314. casadi/include/fatrop/solver/AlgStrategy.hpp +33 -0
  1315. casadi/include/fatrop/solver/FatropAlg.hpp +121 -0
  1316. casadi/include/fatrop/solver/FatropData.hpp +188 -0
  1317. casadi/include/fatrop/solver/FatropOptions.hpp +95 -0
  1318. casadi/include/fatrop/solver/FatropPrinter.hpp +65 -0
  1319. casadi/include/fatrop/solver/FatropStats.hpp +63 -0
  1320. casadi/include/fatrop/solver/Filter.hpp +54 -0
  1321. casadi/include/fatrop/solver/IterationData.hpp +56 -0
  1322. casadi/include/fatrop/solver/LineSearch.hpp +86 -0
  1323. casadi/include/fatrop/solver/NLPL1.hpp +263 -0
  1324. casadi/include/fatrop/templates/NLPAlg.hpp +104 -0
  1325. casadi/include/ghc/filesystem.hpp +6083 -0
  1326. casadi/include/ghc/fs_fwd.hpp +38 -0
  1327. casadi/include/ghc/fs_impl.hpp +35 -0
  1328. casadi/include/ghc/fs_std.hpp +60 -0
  1329. casadi/include/ghc/fs_std_fwd.hpp +63 -0
  1330. casadi/include/ghc/fs_std_impl.hpp +46 -0
  1331. casadi/include/highs/HConfig.h +23 -0
  1332. casadi/include/highs/Highs.h +1703 -0
  1333. casadi/include/highs/filereaderlp/builder.hpp +25 -0
  1334. casadi/include/highs/filereaderlp/def.hpp +19 -0
  1335. casadi/include/highs/filereaderlp/model.hpp +68 -0
  1336. casadi/include/highs/filereaderlp/reader.hpp +10 -0
  1337. casadi/include/highs/interfaces/highs_c_api.h +2456 -0
  1338. casadi/include/highs/io/Filereader.h +45 -0
  1339. casadi/include/highs/io/FilereaderEms.h +30 -0
  1340. casadi/include/highs/io/FilereaderLp.h +51 -0
  1341. casadi/include/highs/io/FilereaderMps.h +27 -0
  1342. casadi/include/highs/io/HMPSIO.h +78 -0
  1343. casadi/include/highs/io/HMpsFF.h +238 -0
  1344. casadi/include/highs/io/HighsIO.h +114 -0
  1345. casadi/include/highs/io/LoadOptions.h +24 -0
  1346. casadi/include/highs/ipm/IpxSolution.h +32 -0
  1347. casadi/include/highs/ipm/IpxWrapper.h +70 -0
  1348. casadi/include/highs/ipm/basiclu/basiclu.h +161 -0
  1349. casadi/include/highs/ipm/basiclu/basiclu_factorize.h +247 -0
  1350. casadi/include/highs/ipm/basiclu/basiclu_get_factors.h +108 -0
  1351. casadi/include/highs/ipm/basiclu/basiclu_initialize.h +119 -0
  1352. casadi/include/highs/ipm/basiclu/basiclu_obj_factorize.h +34 -0
  1353. casadi/include/highs/ipm/basiclu/basiclu_obj_free.h +19 -0
  1354. casadi/include/highs/ipm/basiclu/basiclu_obj_get_factors.h +34 -0
  1355. casadi/include/highs/ipm/basiclu/basiclu_obj_initialize.h +46 -0
  1356. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_dense.h +29 -0
  1357. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_for_update.h +42 -0
  1358. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_sparse.h +32 -0
  1359. casadi/include/highs/ipm/basiclu/basiclu_obj_update.h +31 -0
  1360. casadi/include/highs/ipm/basiclu/basiclu_object.h +30 -0
  1361. casadi/include/highs/ipm/basiclu/basiclu_solve_dense.h +75 -0
  1362. casadi/include/highs/ipm/basiclu/basiclu_solve_for_update.h +169 -0
  1363. casadi/include/highs/ipm/basiclu/basiclu_solve_sparse.h +112 -0
  1364. casadi/include/highs/ipm/basiclu/basiclu_update.h +125 -0
  1365. casadi/include/highs/ipm/basiclu/lu_def.h +39 -0
  1366. casadi/include/highs/ipm/basiclu/lu_file.h +21 -0
  1367. casadi/include/highs/ipm/basiclu/lu_internal.h +220 -0
  1368. casadi/include/highs/ipm/basiclu/lu_list.h +168 -0
  1369. casadi/include/highs/ipm/ipx/basiclu_kernel.h +20 -0
  1370. casadi/include/highs/ipm/ipx/basiclu_wrapper.h +47 -0
  1371. casadi/include/highs/ipm/ipx/basis.h +351 -0
  1372. casadi/include/highs/ipm/ipx/conjugate_residuals.h +74 -0
  1373. casadi/include/highs/ipm/ipx/control.h +164 -0
  1374. casadi/include/highs/ipm/ipx/crossover.h +157 -0
  1375. casadi/include/highs/ipm/ipx/diagonal_precond.h +45 -0
  1376. casadi/include/highs/ipm/ipx/forrest_tomlin.h +102 -0
  1377. casadi/include/highs/ipm/ipx/guess_basis.h +21 -0
  1378. casadi/include/highs/ipm/ipx/indexed_vector.h +113 -0
  1379. casadi/include/highs/ipm/ipx/info.h +27 -0
  1380. casadi/include/highs/ipm/ipx/ipm.h +94 -0
  1381. casadi/include/highs/ipm/ipx/ipx_c.h +47 -0
  1382. casadi/include/highs/ipm/ipx/ipx_config.h +9 -0
  1383. casadi/include/highs/ipm/ipx/ipx_info.h +111 -0
  1384. casadi/include/highs/ipm/ipx/ipx_internal.h +88 -0
  1385. casadi/include/highs/ipm/ipx/ipx_parameters.h +76 -0
  1386. casadi/include/highs/ipm/ipx/ipx_status.h +57 -0
  1387. casadi/include/highs/ipm/ipx/iterate.h +328 -0
  1388. casadi/include/highs/ipm/ipx/kkt_solver.h +70 -0
  1389. casadi/include/highs/ipm/ipx/kkt_solver_basis.h +66 -0
  1390. casadi/include/highs/ipm/ipx/kkt_solver_diag.h +48 -0
  1391. casadi/include/highs/ipm/ipx/linear_operator.h +26 -0
  1392. casadi/include/highs/ipm/ipx/lp_solver.h +202 -0
  1393. casadi/include/highs/ipm/ipx/lu_factorization.h +79 -0
  1394. casadi/include/highs/ipm/ipx/lu_update.h +129 -0
  1395. casadi/include/highs/ipm/ipx/maxvolume.h +54 -0
  1396. casadi/include/highs/ipm/ipx/model.h +413 -0
  1397. casadi/include/highs/ipm/ipx/multistream.h +52 -0
  1398. casadi/include/highs/ipm/ipx/normal_matrix.h +44 -0
  1399. casadi/include/highs/ipm/ipx/power_method.h +44 -0
  1400. casadi/include/highs/ipm/ipx/sparse_matrix.h +195 -0
  1401. casadi/include/highs/ipm/ipx/sparse_utils.h +58 -0
  1402. casadi/include/highs/ipm/ipx/splitted_normal_matrix.h +63 -0
  1403. casadi/include/highs/ipm/ipx/starting_basis.h +39 -0
  1404. casadi/include/highs/ipm/ipx/symbolic_invert.h +29 -0
  1405. casadi/include/highs/ipm/ipx/timer.h +24 -0
  1406. casadi/include/highs/ipm/ipx/utils.h +39 -0
  1407. casadi/include/highs/lp_data/HConst.h +320 -0
  1408. casadi/include/highs/lp_data/HStruct.h +182 -0
  1409. casadi/include/highs/lp_data/HighsAnalysis.h +23 -0
  1410. casadi/include/highs/lp_data/HighsCallback.h +47 -0
  1411. casadi/include/highs/lp_data/HighsCallbackStruct.h +62 -0
  1412. casadi/include/highs/lp_data/HighsDebug.h +34 -0
  1413. casadi/include/highs/lp_data/HighsIis.h +62 -0
  1414. casadi/include/highs/lp_data/HighsInfo.h +329 -0
  1415. casadi/include/highs/lp_data/HighsInfoDebug.h +27 -0
  1416. casadi/include/highs/lp_data/HighsLp.h +100 -0
  1417. casadi/include/highs/lp_data/HighsLpSolverObject.h +45 -0
  1418. casadi/include/highs/lp_data/HighsLpUtils.h +298 -0
  1419. casadi/include/highs/lp_data/HighsModelUtils.h +112 -0
  1420. casadi/include/highs/lp_data/HighsOptions.h +1469 -0
  1421. casadi/include/highs/lp_data/HighsRanging.h +43 -0
  1422. casadi/include/highs/lp_data/HighsSolution.h +144 -0
  1423. casadi/include/highs/lp_data/HighsSolutionDebug.h +87 -0
  1424. casadi/include/highs/lp_data/HighsSolve.h +23 -0
  1425. casadi/include/highs/lp_data/HighsStatus.h +29 -0
  1426. casadi/include/highs/mip/HighsCliqueTable.h +318 -0
  1427. casadi/include/highs/mip/HighsConflictPool.h +109 -0
  1428. casadi/include/highs/mip/HighsCutGeneration.h +106 -0
  1429. casadi/include/highs/mip/HighsCutPool.h +168 -0
  1430. casadi/include/highs/mip/HighsDebugSol.h +132 -0
  1431. casadi/include/highs/mip/HighsDomain.h +653 -0
  1432. casadi/include/highs/mip/HighsDomainChange.h +48 -0
  1433. casadi/include/highs/mip/HighsDynamicRowMatrix.h +104 -0
  1434. casadi/include/highs/mip/HighsGFkSolve.h +438 -0
  1435. casadi/include/highs/mip/HighsImplications.h +170 -0
  1436. casadi/include/highs/mip/HighsLpAggregator.h +50 -0
  1437. casadi/include/highs/mip/HighsLpRelaxation.h +357 -0
  1438. casadi/include/highs/mip/HighsMipAnalysis.h +52 -0
  1439. casadi/include/highs/mip/HighsMipSolver.h +112 -0
  1440. casadi/include/highs/mip/HighsMipSolverData.h +297 -0
  1441. casadi/include/highs/mip/HighsModkSeparator.h +60 -0
  1442. casadi/include/highs/mip/HighsNodeQueue.h +311 -0
  1443. casadi/include/highs/mip/HighsObjectiveFunction.h +71 -0
  1444. casadi/include/highs/mip/HighsPathSeparator.h +39 -0
  1445. casadi/include/highs/mip/HighsPrimalHeuristics.h +70 -0
  1446. casadi/include/highs/mip/HighsPseudocost.h +360 -0
  1447. casadi/include/highs/mip/HighsRedcostFixing.h +42 -0
  1448. casadi/include/highs/mip/HighsSearch.h +241 -0
  1449. casadi/include/highs/mip/HighsSeparation.h +41 -0
  1450. casadi/include/highs/mip/HighsSeparator.h +52 -0
  1451. casadi/include/highs/mip/HighsTableauSeparator.h +34 -0
  1452. casadi/include/highs/mip/HighsTransformedLp.h +63 -0
  1453. casadi/include/highs/mip/MipTimer.h +471 -0
  1454. casadi/include/highs/model/HighsHessian.h +54 -0
  1455. casadi/include/highs/model/HighsHessianUtils.h +49 -0
  1456. casadi/include/highs/model/HighsModel.h +52 -0
  1457. casadi/include/highs/parallel/HighsBinarySemaphore.h +113 -0
  1458. casadi/include/highs/parallel/HighsCacheAlign.h +87 -0
  1459. casadi/include/highs/parallel/HighsCombinable.h +121 -0
  1460. casadi/include/highs/parallel/HighsMutex.h +129 -0
  1461. casadi/include/highs/parallel/HighsParallel.h +133 -0
  1462. casadi/include/highs/parallel/HighsRaceTimer.h +43 -0
  1463. casadi/include/highs/parallel/HighsSchedulerConstants.h +24 -0
  1464. casadi/include/highs/parallel/HighsSpinMutex.h +53 -0
  1465. casadi/include/highs/parallel/HighsSplitDeque.h +583 -0
  1466. casadi/include/highs/parallel/HighsTask.h +175 -0
  1467. casadi/include/highs/parallel/HighsTaskExecutor.h +222 -0
  1468. casadi/include/highs/pdlp/CupdlpWrapper.h +104 -0
  1469. casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +40 -0
  1470. casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +433 -0
  1471. casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +189 -0
  1472. casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +19 -0
  1473. casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +31 -0
  1474. casadi/include/highs/pdlp/cupdlp/cupdlp_scaling.h +26 -0
  1475. casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +98 -0
  1476. casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +37 -0
  1477. casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +1807 -0
  1478. casadi/include/highs/pdqsort/pdqsort.h +532 -0
  1479. casadi/include/highs/presolve/HPresolve.h +405 -0
  1480. casadi/include/highs/presolve/HPresolveAnalysis.h +51 -0
  1481. casadi/include/highs/presolve/HighsPostsolveStack.h +940 -0
  1482. casadi/include/highs/presolve/HighsSymmetry.h +281 -0
  1483. casadi/include/highs/presolve/ICrash.h +124 -0
  1484. casadi/include/highs/presolve/ICrashUtil.h +62 -0
  1485. casadi/include/highs/presolve/ICrashX.h +23 -0
  1486. casadi/include/highs/presolve/PresolveComponent.h +90 -0
  1487. casadi/include/highs/qpsolver/a_asm.hpp +70 -0
  1488. casadi/include/highs/qpsolver/a_quass.hpp +15 -0
  1489. casadi/include/highs/qpsolver/basis.hpp +152 -0
  1490. casadi/include/highs/qpsolver/crashsolution.hpp +13 -0
  1491. casadi/include/highs/qpsolver/dantzigpricing.hpp +73 -0
  1492. casadi/include/highs/qpsolver/devexpricing.hpp +101 -0
  1493. casadi/include/highs/qpsolver/eventhandler.hpp +23 -0
  1494. casadi/include/highs/qpsolver/factor.hpp +401 -0
  1495. casadi/include/highs/qpsolver/feasibility_bounded.hpp +107 -0
  1496. casadi/include/highs/qpsolver/feasibility_highs.hpp +294 -0
  1497. casadi/include/highs/qpsolver/gradient.hpp +39 -0
  1498. casadi/include/highs/qpsolver/instance.hpp +63 -0
  1499. casadi/include/highs/qpsolver/matrix.hpp +335 -0
  1500. casadi/include/highs/qpsolver/perturbation.hpp +8 -0
  1501. casadi/include/highs/qpsolver/pricing.hpp +15 -0
  1502. casadi/include/highs/qpsolver/qpconst.hpp +27 -0
  1503. casadi/include/highs/qpsolver/qpvector.hpp +235 -0
  1504. casadi/include/highs/qpsolver/quass.hpp +20 -0
  1505. casadi/include/highs/qpsolver/ratiotest.hpp +19 -0
  1506. casadi/include/highs/qpsolver/runtime.hpp +38 -0
  1507. casadi/include/highs/qpsolver/scaling.hpp +8 -0
  1508. casadi/include/highs/qpsolver/settings.hpp +69 -0
  1509. casadi/include/highs/qpsolver/snippets.hpp +29 -0
  1510. casadi/include/highs/qpsolver/statistics.hpp +23 -0
  1511. casadi/include/highs/qpsolver/steepestedgepricing.hpp +166 -0
  1512. casadi/include/highs/simplex/HApp.h +476 -0
  1513. casadi/include/highs/simplex/HEkk.h +416 -0
  1514. casadi/include/highs/simplex/HEkkDual.h +513 -0
  1515. casadi/include/highs/simplex/HEkkDualRHS.h +134 -0
  1516. casadi/include/highs/simplex/HEkkDualRow.h +201 -0
  1517. casadi/include/highs/simplex/HEkkPrimal.h +191 -0
  1518. casadi/include/highs/simplex/HSimplex.h +42 -0
  1519. casadi/include/highs/simplex/HSimplexDebug.h +48 -0
  1520. casadi/include/highs/simplex/HSimplexNla.h +158 -0
  1521. casadi/include/highs/simplex/HSimplexReport.h +21 -0
  1522. casadi/include/highs/simplex/HighsSimplexAnalysis.h +500 -0
  1523. casadi/include/highs/simplex/SimplexConst.h +273 -0
  1524. casadi/include/highs/simplex/SimplexStruct.h +261 -0
  1525. casadi/include/highs/simplex/SimplexTimer.h +409 -0
  1526. casadi/include/highs/test/DevKkt.h +143 -0
  1527. casadi/include/highs/test/KktCh2.h +79 -0
  1528. casadi/include/highs/util/FactorTimer.h +199 -0
  1529. casadi/include/highs/util/HFactor.h +587 -0
  1530. casadi/include/highs/util/HFactorConst.h +81 -0
  1531. casadi/include/highs/util/HFactorDebug.h +55 -0
  1532. casadi/include/highs/util/HSet.h +89 -0
  1533. casadi/include/highs/util/HVector.h +22 -0
  1534. casadi/include/highs/util/HVectorBase.h +102 -0
  1535. casadi/include/highs/util/HighsCDouble.h +319 -0
  1536. casadi/include/highs/util/HighsComponent.h +53 -0
  1537. casadi/include/highs/util/HighsDataStack.h +83 -0
  1538. casadi/include/highs/util/HighsDisjointSets.h +107 -0
  1539. casadi/include/highs/util/HighsHash.h +1274 -0
  1540. casadi/include/highs/util/HighsHashTree.h +1447 -0
  1541. casadi/include/highs/util/HighsInt.h +36 -0
  1542. casadi/include/highs/util/HighsIntegers.h +212 -0
  1543. casadi/include/highs/util/HighsLinearSumBounds.h +157 -0
  1544. casadi/include/highs/util/HighsMatrixPic.h +37 -0
  1545. casadi/include/highs/util/HighsMatrixSlice.h +561 -0
  1546. casadi/include/highs/util/HighsMatrixUtils.h +54 -0
  1547. casadi/include/highs/util/HighsMemoryAllocation.h +63 -0
  1548. casadi/include/highs/util/HighsRandom.h +242 -0
  1549. casadi/include/highs/util/HighsRbTree.h +452 -0
  1550. casadi/include/highs/util/HighsSort.h +131 -0
  1551. casadi/include/highs/util/HighsSparseMatrix.h +150 -0
  1552. casadi/include/highs/util/HighsSparseVectorSum.h +95 -0
  1553. casadi/include/highs/util/HighsSplay.h +135 -0
  1554. casadi/include/highs/util/HighsTimer.h +381 -0
  1555. casadi/include/highs/util/HighsUtils.h +217 -0
  1556. casadi/include/highs/util/stringutil.h +46 -0
  1557. casadi/include/highs/zstr/strict_fstream.hpp +237 -0
  1558. casadi/include/highs/zstr/zstr.hpp +472 -0
  1559. casadi/include/highs_export.h +42 -0
  1560. casadi/include/hpipm_aux_mem.h +52 -0
  1561. casadi/include/hpipm_aux_string.h +50 -0
  1562. casadi/include/hpipm_common.h +76 -0
  1563. casadi/include/hpipm_d_cast_qcqp.h +71 -0
  1564. casadi/include/hpipm_d_cond.h +135 -0
  1565. casadi/include/hpipm_d_cond_aux.h +92 -0
  1566. casadi/include/hpipm_d_cond_qcqp.h +129 -0
  1567. casadi/include/hpipm_d_core_qp_ipm.h +101 -0
  1568. casadi/include/hpipm_d_core_qp_ipm_aux.h +68 -0
  1569. casadi/include/hpipm_d_dense_qcqp.h +199 -0
  1570. casadi/include/hpipm_d_dense_qcqp_dim.h +98 -0
  1571. casadi/include/hpipm_d_dense_qcqp_ipm.h +193 -0
  1572. casadi/include/hpipm_d_dense_qcqp_res.h +108 -0
  1573. casadi/include/hpipm_d_dense_qcqp_sol.h +85 -0
  1574. casadi/include/hpipm_d_dense_qcqp_utils.h +82 -0
  1575. casadi/include/hpipm_d_dense_qp.h +207 -0
  1576. casadi/include/hpipm_d_dense_qp_dim.h +92 -0
  1577. casadi/include/hpipm_d_dense_qp_ipm.h +260 -0
  1578. casadi/include/hpipm_d_dense_qp_kkt.h +72 -0
  1579. casadi/include/hpipm_d_dense_qp_res.h +106 -0
  1580. casadi/include/hpipm_d_dense_qp_sol.h +94 -0
  1581. casadi/include/hpipm_d_dense_qp_utils.h +83 -0
  1582. casadi/include/hpipm_d_ocp_qcqp.h +322 -0
  1583. casadi/include/hpipm_d_ocp_qcqp_dim.h +130 -0
  1584. casadi/include/hpipm_d_ocp_qcqp_ipm.h +192 -0
  1585. casadi/include/hpipm_d_ocp_qcqp_red.h +118 -0
  1586. casadi/include/hpipm_d_ocp_qcqp_res.h +115 -0
  1587. casadi/include/hpipm_d_ocp_qcqp_sol.h +114 -0
  1588. casadi/include/hpipm_d_ocp_qcqp_utils.h +81 -0
  1589. casadi/include/hpipm_d_ocp_qp.h +306 -0
  1590. casadi/include/hpipm_d_ocp_qp_dim.h +142 -0
  1591. casadi/include/hpipm_d_ocp_qp_ipm.h +252 -0
  1592. casadi/include/hpipm_d_ocp_qp_kkt.h +66 -0
  1593. casadi/include/hpipm_d_ocp_qp_red.h +117 -0
  1594. casadi/include/hpipm_d_ocp_qp_res.h +113 -0
  1595. casadi/include/hpipm_d_ocp_qp_sol.h +128 -0
  1596. casadi/include/hpipm_d_ocp_qp_utils.h +82 -0
  1597. casadi/include/hpipm_d_part_cond.h +115 -0
  1598. casadi/include/hpipm_d_part_cond_qcqp.h +106 -0
  1599. casadi/include/hpipm_d_sim_erk.h +122 -0
  1600. casadi/include/hpipm_d_sim_rk.h +71 -0
  1601. casadi/include/hpipm_d_tree_ocp_qcqp.h +213 -0
  1602. casadi/include/hpipm_d_tree_ocp_qcqp_dim.h +117 -0
  1603. casadi/include/hpipm_d_tree_ocp_qcqp_ipm.h +191 -0
  1604. casadi/include/hpipm_d_tree_ocp_qcqp_res.h +109 -0
  1605. casadi/include/hpipm_d_tree_ocp_qcqp_sol.h +99 -0
  1606. casadi/include/hpipm_d_tree_ocp_qcqp_utils.h +84 -0
  1607. casadi/include/hpipm_d_tree_ocp_qp.h +195 -0
  1608. casadi/include/hpipm_d_tree_ocp_qp_dim.h +111 -0
  1609. casadi/include/hpipm_d_tree_ocp_qp_ipm.h +209 -0
  1610. casadi/include/hpipm_d_tree_ocp_qp_kkt.h +52 -0
  1611. casadi/include/hpipm_d_tree_ocp_qp_res.h +107 -0
  1612. casadi/include/hpipm_d_tree_ocp_qp_sol.h +100 -0
  1613. casadi/include/hpipm_d_tree_ocp_qp_utils.h +83 -0
  1614. casadi/include/hpipm_m_dense_qp.h +68 -0
  1615. casadi/include/hpipm_m_dense_qp_dim.h +68 -0
  1616. casadi/include/hpipm_m_ocp_qp.h +49 -0
  1617. casadi/include/hpipm_m_ocp_qp_ipm_hard.h +115 -0
  1618. casadi/include/hpipm_m_ocp_qp_kkt.h +45 -0
  1619. casadi/include/hpipm_s_cast_qcqp.h +72 -0
  1620. casadi/include/hpipm_s_cond.h +137 -0
  1621. casadi/include/hpipm_s_cond_aux.h +92 -0
  1622. casadi/include/hpipm_s_cond_qcqp.h +130 -0
  1623. casadi/include/hpipm_s_core_qp_ipm.h +101 -0
  1624. casadi/include/hpipm_s_core_qp_ipm_aux.h +68 -0
  1625. casadi/include/hpipm_s_dense_qcqp.h +200 -0
  1626. casadi/include/hpipm_s_dense_qcqp_dim.h +99 -0
  1627. casadi/include/hpipm_s_dense_qcqp_ipm.h +204 -0
  1628. casadi/include/hpipm_s_dense_qcqp_res.h +109 -0
  1629. casadi/include/hpipm_s_dense_qcqp_sol.h +86 -0
  1630. casadi/include/hpipm_s_dense_qcqp_utils.h +83 -0
  1631. casadi/include/hpipm_s_dense_qp.h +207 -0
  1632. casadi/include/hpipm_s_dense_qp_dim.h +94 -0
  1633. casadi/include/hpipm_s_dense_qp_ipm.h +260 -0
  1634. casadi/include/hpipm_s_dense_qp_kkt.h +72 -0
  1635. casadi/include/hpipm_s_dense_qp_res.h +107 -0
  1636. casadi/include/hpipm_s_dense_qp_sol.h +94 -0
  1637. casadi/include/hpipm_s_dense_qp_utils.h +84 -0
  1638. casadi/include/hpipm_s_ocp_qcqp.h +322 -0
  1639. casadi/include/hpipm_s_ocp_qcqp_dim.h +131 -0
  1640. casadi/include/hpipm_s_ocp_qcqp_ipm.h +193 -0
  1641. casadi/include/hpipm_s_ocp_qcqp_red.h +119 -0
  1642. casadi/include/hpipm_s_ocp_qcqp_res.h +116 -0
  1643. casadi/include/hpipm_s_ocp_qcqp_sol.h +115 -0
  1644. casadi/include/hpipm_s_ocp_qcqp_utils.h +82 -0
  1645. casadi/include/hpipm_s_ocp_qp.h +306 -0
  1646. casadi/include/hpipm_s_ocp_qp_dim.h +141 -0
  1647. casadi/include/hpipm_s_ocp_qp_ipm.h +252 -0
  1648. casadi/include/hpipm_s_ocp_qp_kkt.h +66 -0
  1649. casadi/include/hpipm_s_ocp_qp_red.h +118 -0
  1650. casadi/include/hpipm_s_ocp_qp_res.h +115 -0
  1651. casadi/include/hpipm_s_ocp_qp_sol.h +128 -0
  1652. casadi/include/hpipm_s_ocp_qp_utils.h +83 -0
  1653. casadi/include/hpipm_s_part_cond.h +115 -0
  1654. casadi/include/hpipm_s_part_cond_qcqp.h +107 -0
  1655. casadi/include/hpipm_s_sim_erk.h +121 -0
  1656. casadi/include/hpipm_s_sim_rk.h +72 -0
  1657. casadi/include/hpipm_s_tree_ocp_qcqp.h +213 -0
  1658. casadi/include/hpipm_s_tree_ocp_qcqp_dim.h +118 -0
  1659. casadi/include/hpipm_s_tree_ocp_qcqp_ipm.h +192 -0
  1660. casadi/include/hpipm_s_tree_ocp_qcqp_res.h +110 -0
  1661. casadi/include/hpipm_s_tree_ocp_qcqp_sol.h +97 -0
  1662. casadi/include/hpipm_s_tree_ocp_qcqp_utils.h +85 -0
  1663. casadi/include/hpipm_s_tree_ocp_qp.h +196 -0
  1664. casadi/include/hpipm_s_tree_ocp_qp_dim.h +111 -0
  1665. casadi/include/hpipm_s_tree_ocp_qp_ipm.h +208 -0
  1666. casadi/include/hpipm_s_tree_ocp_qp_kkt.h +54 -0
  1667. casadi/include/hpipm_s_tree_ocp_qp_res.h +108 -0
  1668. casadi/include/hpipm_s_tree_ocp_qp_sol.h +98 -0
  1669. casadi/include/hpipm_s_tree_ocp_qp_utils.h +84 -0
  1670. casadi/include/hpipm_scenario_tree.h +70 -0
  1671. casadi/include/hpipm_timing.h +67 -0
  1672. casadi/include/hpipm_tree.h +76 -0
  1673. casadi/include/licenses/FMI-Standard-2.0.2/LICENSE.txt +473 -0
  1674. casadi/include/licenses/FMI-Standard-3.0/LICENSE.txt +464 -0
  1675. casadi/include/licenses/alpaqa-external/LICENSE +165 -0
  1676. casadi/include/licenses/blasfeo-external/LICENSE.txt +26 -0
  1677. casadi/include/licenses/bonmin-external/Bonmin/LICENSE +87 -0
  1678. casadi/include/licenses/bonmin-external/LICENSE +3 -0
  1679. casadi/include/licenses/casadi/LICENSE/LICENSE.txt +165 -0
  1680. casadi/include/licenses/casadi-sundials/LICENSE +64 -0
  1681. casadi/include/licenses/casadi-sundials/cvodes/LICENSE +60 -0
  1682. casadi/include/licenses/casadi-sundials/idas/LICENSE +59 -0
  1683. casadi/include/licenses/casadi-sundials/kinsol/LICENSE +59 -0
  1684. casadi/include/licenses/casadi-sundials/sundials/LICENSE +67 -0
  1685. casadi/include/licenses/cbc-external/Cbc/LICENSE +239 -0
  1686. casadi/include/licenses/cbc-external/LICENSE +245 -0
  1687. casadi/include/licenses/cgl-external/Cgl/LICENSE +239 -0
  1688. casadi/include/licenses/cgl-external/LICENSE +245 -0
  1689. casadi/include/licenses/clp-external/Clp/LICENSE +239 -0
  1690. casadi/include/licenses/clp-external/LICENSE +245 -0
  1691. casadi/include/licenses/coinutils-external/CoinUtils/LICENSE +239 -0
  1692. casadi/include/licenses/coinutils-external/LICENSE +245 -0
  1693. casadi/include/licenses/daqp-external/LICENSE +21 -0
  1694. casadi/include/licenses/fatrop-external/LICENSE.txt +165 -0
  1695. casadi/include/licenses/fatrop-external/external/blasfeo/LICENSE.txt +26 -0
  1696. casadi/include/licenses/fatrop-external/external/pybind11/LICENSE +29 -0
  1697. casadi/include/licenses/ghc-external/LICENSE +19 -0
  1698. casadi/include/licenses/highs-external/LICENSE.txt +21 -0
  1699. casadi/include/licenses/highs-external/extern/filereaderlp/LICENSE +19 -0
  1700. casadi/include/licenses/hpipm-external/LICENSE.txt +26 -0
  1701. casadi/include/licenses/ipopt-external/LICENSE +260 -0
  1702. casadi/include/licenses/libz-external/LICENSE +22 -0
  1703. casadi/include/licenses/libz-external/contrib/dotzlib/LICENSE_1_0.txt +23 -0
  1704. casadi/include/licenses/libzip-external/LICENSE +31 -0
  1705. casadi/include/licenses/metis-external/LICENSE +87 -0
  1706. casadi/include/licenses/metis-external/metis-4.0/LICENSE +18 -0
  1707. casadi/include/licenses/mockups-external/LICENSE +21 -0
  1708. casadi/include/licenses/mumps-external/LICENSE +87 -0
  1709. casadi/include/licenses/mumps-external/MUMPS/LICENSE +50 -0
  1710. casadi/include/licenses/openblas-external/LICENSE +29 -0
  1711. casadi/include/licenses/openblas-external/ctest/LICENSE +23 -0
  1712. casadi/include/licenses/openblas-external/lapack-netlib/LAPACKE/LICENSE +26 -0
  1713. casadi/include/licenses/openblas-external/lapack-netlib/LICENSE +48 -0
  1714. casadi/include/licenses/openblas-external/reference/LICENSE +23 -0
  1715. casadi/include/licenses/openblas-external/relapack/LICENSE +22 -0
  1716. casadi/include/licenses/openblas-external/test/LICENSE +23 -0
  1717. casadi/include/licenses/osi-external/LICENSE +245 -0
  1718. casadi/include/licenses/osi-external/Osi/LICENSE +239 -0
  1719. casadi/include/licenses/osqp-external/LICENSE +201 -0
  1720. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/amd/LICENSE +36 -0
  1721. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/qdldl_sources/LICENSE +201 -0
  1722. casadi/include/licenses/proxqp-external/LICENSE +25 -0
  1723. casadi/include/licenses/proxqp-external/bindings/python/external/pybind11/LICENSE +29 -0
  1724. casadi/include/licenses/proxqp-external/cmake-module/LICENSE +4 -0
  1725. casadi/include/licenses/proxqp-external/cmake-module/doxygen/MathJax/LICENSE +202 -0
  1726. casadi/include/licenses/proxqp-external/external/cereal/LICENSE +24 -0
  1727. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/LICENSE +21 -0
  1728. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/rapidjson/LICENSE +13 -0
  1729. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/rapidjson/msinttypes/LICENSE +29 -0
  1730. casadi/include/licenses/qpOASES/LICENSE.txt +503 -0
  1731. casadi/include/licenses/sleqp-external/LICENSE +165 -0
  1732. casadi/include/licenses/superscs-external/LICENSE.txt +24 -0
  1733. casadi/include/licenses/tinyxml2-9.0.0/LICENSE.txt +18 -0
  1734. casadi/include/licenses/trlib-external/LICENSE +21 -0
  1735. casadi/include/openblas/cblas.h +411 -0
  1736. casadi/include/openblas/f77blas.h +796 -0
  1737. casadi/include/openblas/lapack.h +22997 -0
  1738. casadi/include/openblas/lapacke.h +12665 -0
  1739. casadi/include/openblas/lapacke_config.h +119 -0
  1740. casadi/include/openblas/lapacke_example_aux.h +9 -0
  1741. casadi/include/openblas/lapacke_mangling.h +17 -0
  1742. casadi/include/openblas/lapacke_utils.h +582 -0
  1743. casadi/include/openblas/openblas/lapacke_mangling.h +17 -0
  1744. casadi/include/openblas/openblas_config.h +140 -0
  1745. casadi/include/osqp/auxil.h +181 -0
  1746. casadi/include/osqp/constants.h +128 -0
  1747. casadi/include/osqp/cs.h +180 -0
  1748. casadi/include/osqp/ctrlc.h +56 -0
  1749. casadi/include/osqp/error.h +38 -0
  1750. casadi/include/osqp/glob_opts.h +167 -0
  1751. casadi/include/osqp/lin_alg.h +216 -0
  1752. casadi/include/osqp/lin_sys.h +54 -0
  1753. casadi/include/osqp/osqp.h +430 -0
  1754. casadi/include/osqp/osqp_configure.h +49 -0
  1755. casadi/include/osqp/polish.h +25 -0
  1756. casadi/include/osqp/proj.h +37 -0
  1757. casadi/include/osqp/scaling.h +44 -0
  1758. casadi/include/osqp/types.h +326 -0
  1759. casadi/include/osqp/util.h +222 -0
  1760. casadi/include/osqp/version.h +9 -0
  1761. casadi/include/proxsuite/config.hpp +68 -0
  1762. casadi/include/proxsuite/deprecated.hpp +56 -0
  1763. casadi/include/proxsuite/fwd.hpp +52 -0
  1764. casadi/include/proxsuite/helpers/common.hpp +70 -0
  1765. casadi/include/proxsuite/helpers/instruction-set.hpp +275 -0
  1766. casadi/include/proxsuite/helpers/optional.hpp +46 -0
  1767. casadi/include/proxsuite/helpers/tl-optional.hpp +2472 -0
  1768. casadi/include/proxsuite/helpers/version.hpp +39 -0
  1769. casadi/include/proxsuite/linalg/dense/core.hpp +863 -0
  1770. casadi/include/proxsuite/linalg/dense/factorize.hpp +375 -0
  1771. casadi/include/proxsuite/linalg/dense/ldlt.hpp +817 -0
  1772. casadi/include/proxsuite/linalg/dense/modify.hpp +333 -0
  1773. casadi/include/proxsuite/linalg/dense/solve.hpp +38 -0
  1774. casadi/include/proxsuite/linalg/dense/update.hpp +330 -0
  1775. casadi/include/proxsuite/linalg/sparse/core.hpp +531 -0
  1776. casadi/include/proxsuite/linalg/sparse/factorize.hpp +1303 -0
  1777. casadi/include/proxsuite/linalg/sparse/rowmod.hpp +443 -0
  1778. casadi/include/proxsuite/linalg/sparse/update.hpp +348 -0
  1779. casadi/include/proxsuite/linalg/veg/internal/assert_impl.hpp +20 -0
  1780. casadi/include/proxsuite/linalg/veg/internal/collection_algo.hpp +93 -0
  1781. casadi/include/proxsuite/linalg/veg/internal/dbg.hpp +15 -0
  1782. casadi/include/proxsuite/linalg/veg/internal/delete_special_members.hpp +77 -0
  1783. casadi/include/proxsuite/linalg/veg/internal/dyn_index.hpp +292 -0
  1784. casadi/include/proxsuite/linalg/veg/internal/epilogue.hpp +31 -0
  1785. casadi/include/proxsuite/linalg/veg/internal/external/hedley.ext.hpp +2074 -0
  1786. casadi/include/proxsuite/linalg/veg/internal/external/unhedley.ext.hpp +148 -0
  1787. casadi/include/proxsuite/linalg/veg/internal/fix_index.hpp +339 -0
  1788. casadi/include/proxsuite/linalg/veg/internal/has_asan.hpp +17 -0
  1789. casadi/include/proxsuite/linalg/veg/internal/integer_seq.hpp +248 -0
  1790. casadi/include/proxsuite/linalg/veg/internal/macros.hpp +1312 -0
  1791. casadi/include/proxsuite/linalg/veg/internal/narrow.hpp +46 -0
  1792. casadi/include/proxsuite/linalg/veg/internal/preprocessor.hpp +434 -0
  1793. casadi/include/proxsuite/linalg/veg/internal/prologue.hpp +157 -0
  1794. casadi/include/proxsuite/linalg/veg/internal/std.hpp +13 -0
  1795. casadi/include/proxsuite/linalg/veg/internal/terminate.hpp +22 -0
  1796. casadi/include/proxsuite/linalg/veg/internal/typedefs.hpp +58 -0
  1797. casadi/include/proxsuite/linalg/veg/memory/address.hpp +97 -0
  1798. casadi/include/proxsuite/linalg/veg/memory/alloc.hpp +352 -0
  1799. casadi/include/proxsuite/linalg/veg/memory/dynamic_stack.hpp +504 -0
  1800. casadi/include/proxsuite/linalg/veg/memory/placement.hpp +202 -0
  1801. casadi/include/proxsuite/linalg/veg/memory/stack_alloc.hpp +239 -0
  1802. casadi/include/proxsuite/linalg/veg/ref.hpp +148 -0
  1803. casadi/include/proxsuite/linalg/veg/slice.hpp +240 -0
  1804. casadi/include/proxsuite/linalg/veg/tuple.hpp +876 -0
  1805. casadi/include/proxsuite/linalg/veg/type_traits/alloc.hpp +169 -0
  1806. casadi/include/proxsuite/linalg/veg/type_traits/assignable.hpp +53 -0
  1807. casadi/include/proxsuite/linalg/veg/type_traits/constructible.hpp +217 -0
  1808. casadi/include/proxsuite/linalg/veg/type_traits/core.hpp +298 -0
  1809. casadi/include/proxsuite/linalg/veg/type_traits/invocable.hpp +47 -0
  1810. casadi/include/proxsuite/linalg/veg/type_traits/primitives.hpp +43 -0
  1811. casadi/include/proxsuite/linalg/veg/type_traits/tags.hpp +47 -0
  1812. casadi/include/proxsuite/linalg/veg/util/assert.hpp +48 -0
  1813. casadi/include/proxsuite/linalg/veg/util/dbg.hpp +6 -0
  1814. casadi/include/proxsuite/linalg/veg/util/defer.hpp +57 -0
  1815. casadi/include/proxsuite/linalg/veg/util/dynstack_alloc.hpp +19 -0
  1816. casadi/include/proxsuite/linalg/veg/util/get.hpp +153 -0
  1817. casadi/include/proxsuite/linalg/veg/util/index.hpp +6 -0
  1818. casadi/include/proxsuite/linalg/veg/util/unreachable.hpp +41 -0
  1819. casadi/include/proxsuite/linalg/veg/vec.hpp +1034 -0
  1820. casadi/include/proxsuite/proxqp/dense/dense.hpp +10 -0
  1821. casadi/include/proxsuite/proxqp/dense/fwd.hpp +55 -0
  1822. casadi/include/proxsuite/proxqp/dense/helpers.hpp +520 -0
  1823. casadi/include/proxsuite/proxqp/dense/linesearch.hpp +517 -0
  1824. casadi/include/proxsuite/proxqp/dense/model.hpp +147 -0
  1825. casadi/include/proxsuite/proxqp/dense/preconditioner/identity.hpp +113 -0
  1826. casadi/include/proxsuite/proxqp/dense/preconditioner/ruiz.hpp +571 -0
  1827. casadi/include/proxsuite/proxqp/dense/solver.hpp +1330 -0
  1828. casadi/include/proxsuite/proxqp/dense/utils.hpp +415 -0
  1829. casadi/include/proxsuite/proxqp/dense/views.hpp +1466 -0
  1830. casadi/include/proxsuite/proxqp/dense/workspace.hpp +264 -0
  1831. casadi/include/proxsuite/proxqp/dense/wrapper.hpp +491 -0
  1832. casadi/include/proxsuite/proxqp/results.hpp +212 -0
  1833. casadi/include/proxsuite/proxqp/settings.hpp +302 -0
  1834. casadi/include/proxsuite/proxqp/sparse/fwd.hpp +58 -0
  1835. casadi/include/proxsuite/proxqp/sparse/helpers.hpp +309 -0
  1836. casadi/include/proxsuite/proxqp/sparse/model.hpp +228 -0
  1837. casadi/include/proxsuite/proxqp/sparse/preconditioner/identity.hpp +64 -0
  1838. casadi/include/proxsuite/proxqp/sparse/preconditioner/ruiz.hpp +569 -0
  1839. casadi/include/proxsuite/proxqp/sparse/solver.hpp +1441 -0
  1840. casadi/include/proxsuite/proxqp/sparse/sparse.hpp +10 -0
  1841. casadi/include/proxsuite/proxqp/sparse/utils.hpp +815 -0
  1842. casadi/include/proxsuite/proxqp/sparse/views.hpp +63 -0
  1843. casadi/include/proxsuite/proxqp/sparse/workspace.hpp +790 -0
  1844. casadi/include/proxsuite/proxqp/sparse/wrapper.hpp +772 -0
  1845. casadi/include/proxsuite/proxqp/status.hpp +46 -0
  1846. casadi/include/proxsuite/proxqp/timings.hpp +101 -0
  1847. casadi/include/proxsuite/proxqp/utils/prints.hpp +47 -0
  1848. casadi/include/proxsuite/proxqp/utils/random_qp_problems.hpp +669 -0
  1849. casadi/include/proxsuite/serialization/archive.hpp +231 -0
  1850. casadi/include/proxsuite/serialization/eigen.hpp +107 -0
  1851. casadi/include/proxsuite/serialization/model.hpp +34 -0
  1852. casadi/include/proxsuite/serialization/results.hpp +74 -0
  1853. casadi/include/proxsuite/serialization/settings.hpp +60 -0
  1854. casadi/include/proxsuite/serialization/wrapper.hpp +24 -0
  1855. casadi/include/proxsuite/warning.hpp +35 -0
  1856. casadi/include/qdldl/qdldl.h +169 -0
  1857. casadi/include/qdldl/qdldl_types.h +23 -0
  1858. casadi/include/s_blas.h +78 -0
  1859. casadi/include/s_blas_64.h +73 -0
  1860. casadi/include/simde/arm/neon/aba.h +208 -0
  1861. casadi/include/simde/arm/neon/abd.h +384 -0
  1862. casadi/include/simde/arm/neon/abdl.h +147 -0
  1863. casadi/include/simde/arm/neon/abs.h +408 -0
  1864. casadi/include/simde/arm/neon/add.h +681 -0
  1865. casadi/include/simde/arm/neon/addl.h +127 -0
  1866. casadi/include/simde/arm/neon/addl_high.h +127 -0
  1867. casadi/include/simde/arm/neon/addlv.h +317 -0
  1868. casadi/include/simde/arm/neon/addv.h +447 -0
  1869. casadi/include/simde/arm/neon/addw.h +222 -0
  1870. casadi/include/simde/arm/neon/addw_high.h +193 -0
  1871. casadi/include/simde/arm/neon/and.h +552 -0
  1872. casadi/include/simde/arm/neon/bic.h +472 -0
  1873. casadi/include/simde/arm/neon/bsl.h +448 -0
  1874. casadi/include/simde/arm/neon/cagt.h +168 -0
  1875. casadi/include/simde/arm/neon/ceq.h +711 -0
  1876. casadi/include/simde/arm/neon/ceqz.h +335 -0
  1877. casadi/include/simde/arm/neon/cge.h +677 -0
  1878. casadi/include/simde/arm/neon/cgez.h +378 -0
  1879. casadi/include/simde/arm/neon/cgt.h +686 -0
  1880. casadi/include/simde/arm/neon/cgtz.h +380 -0
  1881. casadi/include/simde/arm/neon/cle.h +677 -0
  1882. casadi/include/simde/arm/neon/clez.h +378 -0
  1883. casadi/include/simde/arm/neon/cls.h +148 -0
  1884. casadi/include/simde/arm/neon/clt.h +679 -0
  1885. casadi/include/simde/arm/neon/cltz.h +263 -0
  1886. casadi/include/simde/arm/neon/clz.h +423 -0
  1887. casadi/include/simde/arm/neon/cnt.h +145 -0
  1888. casadi/include/simde/arm/neon/combine.h +343 -0
  1889. casadi/include/simde/arm/neon/create.h +186 -0
  1890. casadi/include/simde/arm/neon/cvt.h +492 -0
  1891. casadi/include/simde/arm/neon/dot.h +171 -0
  1892. casadi/include/simde/arm/neon/dot_lane.h +196 -0
  1893. casadi/include/simde/arm/neon/dup_lane.h +702 -0
  1894. casadi/include/simde/arm/neon/dup_n.h +534 -0
  1895. casadi/include/simde/arm/neon/eor.h +552 -0
  1896. casadi/include/simde/arm/neon/ext.h +887 -0
  1897. casadi/include/simde/arm/neon/get_high.h +260 -0
  1898. casadi/include/simde/arm/neon/get_lane.h +499 -0
  1899. casadi/include/simde/arm/neon/get_low.h +276 -0
  1900. casadi/include/simde/arm/neon/hadd.h +287 -0
  1901. casadi/include/simde/arm/neon/hsub.h +287 -0
  1902. casadi/include/simde/arm/neon/ld1.h +399 -0
  1903. casadi/include/simde/arm/neon/ld3.h +609 -0
  1904. casadi/include/simde/arm/neon/ld4.h +448 -0
  1905. casadi/include/simde/arm/neon/max.h +614 -0
  1906. casadi/include/simde/arm/neon/maxnm.h +215 -0
  1907. casadi/include/simde/arm/neon/maxv.h +400 -0
  1908. casadi/include/simde/arm/neon/min.h +660 -0
  1909. casadi/include/simde/arm/neon/minnm.h +215 -0
  1910. casadi/include/simde/arm/neon/minv.h +424 -0
  1911. casadi/include/simde/arm/neon/mla.h +530 -0
  1912. casadi/include/simde/arm/neon/mla_n.h +333 -0
  1913. casadi/include/simde/arm/neon/mlal.h +156 -0
  1914. casadi/include/simde/arm/neon/mlal_high.h +156 -0
  1915. casadi/include/simde/arm/neon/mlal_n.h +128 -0
  1916. casadi/include/simde/arm/neon/mls.h +264 -0
  1917. casadi/include/simde/arm/neon/mlsl.h +124 -0
  1918. casadi/include/simde/arm/neon/mlsl_high.h +124 -0
  1919. casadi/include/simde/arm/neon/mlsl_n.h +96 -0
  1920. casadi/include/simde/arm/neon/movl.h +208 -0
  1921. casadi/include/simde/arm/neon/movl_high.h +126 -0
  1922. casadi/include/simde/arm/neon/movn.h +195 -0
  1923. casadi/include/simde/arm/neon/movn_high.h +125 -0
  1924. casadi/include/simde/arm/neon/mul.h +594 -0
  1925. casadi/include/simde/arm/neon/mul_lane.h +472 -0
  1926. casadi/include/simde/arm/neon/mul_n.h +383 -0
  1927. casadi/include/simde/arm/neon/mull.h +236 -0
  1928. casadi/include/simde/arm/neon/mull_high.h +125 -0
  1929. casadi/include/simde/arm/neon/mull_n.h +158 -0
  1930. casadi/include/simde/arm/neon/mvn.h +426 -0
  1931. casadi/include/simde/arm/neon/neg.h +393 -0
  1932. casadi/include/simde/arm/neon/orn.h +505 -0
  1933. casadi/include/simde/arm/neon/orr.h +552 -0
  1934. casadi/include/simde/arm/neon/padal.h +211 -0
  1935. casadi/include/simde/arm/neon/padd.h +293 -0
  1936. casadi/include/simde/arm/neon/paddl.h +239 -0
  1937. casadi/include/simde/arm/neon/pmax.h +253 -0
  1938. casadi/include/simde/arm/neon/pmin.h +260 -0
  1939. casadi/include/simde/arm/neon/qabs.h +281 -0
  1940. casadi/include/simde/arm/neon/qadd.h +553 -0
  1941. casadi/include/simde/arm/neon/qdmulh.h +125 -0
  1942. casadi/include/simde/arm/neon/qdmull.h +125 -0
  1943. casadi/include/simde/arm/neon/qmovn.h +273 -0
  1944. casadi/include/simde/arm/neon/qmovn_high.h +127 -0
  1945. casadi/include/simde/arm/neon/qmovun.h +159 -0
  1946. casadi/include/simde/arm/neon/qneg.h +301 -0
  1947. casadi/include/simde/arm/neon/qrdmulh.h +165 -0
  1948. casadi/include/simde/arm/neon/qrdmulh_n.h +136 -0
  1949. casadi/include/simde/arm/neon/qshl.h +732 -0
  1950. casadi/include/simde/arm/neon/qsub.h +549 -0
  1951. casadi/include/simde/arm/neon/qtbl.h +455 -0
  1952. casadi/include/simde/arm/neon/qtbx.h +470 -0
  1953. casadi/include/simde/arm/neon/rbit.h +165 -0
  1954. casadi/include/simde/arm/neon/reinterpret.h +3101 -0
  1955. casadi/include/simde/arm/neon/rev16.h +137 -0
  1956. casadi/include/simde/arm/neon/rev32.h +235 -0
  1957. casadi/include/simde/arm/neon/rev64.h +358 -0
  1958. casadi/include/simde/arm/neon/rhadd.h +406 -0
  1959. casadi/include/simde/arm/neon/rnd.h +143 -0
  1960. casadi/include/simde/arm/neon/rndi.h +135 -0
  1961. casadi/include/simde/arm/neon/rndm.h +143 -0
  1962. casadi/include/simde/arm/neon/rndn.h +135 -0
  1963. casadi/include/simde/arm/neon/rndp.h +143 -0
  1964. casadi/include/simde/arm/neon/rshl.h +903 -0
  1965. casadi/include/simde/arm/neon/rshr_n.h +471 -0
  1966. casadi/include/simde/arm/neon/rsra_n.h +209 -0
  1967. casadi/include/simde/arm/neon/set_lane.h +422 -0
  1968. casadi/include/simde/arm/neon/shl.h +805 -0
  1969. casadi/include/simde/arm/neon/shl_n.h +560 -0
  1970. casadi/include/simde/arm/neon/shr_n.h +612 -0
  1971. casadi/include/simde/arm/neon/sra_n.h +202 -0
  1972. casadi/include/simde/arm/neon/st1.h +353 -0
  1973. casadi/include/simde/arm/neon/st1_lane.h +363 -0
  1974. casadi/include/simde/arm/neon/st3.h +426 -0
  1975. casadi/include/simde/arm/neon/st4.h +445 -0
  1976. casadi/include/simde/arm/neon/sub.h +659 -0
  1977. casadi/include/simde/arm/neon/subl.h +127 -0
  1978. casadi/include/simde/arm/neon/subw.h +221 -0
  1979. casadi/include/simde/arm/neon/subw_high.h +222 -0
  1980. casadi/include/simde/arm/neon/tbl.h +224 -0
  1981. casadi/include/simde/arm/neon/tbx.h +247 -0
  1982. casadi/include/simde/arm/neon/trn.h +252 -0
  1983. casadi/include/simde/arm/neon/trn1.h +500 -0
  1984. casadi/include/simde/arm/neon/trn2.h +499 -0
  1985. casadi/include/simde/arm/neon/tst.h +540 -0
  1986. casadi/include/simde/arm/neon/types.h +683 -0
  1987. casadi/include/simde/arm/neon/uqadd.h +325 -0
  1988. casadi/include/simde/arm/neon/uzp.h +252 -0
  1989. casadi/include/simde/arm/neon/uzp1.h +643 -0
  1990. casadi/include/simde/arm/neon/uzp2.h +647 -0
  1991. casadi/include/simde/arm/neon/zip.h +252 -0
  1992. casadi/include/simde/arm/neon/zip1.h +625 -0
  1993. casadi/include/simde/arm/neon/zip2.h +625 -0
  1994. casadi/include/simde/arm/neon.h +166 -0
  1995. casadi/include/simde/check.h +276 -0
  1996. casadi/include/simde/debug-trap.h +85 -0
  1997. casadi/include/simde/hedley.h +1971 -0
  1998. casadi/include/simde/simde-align.h +449 -0
  1999. casadi/include/simde/simde-arch.h +532 -0
  2000. casadi/include/simde/simde-common.h +890 -0
  2001. casadi/include/simde/simde-complex.h +148 -0
  2002. casadi/include/simde/simde-constify.h +397 -0
  2003. casadi/include/simde/simde-detect-clang.h +109 -0
  2004. casadi/include/simde/simde-diagnostic.h +428 -0
  2005. casadi/include/simde/simde-features.h +522 -0
  2006. casadi/include/simde/simde-math.h +1805 -0
  2007. casadi/include/simde/x86/avx.h +6193 -0
  2008. casadi/include/simde/x86/avx2.h +5660 -0
  2009. casadi/include/simde/x86/avx512/2intersect.h +250 -0
  2010. casadi/include/simde/x86/avx512/abs.h +562 -0
  2011. casadi/include/simde/x86/avx512/add.h +641 -0
  2012. casadi/include/simde/x86/avx512/adds.h +390 -0
  2013. casadi/include/simde/x86/avx512/and.h +305 -0
  2014. casadi/include/simde/x86/avx512/andnot.h +193 -0
  2015. casadi/include/simde/x86/avx512/avg.h +258 -0
  2016. casadi/include/simde/x86/avx512/blend.h +293 -0
  2017. casadi/include/simde/x86/avx512/broadcast.h +897 -0
  2018. casadi/include/simde/x86/avx512/cast.h +324 -0
  2019. casadi/include/simde/x86/avx512/cmp.h +587 -0
  2020. casadi/include/simde/x86/avx512/cmpeq.h +179 -0
  2021. casadi/include/simde/x86/avx512/cmpge.h +104 -0
  2022. casadi/include/simde/x86/avx512/cmpgt.h +189 -0
  2023. casadi/include/simde/x86/avx512/cmple.h +103 -0
  2024. casadi/include/simde/x86/avx512/cmplt.h +123 -0
  2025. casadi/include/simde/x86/avx512/copysign.h +86 -0
  2026. casadi/include/simde/x86/avx512/cvt.h +122 -0
  2027. casadi/include/simde/x86/avx512/cvts.h +723 -0
  2028. casadi/include/simde/x86/avx512/div.h +162 -0
  2029. casadi/include/simde/x86/avx512/extract.h +198 -0
  2030. casadi/include/simde/x86/avx512/fmadd.h +136 -0
  2031. casadi/include/simde/x86/avx512/fmsub.h +108 -0
  2032. casadi/include/simde/x86/avx512/fnmadd.h +108 -0
  2033. casadi/include/simde/x86/avx512/fnmsub.h +108 -0
  2034. casadi/include/simde/x86/avx512/insert.h +193 -0
  2035. casadi/include/simde/x86/avx512/kshift.h +152 -0
  2036. casadi/include/simde/x86/avx512/load.h +67 -0
  2037. casadi/include/simde/x86/avx512/loadu.h +113 -0
  2038. casadi/include/simde/x86/avx512/lzcnt.h +209 -0
  2039. casadi/include/simde/x86/avx512/madd.h +155 -0
  2040. casadi/include/simde/x86/avx512/maddubs.h +159 -0
  2041. casadi/include/simde/x86/avx512/max.h +587 -0
  2042. casadi/include/simde/x86/avx512/min.h +587 -0
  2043. casadi/include/simde/x86/avx512/mov.h +859 -0
  2044. casadi/include/simde/x86/avx512/mov_mask.h +372 -0
  2045. casadi/include/simde/x86/avx512/movm.h +460 -0
  2046. casadi/include/simde/x86/avx512/mul.h +279 -0
  2047. casadi/include/simde/x86/avx512/mulhi.h +65 -0
  2048. casadi/include/simde/x86/avx512/mulhrs.h +65 -0
  2049. casadi/include/simde/x86/avx512/mullo.h +117 -0
  2050. casadi/include/simde/x86/avx512/negate.h +88 -0
  2051. casadi/include/simde/x86/avx512/or.h +252 -0
  2052. casadi/include/simde/x86/avx512/packs.h +122 -0
  2053. casadi/include/simde/x86/avx512/packus.h +122 -0
  2054. casadi/include/simde/x86/avx512/permutex2var.h +1645 -0
  2055. casadi/include/simde/x86/avx512/permutexvar.h +1180 -0
  2056. casadi/include/simde/x86/avx512/sad.h +77 -0
  2057. casadi/include/simde/x86/avx512/set.h +477 -0
  2058. casadi/include/simde/x86/avx512/set1.h +331 -0
  2059. casadi/include/simde/x86/avx512/set4.h +140 -0
  2060. casadi/include/simde/x86/avx512/setone.h +66 -0
  2061. casadi/include/simde/x86/avx512/setr.h +144 -0
  2062. casadi/include/simde/x86/avx512/setr4.h +140 -0
  2063. casadi/include/simde/x86/avx512/setzero.h +90 -0
  2064. casadi/include/simde/x86/avx512/shuffle.h +176 -0
  2065. casadi/include/simde/x86/avx512/sll.h +247 -0
  2066. casadi/include/simde/x86/avx512/slli.h +179 -0
  2067. casadi/include/simde/x86/avx512/sllv.h +68 -0
  2068. casadi/include/simde/x86/avx512/sqrt.h +127 -0
  2069. casadi/include/simde/x86/avx512/sra.h +81 -0
  2070. casadi/include/simde/x86/avx512/srai.h +70 -0
  2071. casadi/include/simde/x86/avx512/srav.h +67 -0
  2072. casadi/include/simde/x86/avx512/srl.h +216 -0
  2073. casadi/include/simde/x86/avx512/srli.h +180 -0
  2074. casadi/include/simde/x86/avx512/srlv.h +282 -0
  2075. casadi/include/simde/x86/avx512/store.h +93 -0
  2076. casadi/include/simde/x86/avx512/storeu.h +93 -0
  2077. casadi/include/simde/x86/avx512/sub.h +351 -0
  2078. casadi/include/simde/x86/avx512/subs.h +222 -0
  2079. casadi/include/simde/x86/avx512/test.h +193 -0
  2080. casadi/include/simde/x86/avx512/types.h +380 -0
  2081. casadi/include/simde/x86/avx512/unpackhi.h +380 -0
  2082. casadi/include/simde/x86/avx512/unpacklo.h +104 -0
  2083. casadi/include/simde/x86/avx512/xor.h +263 -0
  2084. casadi/include/simde/x86/avx512/xorsign.h +72 -0
  2085. casadi/include/simde/x86/avx512.h +108 -0
  2086. casadi/include/simde/x86/clmul.h +414 -0
  2087. casadi/include/simde/x86/fma.h +724 -0
  2088. casadi/include/simde/x86/gfni.h +802 -0
  2089. casadi/include/simde/x86/mmx.h +2399 -0
  2090. casadi/include/simde/x86/sse.h +4471 -0
  2091. casadi/include/simde/x86/sse2.h +7389 -0
  2092. casadi/include/simde/x86/sse3.h +499 -0
  2093. casadi/include/simde/x86/sse4.1.h +2216 -0
  2094. casadi/include/simde/x86/sse4.2.h +347 -0
  2095. casadi/include/simde/x86/ssse3.h +1032 -0
  2096. casadi/include/simde/x86/svml.h +12139 -0
  2097. casadi/include/simde/x86/xop.h +3644 -0
  2098. casadi/include/sleqp/defs.h +58 -0
  2099. casadi/include/sleqp/export.h +42 -0
  2100. casadi/include/sleqp/pub_cmp.h +18 -0
  2101. casadi/include/sleqp/pub_dyn.h +140 -0
  2102. casadi/include/sleqp/pub_error.h +50 -0
  2103. casadi/include/sleqp/pub_func.h +257 -0
  2104. casadi/include/sleqp/pub_hess_struct.h +105 -0
  2105. casadi/include/sleqp/pub_iterate.h +88 -0
  2106. casadi/include/sleqp/pub_log.h +88 -0
  2107. casadi/include/sleqp/pub_lsq.h +158 -0
  2108. casadi/include/sleqp/pub_mem.h +52 -0
  2109. casadi/include/sleqp/pub_problem.h +213 -0
  2110. casadi/include/sleqp/pub_scale.h +150 -0
  2111. casadi/include/sleqp/pub_settings.h +162 -0
  2112. casadi/include/sleqp/pub_solver.h +155 -0
  2113. casadi/include/sleqp/pub_types.h +230 -0
  2114. casadi/include/sleqp/pub_working_set.h +135 -0
  2115. casadi/include/sleqp/sparse/pub_mat.h +153 -0
  2116. casadi/include/sleqp/sparse/pub_vec.h +336 -0
  2117. casadi/include/sleqp.h +38 -0
  2118. casadi/include/spral.h +13 -0
  2119. casadi/include/spral_lsmr.h +57 -0
  2120. casadi/include/spral_matrix_util.h +40 -0
  2121. casadi/include/spral_random.h +26 -0
  2122. casadi/include/spral_random_matrix.h +27 -0
  2123. casadi/include/spral_rutherford_boeing.h +51 -0
  2124. casadi/include/spral_scaling.h +139 -0
  2125. casadi/include/spral_ssids.h +121 -0
  2126. casadi/include/spral_ssmfe.h +268 -0
  2127. casadi/include/superscs/cones.h +185 -0
  2128. casadi/include/superscs/constants.h +144 -0
  2129. casadi/include/superscs/cs.h +109 -0
  2130. casadi/include/superscs/ctrlc.h +77 -0
  2131. casadi/include/superscs/directions.h +125 -0
  2132. casadi/include/superscs/glbopts.h +240 -0
  2133. casadi/include/superscs/linAlg.h +437 -0
  2134. casadi/include/superscs/linSys.h +205 -0
  2135. casadi/include/superscs/linsys/amatrix.h +77 -0
  2136. casadi/include/superscs/linsys/common.h +49 -0
  2137. casadi/include/superscs/normalize.h +138 -0
  2138. casadi/include/superscs/scs.h +656 -0
  2139. casadi/include/superscs/scs_blas.h +79 -0
  2140. casadi/include/superscs/scs_parser.h +187 -0
  2141. casadi/include/superscs/unit_test_util.h +210 -0
  2142. casadi/include/superscs/util.h +354 -0
  2143. casadi/include/trlib/trlib_eigen_inverse.h +118 -0
  2144. casadi/include/trlib/trlib_krylov.h +493 -0
  2145. casadi/include/trlib/trlib_leftmost.h +181 -0
  2146. casadi/include/trlib/trlib_private.h +109 -0
  2147. casadi/include/trlib/trlib_quadratic_zero.h +57 -0
  2148. casadi/include/trlib/trlib_tri_factor.h +409 -0
  2149. casadi/include/trlib/trlib_types.h +36 -0
  2150. casadi/include/trlib.h +44 -0
  2151. casadi/include/zconf.h +545 -0
  2152. casadi/include/zip.h +528 -0
  2153. casadi/include/zipconf.h +48 -0
  2154. casadi/include/zlib.h +1938 -0
  2155. casadi/ipopt.lib +0 -0
  2156. casadi/lapack.lib +0 -0
  2157. casadi/libCbc-3.dll +0 -0
  2158. casadi/libCbc.dll.a +0 -0
  2159. casadi/libCbc.la +35 -0
  2160. casadi/libCbcSolver-3.dll +0 -0
  2161. casadi/libCbcSolver.dll.a +0 -0
  2162. casadi/libCbcSolver.la +35 -0
  2163. casadi/libCgl-1.dll +0 -0
  2164. casadi/libCgl.dll.a +0 -0
  2165. casadi/libCgl.la +35 -0
  2166. casadi/libClp-1.dll +0 -0
  2167. casadi/libClp.dll.a +0 -0
  2168. casadi/libClp.la +35 -0
  2169. casadi/libClpSolver-1.dll +0 -0
  2170. casadi/libClpSolver.dll.a +0 -0
  2171. casadi/libClpSolver.la +35 -0
  2172. casadi/libCoinUtils-3.dll +0 -0
  2173. casadi/libCoinUtils.dll.a +0 -0
  2174. casadi/libCoinUtils.la +35 -0
  2175. casadi/libOsi-1.dll +0 -0
  2176. casadi/libOsi.dll.a +0 -0
  2177. casadi/libOsi.la +35 -0
  2178. casadi/libOsiCbc-3.dll +0 -0
  2179. casadi/libOsiCbc.dll.a +0 -0
  2180. casadi/libOsiCbc.la +35 -0
  2181. casadi/libOsiClp-1.dll +0 -0
  2182. casadi/libOsiClp.dll.a +0 -0
  2183. casadi/libOsiClp.la +35 -0
  2184. casadi/libOsiCommonTests-1.dll +0 -0
  2185. casadi/libOsiCommonTests.dll.a +0 -0
  2186. casadi/libOsiCommonTests.la +35 -0
  2187. casadi/libalpaqa.dll +0 -0
  2188. casadi/libalpaqa.dll.a +0 -0
  2189. casadi/libatomic-1.dll +0 -0
  2190. casadi/libblasfeo.dll +0 -0
  2191. casadi/libblasfeo.dll.a +0 -0
  2192. casadi/libbonmin-4.dll +0 -0
  2193. casadi/libbonmin.dll.a +0 -0
  2194. casadi/libbonmin.la +35 -0
  2195. casadi/libcasadi-tp-openblas.dll +0 -0
  2196. casadi/libcasadi-tp-openblas.dll.a +0 -0
  2197. casadi/libcasadi.dll +0 -0
  2198. casadi/libcasadi.dll.a +0 -0
  2199. casadi/libcasadi.lib +0 -0
  2200. casadi/libcasadi_archiver_libzip.dll +0 -0
  2201. casadi/libcasadi_archiver_libzip.dll.a +0 -0
  2202. casadi/libcasadi_conic_cbc.dll +0 -0
  2203. casadi/libcasadi_conic_cbc.dll.a +0 -0
  2204. casadi/libcasadi_conic_clp.dll +0 -0
  2205. casadi/libcasadi_conic_clp.dll.a +0 -0
  2206. casadi/libcasadi_conic_cplex.dll +0 -0
  2207. casadi/libcasadi_conic_cplex.dll.a +0 -0
  2208. casadi/libcasadi_conic_daqp.dll +0 -0
  2209. casadi/libcasadi_conic_daqp.dll.a +0 -0
  2210. casadi/libcasadi_conic_fatrop.dll +0 -0
  2211. casadi/libcasadi_conic_fatrop.dll.a +0 -0
  2212. casadi/libcasadi_conic_gurobi.dll +0 -0
  2213. casadi/libcasadi_conic_gurobi.dll.a +0 -0
  2214. casadi/libcasadi_conic_highs.dll +0 -0
  2215. casadi/libcasadi_conic_highs.dll.a +0 -0
  2216. casadi/libcasadi_conic_hpipm.dll +0 -0
  2217. casadi/libcasadi_conic_hpipm.dll.a +0 -0
  2218. casadi/libcasadi_conic_ipqp.dll +0 -0
  2219. casadi/libcasadi_conic_ipqp.dll.a +0 -0
  2220. casadi/libcasadi_conic_nlpsol.dll +0 -0
  2221. casadi/libcasadi_conic_nlpsol.dll.a +0 -0
  2222. casadi/libcasadi_conic_osqp.dll +0 -0
  2223. casadi/libcasadi_conic_osqp.dll.a +0 -0
  2224. casadi/libcasadi_conic_proxqp.dll +0 -0
  2225. casadi/libcasadi_conic_proxqp.dll.a +0 -0
  2226. casadi/libcasadi_conic_qpoases.dll +0 -0
  2227. casadi/libcasadi_conic_qpoases.dll.a +0 -0
  2228. casadi/libcasadi_conic_qrqp.dll +0 -0
  2229. casadi/libcasadi_conic_qrqp.dll.a +0 -0
  2230. casadi/libcasadi_conic_superscs.dll +0 -0
  2231. casadi/libcasadi_conic_superscs.dll.a +0 -0
  2232. casadi/libcasadi_filesystem_ghc.dll +0 -0
  2233. casadi/libcasadi_filesystem_ghc.dll.a +0 -0
  2234. casadi/libcasadi_importer_shell.dll +0 -0
  2235. casadi/libcasadi_importer_shell.dll.a +0 -0
  2236. casadi/libcasadi_integrator_collocation.dll +0 -0
  2237. casadi/libcasadi_integrator_collocation.dll.a +0 -0
  2238. casadi/libcasadi_integrator_cvodes.dll +0 -0
  2239. casadi/libcasadi_integrator_cvodes.dll.a +0 -0
  2240. casadi/libcasadi_integrator_idas.dll +0 -0
  2241. casadi/libcasadi_integrator_idas.dll.a +0 -0
  2242. casadi/libcasadi_integrator_rk.dll +0 -0
  2243. casadi/libcasadi_integrator_rk.dll.a +0 -0
  2244. casadi/libcasadi_interpolant_bspline.dll +0 -0
  2245. casadi/libcasadi_interpolant_bspline.dll.a +0 -0
  2246. casadi/libcasadi_interpolant_linear.dll +0 -0
  2247. casadi/libcasadi_interpolant_linear.dll.a +0 -0
  2248. casadi/libcasadi_linsol_csparse.dll +0 -0
  2249. casadi/libcasadi_linsol_csparse.dll.a +0 -0
  2250. casadi/libcasadi_linsol_csparsecholesky.dll +0 -0
  2251. casadi/libcasadi_linsol_csparsecholesky.dll.a +0 -0
  2252. casadi/libcasadi_linsol_lapacklu.dll +0 -0
  2253. casadi/libcasadi_linsol_lapacklu.dll.a +0 -0
  2254. casadi/libcasadi_linsol_lapackqr.dll +0 -0
  2255. casadi/libcasadi_linsol_lapackqr.dll.a +0 -0
  2256. casadi/libcasadi_linsol_ldl.dll +0 -0
  2257. casadi/libcasadi_linsol_ldl.dll.a +0 -0
  2258. casadi/libcasadi_linsol_lsqr.dll +0 -0
  2259. casadi/libcasadi_linsol_lsqr.dll.a +0 -0
  2260. casadi/libcasadi_linsol_ma27.dll +0 -0
  2261. casadi/libcasadi_linsol_ma27.dll.a +0 -0
  2262. casadi/libcasadi_linsol_mumps.dll +0 -0
  2263. casadi/libcasadi_linsol_mumps.dll.a +0 -0
  2264. casadi/libcasadi_linsol_qr.dll +0 -0
  2265. casadi/libcasadi_linsol_qr.dll.a +0 -0
  2266. casadi/libcasadi_linsol_symbolicqr.dll +0 -0
  2267. casadi/libcasadi_linsol_symbolicqr.dll.a +0 -0
  2268. casadi/libcasadi_linsol_tridiag.dll +0 -0
  2269. casadi/libcasadi_linsol_tridiag.dll.a +0 -0
  2270. casadi/libcasadi_nlpsol_alpaqa.dll +0 -0
  2271. casadi/libcasadi_nlpsol_alpaqa.dll.a +0 -0
  2272. casadi/libcasadi_nlpsol_ampl.dll +0 -0
  2273. casadi/libcasadi_nlpsol_ampl.dll.a +0 -0
  2274. casadi/libcasadi_nlpsol_blocksqp.dll +0 -0
  2275. casadi/libcasadi_nlpsol_blocksqp.dll.a +0 -0
  2276. casadi/libcasadi_nlpsol_bonmin.dll +0 -0
  2277. casadi/libcasadi_nlpsol_bonmin.dll.a +0 -0
  2278. casadi/libcasadi_nlpsol_fatrop.dll +0 -0
  2279. casadi/libcasadi_nlpsol_fatrop.dll.a +0 -0
  2280. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll +0 -0
  2281. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll.a +0 -0
  2282. casadi/libcasadi_nlpsol_ipopt.dll +0 -0
  2283. casadi/libcasadi_nlpsol_ipopt.dll.a +0 -0
  2284. casadi/libcasadi_nlpsol_knitro.dll +0 -0
  2285. casadi/libcasadi_nlpsol_knitro.dll.a +0 -0
  2286. casadi/libcasadi_nlpsol_madnlp.dll +0 -0
  2287. casadi/libcasadi_nlpsol_madnlp.dll.a +0 -0
  2288. casadi/libcasadi_nlpsol_qrsqp.dll +0 -0
  2289. casadi/libcasadi_nlpsol_qrsqp.dll.a +0 -0
  2290. casadi/libcasadi_nlpsol_scpgen.dll +0 -0
  2291. casadi/libcasadi_nlpsol_scpgen.dll.a +0 -0
  2292. casadi/libcasadi_nlpsol_sleqp.dll +0 -0
  2293. casadi/libcasadi_nlpsol_sleqp.dll.a +0 -0
  2294. casadi/libcasadi_nlpsol_snopt.dll +0 -0
  2295. casadi/libcasadi_nlpsol_snopt.dll.a +0 -0
  2296. casadi/libcasadi_nlpsol_sqpmethod.dll +0 -0
  2297. casadi/libcasadi_nlpsol_sqpmethod.dll.a +0 -0
  2298. casadi/libcasadi_nlpsol_worhp.dll +0 -0
  2299. casadi/libcasadi_nlpsol_worhp.dll.a +0 -0
  2300. casadi/libcasadi_rootfinder_fast_newton.dll +0 -0
  2301. casadi/libcasadi_rootfinder_fast_newton.dll.a +0 -0
  2302. casadi/libcasadi_rootfinder_kinsol.dll +0 -0
  2303. casadi/libcasadi_rootfinder_kinsol.dll.a +0 -0
  2304. casadi/libcasadi_rootfinder_newton.dll +0 -0
  2305. casadi/libcasadi_rootfinder_newton.dll.a +0 -0
  2306. casadi/libcasadi_rootfinder_nlpsol.dll +0 -0
  2307. casadi/libcasadi_rootfinder_nlpsol.dll.a +0 -0
  2308. casadi/libcasadi_sundials_common.dll +0 -0
  2309. casadi/libcasadi_sundials_common.dll.a +0 -0
  2310. casadi/libcasadi_xmlfile_tinyxml.dll +0 -0
  2311. casadi/libcasadi_xmlfile_tinyxml.dll.a +0 -0
  2312. casadi/libcoinmetis-2.dll +0 -0
  2313. casadi/libcoinmetis.dll.a +0 -0
  2314. casadi/libcoinmetis.la +41 -0
  2315. casadi/libcoinmumps-3.dll +0 -0
  2316. casadi/libcoinmumps.dll.a +0 -0
  2317. casadi/libcoinmumps.la +41 -0
  2318. casadi/libcplex_adaptor.dll +0 -0
  2319. casadi/libdaqp.dll +0 -0
  2320. casadi/libdaqp.dll.a +0 -0
  2321. casadi/libdaqpstat.a +0 -0
  2322. casadi/libdl.dll +0 -0
  2323. casadi/libdl.dll.a +0 -0
  2324. casadi/libfatrop.dll +0 -0
  2325. casadi/libfatrop.dll.a +0 -0
  2326. casadi/libgcc_s_seh-1.dll +0 -0
  2327. casadi/libgfortran-5.dll +0 -0
  2328. casadi/libgomp-1.dll +0 -0
  2329. casadi/libgurobi_adaptor.dll +0 -0
  2330. casadi/libhighs.dll +0 -0
  2331. casadi/libhighs.dll.a +0 -0
  2332. casadi/libhpipm.dll +0 -0
  2333. casadi/libhpipm.dll.a +0 -0
  2334. casadi/libindirect.a +0 -0
  2335. casadi/libipopt-3.dll +0 -0
  2336. casadi/libipopt.dll.a +0 -0
  2337. casadi/libipopt.la +41 -0
  2338. casadi/liblinsys.a +0 -0
  2339. casadi/libmatlab_ipc.dll +0 -0
  2340. casadi/libmatlab_ipc.dll.a +0 -0
  2341. casadi/libosqp.a +0 -0
  2342. casadi/libosqp.dll +0 -0
  2343. casadi/libosqp.dll.a +0 -0
  2344. casadi/libqdldl.a +0 -0
  2345. casadi/libqdldl.dll +0 -0
  2346. casadi/libqdldl.dll.a +0 -0
  2347. casadi/libquadmath-0.dll +0 -0
  2348. casadi/libsipopt-3.dll +0 -0
  2349. casadi/libsipopt.dll.a +0 -0
  2350. casadi/libsipopt.la +41 -0
  2351. casadi/libsleqp.dll +0 -0
  2352. casadi/libsleqp.dll.a +0 -0
  2353. casadi/libspral.a +0 -0
  2354. casadi/libssp-0.dll +0 -0
  2355. casadi/libstdc++-6.dll +0 -0
  2356. casadi/libsuperscs.a +0 -0
  2357. casadi/libtrlib.dll +0 -0
  2358. casadi/libtrlib.dll.a +0 -0
  2359. casadi/libwinpthread-1.dll +0 -0
  2360. casadi/libzip.a +0 -0
  2361. casadi/libzlib.dll +0 -0
  2362. casadi/libzlib.dll.a +0 -0
  2363. casadi/libzlibstatic.a +0 -0
  2364. casadi/matlab_ipc.lib +0 -0
  2365. casadi/osqp.lib +0 -0
  2366. casadi/pkgconfig/blas.pc +11 -0
  2367. casadi/pkgconfig/bonmin.pc +12 -0
  2368. casadi/pkgconfig/casadi.pc +12 -0
  2369. casadi/pkgconfig/cbc.pc +12 -0
  2370. casadi/pkgconfig/cgl.pc +12 -0
  2371. casadi/pkgconfig/clp.pc +12 -0
  2372. casadi/pkgconfig/coinmetis.pc +13 -0
  2373. casadi/pkgconfig/coinmumps.pc +15 -0
  2374. casadi/pkgconfig/coinutils.pc +12 -0
  2375. casadi/pkgconfig/highs.pc +12 -0
  2376. casadi/pkgconfig/ipopt.pc +15 -0
  2377. casadi/pkgconfig/lapack.pc +11 -0
  2378. casadi/pkgconfig/libzip.pc +14 -0
  2379. casadi/pkgconfig/openblas.pc +11 -0
  2380. casadi/pkgconfig/osi-cbc.pc +12 -0
  2381. casadi/pkgconfig/osi-clp.pc +12 -0
  2382. casadi/pkgconfig/osi-unittests.pc +12 -0
  2383. casadi/pkgconfig/osi.pc +12 -0
  2384. casadi/pkgconfig/proxsuite.pc +22 -0
  2385. casadi/pkgconfig/sleqp.pc +10 -0
  2386. casadi/sleqp.lib +0 -0
  2387. casadi/spral_ssids.exe +0 -0
  2388. casadi/std-e414687e404555e5.dll +0 -0
  2389. casadi/tools/__init__.py +54 -0
  2390. casadi/tools/bounds.py +107 -0
  2391. casadi/tools/graph/__init__.py +35 -0
  2392. casadi/tools/graph/graph.py +747 -0
  2393. casadi/tools/in_out.py +89 -0
  2394. casadi/tools/structure3.py +1441 -0
  2395. casadi-3.7.2.dist-info/METADATA +45 -0
  2396. casadi-3.7.2.dist-info/RECORD +2398 -0
  2397. casadi-3.7.2.dist-info/WHEEL +4 -0
  2398. dummy.txt +1 -0
@@ -0,0 +1,3644 @@
1
+ /* SPDX-License-Identifier: MIT
2
+ *
3
+ * Permission is hereby granted, free of charge, to any person
4
+ * obtaining a copy of this software and associated documentation
5
+ * files (the "Software"), to deal in the Software without
6
+ * restriction, including without limitation the rights to use, copy,
7
+ * modify, merge, publish, distribute, sublicense, and/or sell copies
8
+ * of the Software, and to permit persons to whom the Software is
9
+ * furnished to do so, subject to the following conditions:
10
+ *
11
+ * The above copyright notice and this permission notice shall be
12
+ * included in all copies or substantial portions of the Software.
13
+ *
14
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
18
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
19
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ * SOFTWARE.
22
+ *
23
+ * Copyright:
24
+ * 2020 Evan Nemerson <evan@nemerson.com>
25
+ */
26
+
27
+ #if !defined(SIMDE_X86_XOP_H)
28
+ #define SIMDE_X86_XOP_H
29
+
30
+ #include "avx2.h"
31
+
32
+ #if !defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_ENABLE_NATIVE_ALIASES)
33
+ # define SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES
34
+ #endif
35
+
36
+ HEDLEY_DIAGNOSTIC_PUSH
37
+ SIMDE_DISABLE_UNWANTED_DIAGNOSTICS
38
+ SIMDE_BEGIN_DECLS_
39
+
40
+ SIMDE_FUNCTION_ATTRIBUTES
41
+ simde__m128i
42
+ simde_mm_cmov_si128 (simde__m128i a, simde__m128i b, simde__m128i c) {
43
+ #if defined(SIMDE_X86_XOP_NATIVE)
44
+ return _mm_cmov_si128(a, b, c);
45
+ #elif defined(SIMDE_X86_AVX512VL_NATIVE)
46
+ return _mm_ternarylogic_epi32(a, b, c, 0xe4);
47
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
48
+ return _mm_or_si128(_mm_and_si128(c, a), _mm_andnot_si128(c, b));
49
+ #else
50
+ simde__m128i_private
51
+ r_,
52
+ a_ = simde__m128i_to_private(a),
53
+ b_ = simde__m128i_to_private(b),
54
+ c_ = simde__m128i_to_private(c);
55
+
56
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
57
+ r_.neon_i8 = vbslq_s8(c_.neon_u8, a_.neon_i8, b_.neon_i8);
58
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
59
+ r_.wasm_v128 = wasm_v128_bitselect(a_.wasm_v128, b_.wasm_v128, c_.wasm_v128);
60
+ #elif defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
61
+ r_.altivec_i32 = vec_sel(b_.altivec_i32, a_.altivec_i32, c_.altivec_u32);
62
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
63
+ r_.i32f = (c_.i32f & a_.i32f) | (~c_.i32f & b_.i32f);
64
+ #else
65
+ SIMDE_VECTORIZE
66
+ for (size_t i = 0 ; i < (sizeof(r_.i32f) / sizeof(r_.i32f[0])) ; i++) {
67
+ r_.i32f[i] = (c_.i32f[i] & a_.i32f[i]) | (~c_.i32f[i] & b_.i32f[i]);
68
+ }
69
+ #endif
70
+
71
+ return simde__m128i_from_private(r_);
72
+ #endif
73
+ }
74
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
75
+ #define _mm_cmov_si128(a, b, c) simde_mm_cmov_si128((a), (b), (c))
76
+ #endif
77
+
78
+ SIMDE_FUNCTION_ATTRIBUTES
79
+ simde__m256i
80
+ simde_mm256_cmov_si256 (simde__m256i a, simde__m256i b, simde__m256i c) {
81
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_AVX_NATIVE) && !defined(SIMDE_BUG_GCC_98521)
82
+ return _mm256_cmov_si256(a, b, c);
83
+ #elif defined(SIMDE_X86_AVX512VL_NATIVE)
84
+ return _mm256_ternarylogic_epi32(a, b, c, 0xe4);
85
+ #elif defined(SIMDE_X86_AVX2_NATIVE)
86
+ return _mm256_or_si256(_mm256_and_si256(c, a), _mm256_andnot_si256(c, b));
87
+ #else
88
+ simde__m256i_private
89
+ r_,
90
+ a_ = simde__m256i_to_private(a),
91
+ b_ = simde__m256i_to_private(b),
92
+ c_ = simde__m256i_to_private(c);
93
+
94
+ #if SIMDE_NATURAL_VECTOR_SIZE_LE(128)
95
+ for (size_t i = 0 ; i < (sizeof(r_.m128i) / sizeof(r_.m128i[0])) ; i++) {
96
+ r_.m128i[i] = simde_mm_cmov_si128(a_.m128i[i], b_.m128i[i], c_.m128i[i]);
97
+ }
98
+ #else
99
+ SIMDE_VECTORIZE
100
+ for (size_t i = 0 ; i < (sizeof(r_.i32f) / sizeof(r_.i32f[0])) ; i++) {
101
+ r_.i32f[i] = (c_.i32f[i] & a_.i32f[i]) | (~c_.i32f[i] & b_.i32f[i]);
102
+ }
103
+ #endif
104
+
105
+ return simde__m256i_from_private(r_);
106
+ #endif
107
+ }
108
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
109
+ #define _mm256_cmov_si256(a, b, c) simde_mm256_cmov_si256((a), (b), (c))
110
+ #endif
111
+
112
+ SIMDE_FUNCTION_ATTRIBUTES
113
+ simde__m128i
114
+ simde_mm_comeq_epi8 (simde__m128i a, simde__m128i b) {
115
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
116
+ return _mm_com_epi8(a, b, _MM_PCOMCTRL_EQ);
117
+ #elif defined(SIMDE_X86_XOP_NATIVE)
118
+ return _mm_comeq_epi8(a, b);
119
+ #else
120
+ simde__m128i_private
121
+ r_,
122
+ a_ = simde__m128i_to_private(a),
123
+ b_ = simde__m128i_to_private(b);
124
+
125
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
126
+ r_.neon_u8 = vceqq_s8(a_.neon_i8, b_.neon_i8);
127
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
128
+ r_.i8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i8), a_.i8 == b_.i8);
129
+ #else
130
+ SIMDE_VECTORIZE
131
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
132
+ r_.i8[i] = (a_.i8[i] == b_.i8[i]) ? ~INT8_C(0) : INT8_C(0);
133
+ }
134
+ #endif
135
+
136
+ return simde__m128i_from_private(r_);
137
+ #endif
138
+ }
139
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
140
+ #define _mm_comeq_epi8(a, b) simde_mm_comeq_epi8((a), (b))
141
+ #endif
142
+
143
+ SIMDE_FUNCTION_ATTRIBUTES
144
+ simde__m128i
145
+ simde_mm_comeq_epi16 (simde__m128i a, simde__m128i b) {
146
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
147
+ return _mm_com_epi16(a, b, _MM_PCOMCTRL_EQ);
148
+ #elif defined(SIMDE_X86_XOP_NATIVE)
149
+ return _mm_comeq_epi16(a, b);
150
+ #else
151
+ simde__m128i_private
152
+ r_,
153
+ a_ = simde__m128i_to_private(a),
154
+ b_ = simde__m128i_to_private(b);
155
+
156
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
157
+ r_.neon_u16 = vceqq_s16(a_.neon_i16, b_.neon_i16);
158
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
159
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), a_.i16 == b_.i16);
160
+ #else
161
+ SIMDE_VECTORIZE
162
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
163
+ r_.i16[i] = (a_.i16[i] == b_.i16[i]) ? ~INT16_C(0) : INT16_C(0);
164
+ }
165
+ #endif
166
+
167
+ return simde__m128i_from_private(r_);
168
+ #endif
169
+ }
170
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
171
+ #define _mm_comeq_epi16(a, b) simde_mm_comeq_epi16((a), (b))
172
+ #endif
173
+
174
+ SIMDE_FUNCTION_ATTRIBUTES
175
+ simde__m128i
176
+ simde_mm_comeq_epi32 (simde__m128i a, simde__m128i b) {
177
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
178
+ return _mm_com_epi32(a, b, _MM_PCOMCTRL_EQ);
179
+ #elif defined(SIMDE_X86_XOP_NATIVE)
180
+ return _mm_comeq_epi32(a, b);
181
+ #else
182
+ simde__m128i_private
183
+ r_,
184
+ a_ = simde__m128i_to_private(a),
185
+ b_ = simde__m128i_to_private(b);
186
+
187
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
188
+ r_.neon_u32 = vceqq_s32(a_.neon_i32, b_.neon_i32);
189
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
190
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), a_.i32 == b_.i32);
191
+ #else
192
+ SIMDE_VECTORIZE
193
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
194
+ r_.i32[i] = (a_.i32[i] == b_.i32[i]) ? ~INT32_C(0) : INT32_C(0);
195
+ }
196
+ #endif
197
+
198
+ return simde__m128i_from_private(r_);
199
+ #endif
200
+ }
201
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
202
+ #define _mm_comeq_epi32(a, b) simde_mm_comeq_epi32((a), (b))
203
+ #endif
204
+
205
+ SIMDE_FUNCTION_ATTRIBUTES
206
+ simde__m128i
207
+ simde_mm_comeq_epi64 (simde__m128i a, simde__m128i b) {
208
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
209
+ return _mm_com_epi64(a, b, _MM_PCOMCTRL_EQ);
210
+ #elif defined(SIMDE_X86_XOP_NATIVE)
211
+ return _mm_comeq_epi64(a, b);
212
+ #else
213
+ simde__m128i_private
214
+ r_,
215
+ a_ = simde__m128i_to_private(a),
216
+ b_ = simde__m128i_to_private(b);
217
+
218
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
219
+ r_.neon_u64 = vceqq_s64(a_.neon_i64, b_.neon_i64);
220
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
221
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), a_.i64 == b_.i64);
222
+ #else
223
+ SIMDE_VECTORIZE
224
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
225
+ r_.i64[i] = (a_.i64[i] == b_.i64[i]) ? ~INT64_C(0) : INT64_C(0);
226
+ }
227
+ #endif
228
+
229
+ return simde__m128i_from_private(r_);
230
+ #endif
231
+ }
232
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
233
+ #define _mm_comeq_epi64(a, b) simde_mm_comeq_epi64((a), (b))
234
+ #endif
235
+
236
+ SIMDE_FUNCTION_ATTRIBUTES
237
+ simde__m128i
238
+ simde_mm_comeq_epu8 (simde__m128i a, simde__m128i b) {
239
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
240
+ return _mm_com_epu8(a, b, _MM_PCOMCTRL_EQ);
241
+ #elif defined(SIMDE_X86_XOP_NATIVE)
242
+ return _mm_comeq_epu8(a, b);
243
+ #else
244
+ simde__m128i_private
245
+ r_,
246
+ a_ = simde__m128i_to_private(a),
247
+ b_ = simde__m128i_to_private(b);
248
+
249
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
250
+ r_.neon_u8 = vceqq_u8(a_.neon_u8, b_.neon_u8);
251
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
252
+ r_.u8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u8), a_.u8 == b_.u8);
253
+ #else
254
+ SIMDE_VECTORIZE
255
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
256
+ r_.u8[i] = (a_.u8[i] == b_.u8[i]) ? ~INT8_C(0) : INT8_C(0);
257
+ }
258
+ #endif
259
+
260
+ return simde__m128i_from_private(r_);
261
+ #endif
262
+ }
263
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
264
+ #define _mm_comeq_epu8(a, b) simde_mm_comeq_epu8((a), (b))
265
+ #endif
266
+
267
+ SIMDE_FUNCTION_ATTRIBUTES
268
+ simde__m128i
269
+ simde_mm_comeq_epu16 (simde__m128i a, simde__m128i b) {
270
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
271
+ return _mm_com_epu16(a, b, _MM_PCOMCTRL_EQ);
272
+ #elif defined(SIMDE_X86_XOP_NATIVE)
273
+ return _mm_comeq_epu16(a, b);
274
+ #else
275
+ simde__m128i_private
276
+ r_,
277
+ a_ = simde__m128i_to_private(a),
278
+ b_ = simde__m128i_to_private(b);
279
+
280
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
281
+ r_.neon_u16 = vceqq_u16(a_.neon_u16, b_.neon_u16);
282
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
283
+ r_.u16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u16), a_.u16 == b_.u16);
284
+ #else
285
+ SIMDE_VECTORIZE
286
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
287
+ r_.u16[i] = (a_.u16[i] == b_.u16[i]) ? ~INT16_C(0) : INT16_C(0);
288
+ }
289
+ #endif
290
+
291
+ return simde__m128i_from_private(r_);
292
+ #endif
293
+ }
294
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
295
+ #define _mm_comeq_epu16(a, b) simde_mm_comeq_epu16((a), (b))
296
+ #endif
297
+
298
+ SIMDE_FUNCTION_ATTRIBUTES
299
+ simde__m128i
300
+ simde_mm_comeq_epu32 (simde__m128i a, simde__m128i b) {
301
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
302
+ return _mm_com_epu32(a, b, _MM_PCOMCTRL_EQ);
303
+ #elif defined(SIMDE_X86_XOP_NATIVE)
304
+ return _mm_comeq_epu32(a, b);
305
+ #else
306
+ simde__m128i_private
307
+ r_,
308
+ a_ = simde__m128i_to_private(a),
309
+ b_ = simde__m128i_to_private(b);
310
+
311
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
312
+ r_.neon_u32 = vceqq_u32(a_.neon_u32, b_.neon_u32);
313
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
314
+ r_.u32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u32), a_.u32 == b_.u32);
315
+ #else
316
+ SIMDE_VECTORIZE
317
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
318
+ r_.u32[i] = (a_.u32[i] == b_.u32[i]) ? ~INT32_C(0) : INT32_C(0);
319
+ }
320
+ #endif
321
+
322
+ return simde__m128i_from_private(r_);
323
+ #endif
324
+ }
325
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
326
+ #define _mm_comeq_epu32(a, b) simde_mm_comeq_epu32((a), (b))
327
+ #endif
328
+
329
+ SIMDE_FUNCTION_ATTRIBUTES
330
+ simde__m128i
331
+ simde_mm_comeq_epu64 (simde__m128i a, simde__m128i b) {
332
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_EQ)
333
+ return _mm_com_epu64(a, b, _MM_PCOMCTRL_EQ);
334
+ #elif defined(SIMDE_X86_XOP_NATIVE)
335
+ return _mm_comeq_epu64(a, b);
336
+ #else
337
+ simde__m128i_private
338
+ r_,
339
+ a_ = simde__m128i_to_private(a),
340
+ b_ = simde__m128i_to_private(b);
341
+
342
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
343
+ r_.neon_u64 = vceqq_u64(a_.neon_u64, b_.neon_u64);
344
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
345
+ r_.u64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u64), a_.u64 == b_.u64);
346
+ #else
347
+ SIMDE_VECTORIZE
348
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
349
+ r_.u64[i] = (a_.u64[i] == b_.u64[i]) ? ~INT64_C(0) : INT64_C(0);
350
+ }
351
+ #endif
352
+
353
+ return simde__m128i_from_private(r_);
354
+ #endif
355
+ }
356
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
357
+ #define _mm_comeq_epu64(a, b) simde_mm_comeq_epu64((a), (b))
358
+ #endif
359
+
360
+ SIMDE_FUNCTION_ATTRIBUTES
361
+ simde__m128i
362
+ simde_mm_comge_epi8 (simde__m128i a, simde__m128i b) {
363
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
364
+ return _mm_com_epi8(a, b, _MM_PCOMCTRL_GE);
365
+ #elif defined(SIMDE_X86_XOP_NATIVE)
366
+ return _mm_comge_epi8(a, b);
367
+ #else
368
+ simde__m128i_private
369
+ r_,
370
+ a_ = simde__m128i_to_private(a),
371
+ b_ = simde__m128i_to_private(b);
372
+
373
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
374
+ r_.neon_u8 = vcgeq_s8(a_.neon_i8, b_.neon_i8);
375
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
376
+ r_.i8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i8), a_.i8 >= b_.i8);
377
+ #else
378
+ SIMDE_VECTORIZE
379
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
380
+ r_.i8[i] = (a_.i8[i] >= b_.i8[i]) ? ~INT8_C(0) : INT8_C(0);
381
+ }
382
+ #endif
383
+
384
+ return simde__m128i_from_private(r_);
385
+ #endif
386
+ }
387
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
388
+ #define _mm_comge_epi8(a, b) simde_mm_comge_epi8((a), (b))
389
+ #endif
390
+
391
+ SIMDE_FUNCTION_ATTRIBUTES
392
+ simde__m128i
393
+ simde_mm_comge_epi16 (simde__m128i a, simde__m128i b) {
394
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
395
+ return _mm_com_epi16(a, b, _MM_PCOMCTRL_GE);
396
+ #elif defined(SIMDE_X86_XOP_NATIVE)
397
+ return _mm_comge_epi16(a, b);
398
+ #else
399
+ simde__m128i_private
400
+ r_,
401
+ a_ = simde__m128i_to_private(a),
402
+ b_ = simde__m128i_to_private(b);
403
+
404
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
405
+ r_.neon_u16 = vcgeq_s16(a_.neon_i16, b_.neon_i16);
406
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
407
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), a_.i16 >= b_.i16);
408
+ #else
409
+ SIMDE_VECTORIZE
410
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
411
+ r_.i16[i] = (a_.i16[i] >= b_.i16[i]) ? ~INT16_C(0) : INT16_C(0);
412
+ }
413
+ #endif
414
+
415
+ return simde__m128i_from_private(r_);
416
+ #endif
417
+ }
418
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
419
+ #define _mm_comge_epi16(a, b) simde_mm_comge_epi16((a), (b))
420
+ #endif
421
+
422
+ SIMDE_FUNCTION_ATTRIBUTES
423
+ simde__m128i
424
+ simde_mm_comge_epi32 (simde__m128i a, simde__m128i b) {
425
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
426
+ return _mm_com_epi32(a, b, _MM_PCOMCTRL_GE);
427
+ #elif defined(SIMDE_X86_XOP_NATIVE)
428
+ return _mm_comge_epi32(a, b);
429
+ #else
430
+ simde__m128i_private
431
+ r_,
432
+ a_ = simde__m128i_to_private(a),
433
+ b_ = simde__m128i_to_private(b);
434
+
435
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
436
+ r_.neon_u32 = vcgeq_s32(a_.neon_i32, b_.neon_i32);
437
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
438
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), a_.i32 >= b_.i32);
439
+ #else
440
+ SIMDE_VECTORIZE
441
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
442
+ r_.i32[i] = (a_.i32[i] >= b_.i32[i]) ? ~INT32_C(0) : INT32_C(0);
443
+ }
444
+ #endif
445
+
446
+ return simde__m128i_from_private(r_);
447
+ #endif
448
+ }
449
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
450
+ #define _mm_comge_epi32(a, b) simde_mm_comge_epi32((a), (b))
451
+ #endif
452
+
453
+ SIMDE_FUNCTION_ATTRIBUTES
454
+ simde__m128i
455
+ simde_mm_comge_epi64 (simde__m128i a, simde__m128i b) {
456
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
457
+ return _mm_com_epi64(a, b, _MM_PCOMCTRL_GE);
458
+ #elif defined(SIMDE_X86_XOP_NATIVE)
459
+ return _mm_comge_epi64(a, b);
460
+ #else
461
+ simde__m128i_private
462
+ r_,
463
+ a_ = simde__m128i_to_private(a),
464
+ b_ = simde__m128i_to_private(b);
465
+
466
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
467
+ r_.neon_u64 = vcgeq_s64(a_.neon_i64, b_.neon_i64);
468
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
469
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), a_.i64 >= b_.i64);
470
+ #else
471
+ SIMDE_VECTORIZE
472
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
473
+ r_.i64[i] = (a_.i64[i] >= b_.i64[i]) ? ~INT64_C(0) : INT64_C(0);
474
+ }
475
+ #endif
476
+
477
+ return simde__m128i_from_private(r_);
478
+ #endif
479
+ }
480
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
481
+ #define _mm_comge_epi64(a, b) simde_mm_comge_epi64((a), (b))
482
+ #endif
483
+
484
+ SIMDE_FUNCTION_ATTRIBUTES
485
+ simde__m128i
486
+ simde_mm_comge_epu8 (simde__m128i a, simde__m128i b) {
487
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
488
+ return _mm_com_epu8(a, b, _MM_PCOMCTRL_GE);
489
+ #elif defined(SIMDE_X86_XOP_NATIVE)
490
+ return _mm_comge_epu8(a, b);
491
+ #else
492
+ simde__m128i_private
493
+ r_,
494
+ a_ = simde__m128i_to_private(a),
495
+ b_ = simde__m128i_to_private(b);
496
+
497
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
498
+ r_.neon_u8 = vcgeq_u8(a_.neon_u8, b_.neon_u8);
499
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
500
+ r_.u8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u8), a_.u8 >= b_.u8);
501
+ #else
502
+ SIMDE_VECTORIZE
503
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
504
+ r_.u8[i] = (a_.u8[i] >= b_.u8[i]) ? ~INT8_C(0) : INT8_C(0);
505
+ }
506
+ #endif
507
+
508
+ return simde__m128i_from_private(r_);
509
+ #endif
510
+ }
511
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
512
+ #define _mm_comge_epu8(a, b) simde_mm_comge_epu8((a), (b))
513
+ #endif
514
+
515
+ SIMDE_FUNCTION_ATTRIBUTES
516
+ simde__m128i
517
+ simde_mm_comge_epu16 (simde__m128i a, simde__m128i b) {
518
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
519
+ return _mm_com_epu16(a, b, _MM_PCOMCTRL_GE);
520
+ #elif defined(SIMDE_X86_XOP_NATIVE)
521
+ return _mm_comge_epu16(a, b);
522
+ #else
523
+ simde__m128i_private
524
+ r_,
525
+ a_ = simde__m128i_to_private(a),
526
+ b_ = simde__m128i_to_private(b);
527
+
528
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
529
+ r_.neon_u16 = vcgeq_u16(a_.neon_u16, b_.neon_u16);
530
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
531
+ r_.u16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u16), a_.u16 >= b_.u16);
532
+ #else
533
+ SIMDE_VECTORIZE
534
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
535
+ r_.u16[i] = (a_.u16[i] >= b_.u16[i]) ? ~INT16_C(0) : INT16_C(0);
536
+ }
537
+ #endif
538
+
539
+ return simde__m128i_from_private(r_);
540
+ #endif
541
+ }
542
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
543
+ #define _mm_comge_epu16(a, b) simde_mm_comge_epu16((a), (b))
544
+ #endif
545
+
546
+ SIMDE_FUNCTION_ATTRIBUTES
547
+ simde__m128i
548
+ simde_mm_comge_epu32 (simde__m128i a, simde__m128i b) {
549
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
550
+ return _mm_com_epu32(a, b, _MM_PCOMCTRL_GE);
551
+ #elif defined(SIMDE_X86_XOP_NATIVE)
552
+ return _mm_comge_epu32(a, b);
553
+ #else
554
+ simde__m128i_private
555
+ r_,
556
+ a_ = simde__m128i_to_private(a),
557
+ b_ = simde__m128i_to_private(b);
558
+
559
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
560
+ r_.neon_u32 = vcgeq_u32(a_.neon_u32, b_.neon_u32);
561
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
562
+ r_.u32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u32), a_.u32 >= b_.u32);
563
+ #else
564
+ SIMDE_VECTORIZE
565
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
566
+ r_.u32[i] = (a_.u32[i] >= b_.u32[i]) ? ~INT32_C(0) : INT32_C(0);
567
+ }
568
+ #endif
569
+
570
+ return simde__m128i_from_private(r_);
571
+ #endif
572
+ }
573
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
574
+ #define _mm_comge_epu32(a, b) simde_mm_comge_epu32((a), (b))
575
+ #endif
576
+
577
+ SIMDE_FUNCTION_ATTRIBUTES
578
+ simde__m128i
579
+ simde_mm_comge_epu64 (simde__m128i a, simde__m128i b) {
580
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GE)
581
+ return _mm_com_epu64(a, b, _MM_PCOMCTRL_GE);
582
+ #elif defined(SIMDE_X86_XOP_NATIVE)
583
+ return _mm_comge_epu64(a, b);
584
+ #else
585
+ simde__m128i_private
586
+ r_,
587
+ a_ = simde__m128i_to_private(a),
588
+ b_ = simde__m128i_to_private(b);
589
+
590
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
591
+ r_.neon_u64 = vcgeq_u64(a_.neon_u64, b_.neon_u64);
592
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
593
+ r_.u64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u64), a_.u64 >= b_.u64);
594
+ #else
595
+ SIMDE_VECTORIZE
596
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
597
+ r_.u64[i] = (a_.u64[i] >= b_.u64[i]) ? ~INT64_C(0) : INT64_C(0);
598
+ }
599
+ #endif
600
+
601
+ return simde__m128i_from_private(r_);
602
+ #endif
603
+ }
604
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
605
+ #define _mm_comge_epu64(a, b) simde_mm_comge_epu64((a), (b))
606
+ #endif
607
+
608
+ SIMDE_FUNCTION_ATTRIBUTES
609
+ simde__m128i
610
+ simde_mm_comgt_epi8 (simde__m128i a, simde__m128i b) {
611
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
612
+ return _mm_com_epi8(a, b, _MM_PCOMCTRL_GT);
613
+ #elif defined(SIMDE_X86_XOP_NATIVE)
614
+ return _mm_comgt_epi8(a, b);
615
+ #else
616
+ simde__m128i_private
617
+ r_,
618
+ a_ = simde__m128i_to_private(a),
619
+ b_ = simde__m128i_to_private(b);
620
+
621
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
622
+ r_.neon_u8 = vcgtq_s8(a_.neon_i8, b_.neon_i8);
623
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
624
+ r_.i8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i8), a_.i8 > b_.i8);
625
+ #else
626
+ SIMDE_VECTORIZE
627
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
628
+ r_.i8[i] = (a_.i8[i] > b_.i8[i]) ? ~INT8_C(0) : INT8_C(0);
629
+ }
630
+ #endif
631
+
632
+ return simde__m128i_from_private(r_);
633
+ #endif
634
+ }
635
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
636
+ #define _mm_comgt_epi8(a, b) simde_mm_comgt_epi8((a), (b))
637
+ #endif
638
+
639
+ SIMDE_FUNCTION_ATTRIBUTES
640
+ simde__m128i
641
+ simde_mm_comgt_epi16 (simde__m128i a, simde__m128i b) {
642
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
643
+ return _mm_com_epi16(a, b, _MM_PCOMCTRL_GT);
644
+ #elif defined(SIMDE_X86_XOP_NATIVE)
645
+ return _mm_comgt_epi16(a, b);
646
+ #else
647
+ simde__m128i_private
648
+ r_,
649
+ a_ = simde__m128i_to_private(a),
650
+ b_ = simde__m128i_to_private(b);
651
+
652
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
653
+ r_.neon_u16 = vcgtq_s16(a_.neon_i16, b_.neon_i16);
654
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
655
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), a_.i16 > b_.i16);
656
+ #else
657
+ SIMDE_VECTORIZE
658
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
659
+ r_.i16[i] = (a_.i16[i] > b_.i16[i]) ? ~INT16_C(0) : INT16_C(0);
660
+ }
661
+ #endif
662
+
663
+ return simde__m128i_from_private(r_);
664
+ #endif
665
+ }
666
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
667
+ #define _mm_comgt_epi16(a, b) simde_mm_comgt_epi16((a), (b))
668
+ #endif
669
+
670
+ SIMDE_FUNCTION_ATTRIBUTES
671
+ simde__m128i
672
+ simde_mm_comgt_epi32 (simde__m128i a, simde__m128i b) {
673
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
674
+ return _mm_com_epi32(a, b, _MM_PCOMCTRL_GT);
675
+ #elif defined(SIMDE_X86_XOP_NATIVE)
676
+ return _mm_comgt_epi32(a, b);
677
+ #else
678
+ simde__m128i_private
679
+ r_,
680
+ a_ = simde__m128i_to_private(a),
681
+ b_ = simde__m128i_to_private(b);
682
+
683
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
684
+ r_.neon_u32 = vcgtq_s32(a_.neon_i32, b_.neon_i32);
685
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
686
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), a_.i32 > b_.i32);
687
+ #else
688
+ SIMDE_VECTORIZE
689
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
690
+ r_.i32[i] = (a_.i32[i] > b_.i32[i]) ? ~INT32_C(0) : INT32_C(0);
691
+ }
692
+ #endif
693
+
694
+ return simde__m128i_from_private(r_);
695
+ #endif
696
+ }
697
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
698
+ #define _mm_comgt_epi32(a, b) simde_mm_comgt_epi32((a), (b))
699
+ #endif
700
+
701
+ SIMDE_FUNCTION_ATTRIBUTES
702
+ simde__m128i
703
+ simde_mm_comgt_epi64 (simde__m128i a, simde__m128i b) {
704
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
705
+ return _mm_com_epi64(a, b, _MM_PCOMCTRL_GT);
706
+ #elif defined(SIMDE_X86_XOP_NATIVE)
707
+ return _mm_comgt_epi64(a, b);
708
+ #else
709
+ simde__m128i_private
710
+ r_,
711
+ a_ = simde__m128i_to_private(a),
712
+ b_ = simde__m128i_to_private(b);
713
+
714
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
715
+ r_.neon_u64 = vcgtq_s64(a_.neon_i64, b_.neon_i64);
716
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
717
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), a_.i64 > b_.i64);
718
+ #else
719
+ SIMDE_VECTORIZE
720
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
721
+ r_.i64[i] = (a_.i64[i] > b_.i64[i]) ? ~INT64_C(0) : INT64_C(0);
722
+ }
723
+ #endif
724
+
725
+ return simde__m128i_from_private(r_);
726
+ #endif
727
+ }
728
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
729
+ #define _mm_comgt_epi64(a, b) simde_mm_comgt_epi64((a), (b))
730
+ #endif
731
+
732
+ SIMDE_FUNCTION_ATTRIBUTES
733
+ simde__m128i
734
+ simde_mm_comgt_epu8 (simde__m128i a, simde__m128i b) {
735
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
736
+ return _mm_com_epu8(a, b, _MM_PCOMCTRL_GT);
737
+ #elif defined(SIMDE_X86_XOP_NATIVE)
738
+ return _mm_comgt_epu8(a, b);
739
+ #else
740
+ simde__m128i_private
741
+ r_,
742
+ a_ = simde__m128i_to_private(a),
743
+ b_ = simde__m128i_to_private(b);
744
+
745
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
746
+ r_.neon_u8 = vcgtq_u8(a_.neon_u8, b_.neon_u8);
747
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
748
+ r_.u8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u8), a_.u8 > b_.u8);
749
+ #else
750
+ SIMDE_VECTORIZE
751
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
752
+ r_.u8[i] = (a_.u8[i] > b_.u8[i]) ? ~INT8_C(0) : INT8_C(0);
753
+ }
754
+ #endif
755
+
756
+ return simde__m128i_from_private(r_);
757
+ #endif
758
+ }
759
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
760
+ #define _mm_comgt_epu8(a, b) simde_mm_comgt_epu8((a), (b))
761
+ #endif
762
+
763
+ SIMDE_FUNCTION_ATTRIBUTES
764
+ simde__m128i
765
+ simde_mm_comgt_epu16 (simde__m128i a, simde__m128i b) {
766
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
767
+ return _mm_com_epu16(a, b, _MM_PCOMCTRL_GT);
768
+ #elif defined(SIMDE_X86_XOP_NATIVE)
769
+ return _mm_comgt_epu16(a, b);
770
+ #else
771
+ simde__m128i_private
772
+ r_,
773
+ a_ = simde__m128i_to_private(a),
774
+ b_ = simde__m128i_to_private(b);
775
+
776
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
777
+ r_.neon_u16 = vcgtq_u16(a_.neon_u16, b_.neon_u16);
778
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
779
+ r_.u16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u16), a_.u16 > b_.u16);
780
+ #else
781
+ SIMDE_VECTORIZE
782
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
783
+ r_.u16[i] = (a_.u16[i] > b_.u16[i]) ? ~INT16_C(0) : INT16_C(0);
784
+ }
785
+ #endif
786
+
787
+ return simde__m128i_from_private(r_);
788
+ #endif
789
+ }
790
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
791
+ #define _mm_comgt_epu16(a, b) simde_mm_comgt_epu16((a), (b))
792
+ #endif
793
+
794
+ SIMDE_FUNCTION_ATTRIBUTES
795
+ simde__m128i
796
+ simde_mm_comgt_epu32 (simde__m128i a, simde__m128i b) {
797
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
798
+ return _mm_com_epu32(a, b, _MM_PCOMCTRL_GT);
799
+ #elif defined(SIMDE_X86_XOP_NATIVE)
800
+ return _mm_comgt_epu32(a, b);
801
+ #else
802
+ simde__m128i_private
803
+ r_,
804
+ a_ = simde__m128i_to_private(a),
805
+ b_ = simde__m128i_to_private(b);
806
+
807
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
808
+ r_.neon_u32 = vcgtq_u32(a_.neon_u32, b_.neon_u32);
809
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
810
+ r_.u32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u32), a_.u32 > b_.u32);
811
+ #else
812
+ SIMDE_VECTORIZE
813
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
814
+ r_.u32[i] = (a_.u32[i] > b_.u32[i]) ? ~INT32_C(0) : INT32_C(0);
815
+ }
816
+ #endif
817
+
818
+ return simde__m128i_from_private(r_);
819
+ #endif
820
+ }
821
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
822
+ #define _mm_comgt_epu32(a, b) simde_mm_comgt_epu32((a), (b))
823
+ #endif
824
+
825
+ SIMDE_FUNCTION_ATTRIBUTES
826
+ simde__m128i
827
+ simde_mm_comgt_epu64 (simde__m128i a, simde__m128i b) {
828
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_GT)
829
+ return _mm_com_epu64(a, b, _MM_PCOMCTRL_GT);
830
+ #elif defined(SIMDE_X86_XOP_NATIVE)
831
+ return _mm_comgt_epu64(a, b);
832
+ #else
833
+ simde__m128i_private
834
+ r_,
835
+ a_ = simde__m128i_to_private(a),
836
+ b_ = simde__m128i_to_private(b);
837
+
838
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
839
+ r_.neon_u64 = vcgtq_u64(a_.neon_u64, b_.neon_u64);
840
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
841
+ r_.u64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u64), a_.u64 > b_.u64);
842
+ #else
843
+ SIMDE_VECTORIZE
844
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
845
+ r_.u64[i] = (a_.u64[i] > b_.u64[i]) ? ~INT64_C(0) : INT64_C(0);
846
+ }
847
+ #endif
848
+
849
+ return simde__m128i_from_private(r_);
850
+ #endif
851
+ }
852
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
853
+ #define _mm_comgt_epu64(a, b) simde_mm_comgt_epu64((a), (b))
854
+ #endif
855
+
856
+ SIMDE_FUNCTION_ATTRIBUTES
857
+ simde__m128i
858
+ simde_mm_comle_epi8 (simde__m128i a, simde__m128i b) {
859
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
860
+ return _mm_com_epi8(a, b, _MM_PCOMCTRL_LE);
861
+ #elif defined(SIMDE_X86_XOP_NATIVE)
862
+ return _mm_comle_epi8(a, b);
863
+ #else
864
+ simde__m128i_private
865
+ r_,
866
+ a_ = simde__m128i_to_private(a),
867
+ b_ = simde__m128i_to_private(b);
868
+
869
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
870
+ r_.neon_u8 = vcleq_s8(a_.neon_i8, b_.neon_i8);
871
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
872
+ r_.i8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i8), a_.i8 <= b_.i8);
873
+ #else
874
+ SIMDE_VECTORIZE
875
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
876
+ r_.i8[i] = (a_.i8[i] <= b_.i8[i]) ? ~INT8_C(0) : INT8_C(0);
877
+ }
878
+ #endif
879
+
880
+ return simde__m128i_from_private(r_);
881
+ #endif
882
+ }
883
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
884
+ #define _mm_comle_epi8(a, b) simde_mm_comle_epi8((a), (b))
885
+ #endif
886
+
887
+ SIMDE_FUNCTION_ATTRIBUTES
888
+ simde__m128i
889
+ simde_mm_comle_epi16 (simde__m128i a, simde__m128i b) {
890
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
891
+ return _mm_com_epi16(a, b, _MM_PCOMCTRL_LE);
892
+ #elif defined(SIMDE_X86_XOP_NATIVE)
893
+ return _mm_comle_epi16(a, b);
894
+ #else
895
+ simde__m128i_private
896
+ r_,
897
+ a_ = simde__m128i_to_private(a),
898
+ b_ = simde__m128i_to_private(b);
899
+
900
+ #if defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
901
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), a_.i16 <= b_.i16);
902
+ #else
903
+ SIMDE_VECTORIZE
904
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
905
+ r_.i16[i] = (a_.i16[i] <= b_.i16[i]) ? ~INT16_C(0) : INT16_C(0);
906
+ }
907
+ #endif
908
+
909
+ return simde__m128i_from_private(r_);
910
+ #endif
911
+ }
912
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
913
+ #define _mm_comle_epi16(a, b) simde_mm_comle_epi16((a), (b))
914
+ #endif
915
+
916
+ SIMDE_FUNCTION_ATTRIBUTES
917
+ simde__m128i
918
+ simde_mm_comle_epi32 (simde__m128i a, simde__m128i b) {
919
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
920
+ return _mm_com_epi32(a, b, _MM_PCOMCTRL_LE);
921
+ #elif defined(SIMDE_X86_XOP_NATIVE)
922
+ return _mm_comle_epi32(a, b);
923
+ #else
924
+ simde__m128i_private
925
+ r_,
926
+ a_ = simde__m128i_to_private(a),
927
+ b_ = simde__m128i_to_private(b);
928
+
929
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
930
+ r_.neon_u32 = vcleq_s32(a_.neon_i32, b_.neon_i32);
931
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
932
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), a_.i32 <= b_.i32);
933
+ #else
934
+ SIMDE_VECTORIZE
935
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
936
+ r_.i32[i] = (a_.i32[i] <= b_.i32[i]) ? ~INT32_C(0) : INT32_C(0);
937
+ }
938
+ #endif
939
+
940
+ return simde__m128i_from_private(r_);
941
+ #endif
942
+ }
943
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
944
+ #define _mm_comle_epi32(a, b) simde_mm_comle_epi32((a), (b))
945
+ #endif
946
+
947
+ SIMDE_FUNCTION_ATTRIBUTES
948
+ simde__m128i
949
+ simde_mm_comle_epi64 (simde__m128i a, simde__m128i b) {
950
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
951
+ return _mm_com_epi64(a, b, _MM_PCOMCTRL_LE);
952
+ #elif defined(SIMDE_X86_XOP_NATIVE)
953
+ return _mm_comle_epi64(a, b);
954
+ #else
955
+ simde__m128i_private
956
+ r_,
957
+ a_ = simde__m128i_to_private(a),
958
+ b_ = simde__m128i_to_private(b);
959
+
960
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
961
+ r_.neon_u64 = vcleq_s64(a_.neon_i64, b_.neon_i64);
962
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
963
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), a_.i64 <= b_.i64);
964
+ #else
965
+ SIMDE_VECTORIZE
966
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
967
+ r_.i64[i] = (a_.i64[i] <= b_.i64[i]) ? ~INT64_C(0) : INT64_C(0);
968
+ }
969
+ #endif
970
+
971
+ return simde__m128i_from_private(r_);
972
+ #endif
973
+ }
974
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
975
+ #define _mm_comle_epi64(a, b) simde_mm_comle_epi64((a), (b))
976
+ #endif
977
+
978
+ SIMDE_FUNCTION_ATTRIBUTES
979
+ simde__m128i
980
+ simde_mm_comle_epu8 (simde__m128i a, simde__m128i b) {
981
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
982
+ return _mm_com_epu8(a, b, _MM_PCOMCTRL_LE);
983
+ #elif defined(SIMDE_X86_XOP_NATIVE)
984
+ return _mm_comle_epu8(a, b);
985
+ #else
986
+ simde__m128i_private
987
+ r_,
988
+ a_ = simde__m128i_to_private(a),
989
+ b_ = simde__m128i_to_private(b);
990
+
991
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
992
+ r_.neon_u8 = vcleq_u8(a_.neon_u8, b_.neon_u8);
993
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
994
+ r_.u8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u8), a_.u8 <= b_.u8);
995
+ #else
996
+ SIMDE_VECTORIZE
997
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
998
+ r_.u8[i] = (a_.u8[i] <= b_.u8[i]) ? ~INT8_C(0) : INT8_C(0);
999
+ }
1000
+ #endif
1001
+
1002
+ return simde__m128i_from_private(r_);
1003
+ #endif
1004
+ }
1005
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1006
+ #define _mm_comle_epu8(a, b) simde_mm_comle_epu8((a), (b))
1007
+ #endif
1008
+
1009
+ SIMDE_FUNCTION_ATTRIBUTES
1010
+ simde__m128i
1011
+ simde_mm_comle_epu16 (simde__m128i a, simde__m128i b) {
1012
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
1013
+ return _mm_com_epu16(a, b, _MM_PCOMCTRL_LE);
1014
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1015
+ return _mm_comle_epu16(a, b);
1016
+ #else
1017
+ simde__m128i_private
1018
+ r_,
1019
+ a_ = simde__m128i_to_private(a),
1020
+ b_ = simde__m128i_to_private(b);
1021
+
1022
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1023
+ r_.neon_u16 = vcleq_u16(a_.neon_u16, b_.neon_u16);
1024
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1025
+ r_.u16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u16), a_.u16 <= b_.u16);
1026
+ #else
1027
+ SIMDE_VECTORIZE
1028
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
1029
+ r_.u16[i] = (a_.u16[i] <= b_.u16[i]) ? ~INT16_C(0) : INT16_C(0);
1030
+ }
1031
+ #endif
1032
+
1033
+ return simde__m128i_from_private(r_);
1034
+ #endif
1035
+ }
1036
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1037
+ #define _mm_comle_epu16(a, b) simde_mm_comle_epu16((a), (b))
1038
+ #endif
1039
+
1040
+ SIMDE_FUNCTION_ATTRIBUTES
1041
+ simde__m128i
1042
+ simde_mm_comle_epu32 (simde__m128i a, simde__m128i b) {
1043
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
1044
+ return _mm_com_epu32(a, b, _MM_PCOMCTRL_LE);
1045
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1046
+ return _mm_comle_epu32(a, b);
1047
+ #else
1048
+ simde__m128i_private
1049
+ r_,
1050
+ a_ = simde__m128i_to_private(a),
1051
+ b_ = simde__m128i_to_private(b);
1052
+
1053
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1054
+ r_.neon_u32 = vcleq_u32(a_.neon_u32, b_.neon_u32);
1055
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1056
+ r_.u32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u32), a_.u32 <= b_.u32);
1057
+ #else
1058
+ SIMDE_VECTORIZE
1059
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
1060
+ r_.u32[i] = (a_.u32[i] <= b_.u32[i]) ? ~INT32_C(0) : INT32_C(0);
1061
+ }
1062
+ #endif
1063
+
1064
+ return simde__m128i_from_private(r_);
1065
+ #endif
1066
+ }
1067
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1068
+ #define _mm_comle_epu32(a, b) simde_mm_comle_epu32((a), (b))
1069
+ #endif
1070
+
1071
+ SIMDE_FUNCTION_ATTRIBUTES
1072
+ simde__m128i
1073
+ simde_mm_comle_epu64 (simde__m128i a, simde__m128i b) {
1074
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LE)
1075
+ return _mm_com_epu64(a, b, _MM_PCOMCTRL_LE);
1076
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1077
+ return _mm_comle_epu64(a, b);
1078
+ #else
1079
+ simde__m128i_private
1080
+ r_,
1081
+ a_ = simde__m128i_to_private(a),
1082
+ b_ = simde__m128i_to_private(b);
1083
+
1084
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
1085
+ r_.neon_u64 = vcleq_u64(a_.neon_u64, b_.neon_u64);
1086
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1087
+ r_.u64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u64), a_.u64 <= b_.u64);
1088
+ #else
1089
+ SIMDE_VECTORIZE
1090
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
1091
+ r_.u64[i] = (a_.u64[i] <= b_.u64[i]) ? ~INT64_C(0) : INT64_C(0);
1092
+ }
1093
+ #endif
1094
+
1095
+ return simde__m128i_from_private(r_);
1096
+ #endif
1097
+ }
1098
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1099
+ #define _mm_comle_epu64(a, b) simde_mm_comle_epu64((a), (b))
1100
+ #endif
1101
+
1102
+ SIMDE_FUNCTION_ATTRIBUTES
1103
+ simde__m128i
1104
+ simde_mm_comlt_epi8 (simde__m128i a, simde__m128i b) {
1105
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1106
+ return _mm_com_epi8(a, b, _MM_PCOMCTRL_LT);
1107
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1108
+ return _mm_comlt_epi8(a, b);
1109
+ #else
1110
+ simde__m128i_private
1111
+ r_,
1112
+ a_ = simde__m128i_to_private(a),
1113
+ b_ = simde__m128i_to_private(b);
1114
+
1115
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1116
+ r_.neon_u8 = vcltq_s8(a_.neon_i8, b_.neon_i8);
1117
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1118
+ r_.i8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i8), a_.i8 < b_.i8);
1119
+ #else
1120
+ SIMDE_VECTORIZE
1121
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
1122
+ r_.i8[i] = (a_.i8[i] < b_.i8[i]) ? ~INT8_C(0) : INT8_C(0);
1123
+ }
1124
+ #endif
1125
+
1126
+ return simde__m128i_from_private(r_);
1127
+ #endif
1128
+ }
1129
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1130
+ #define _mm_comlt_epi8(a, b) simde_mm_comlt_epi8((a), (b))
1131
+ #endif
1132
+
1133
+ SIMDE_FUNCTION_ATTRIBUTES
1134
+ simde__m128i
1135
+ simde_mm_comlt_epi16 (simde__m128i a, simde__m128i b) {
1136
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1137
+ return _mm_com_epi16(a, b, _MM_PCOMCTRL_LT);
1138
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1139
+ return _mm_comlt_epi16(a, b);
1140
+ #else
1141
+ simde__m128i_private
1142
+ r_,
1143
+ a_ = simde__m128i_to_private(a),
1144
+ b_ = simde__m128i_to_private(b);
1145
+
1146
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1147
+ r_.neon_u16 = vcltq_s16(a_.neon_i16, b_.neon_i16);
1148
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1149
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), a_.i16 < b_.i16);
1150
+ #else
1151
+ SIMDE_VECTORIZE
1152
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
1153
+ r_.i16[i] = (a_.i16[i] < b_.i16[i]) ? ~INT16_C(0) : INT16_C(0);
1154
+ }
1155
+ #endif
1156
+
1157
+ return simde__m128i_from_private(r_);
1158
+ #endif
1159
+ }
1160
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1161
+ #define _mm_comlt_epi16(a, b) simde_mm_comlt_epi16((a), (b))
1162
+ #endif
1163
+
1164
+ SIMDE_FUNCTION_ATTRIBUTES
1165
+ simde__m128i
1166
+ simde_mm_comlt_epi32 (simde__m128i a, simde__m128i b) {
1167
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1168
+ return _mm_com_epi32(a, b, _MM_PCOMCTRL_LT);
1169
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1170
+ return _mm_comlt_epi32(a, b);
1171
+ #else
1172
+ simde__m128i_private
1173
+ r_,
1174
+ a_ = simde__m128i_to_private(a),
1175
+ b_ = simde__m128i_to_private(b);
1176
+
1177
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1178
+ r_.neon_u32 = vcltq_s32(a_.neon_i32, b_.neon_i32);
1179
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1180
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), a_.i32 < b_.i32);
1181
+ #else
1182
+ SIMDE_VECTORIZE
1183
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
1184
+ r_.i32[i] = (a_.i32[i] < b_.i32[i]) ? ~INT32_C(0) : INT32_C(0);
1185
+ }
1186
+ #endif
1187
+
1188
+ return simde__m128i_from_private(r_);
1189
+ #endif
1190
+ }
1191
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1192
+ #define _mm_comlt_epi32(a, b) simde_mm_comlt_epi32((a), (b))
1193
+ #endif
1194
+
1195
+ SIMDE_FUNCTION_ATTRIBUTES
1196
+ simde__m128i
1197
+ simde_mm_comlt_epi64 (simde__m128i a, simde__m128i b) {
1198
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1199
+ return _mm_com_epi64(a, b, _MM_PCOMCTRL_LT);
1200
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1201
+ return _mm_comlt_epi64(a, b);
1202
+ #else
1203
+ simde__m128i_private
1204
+ r_,
1205
+ a_ = simde__m128i_to_private(a),
1206
+ b_ = simde__m128i_to_private(b);
1207
+
1208
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
1209
+ r_.neon_u64 = vcltq_s64(a_.neon_i64, b_.neon_i64);
1210
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1211
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), a_.i64 < b_.i64);
1212
+ #else
1213
+ SIMDE_VECTORIZE
1214
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
1215
+ r_.i64[i] = (a_.i64[i] < b_.i64[i]) ? ~INT64_C(0) : INT64_C(0);
1216
+ }
1217
+ #endif
1218
+
1219
+ return simde__m128i_from_private(r_);
1220
+ #endif
1221
+ }
1222
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1223
+ #define _mm_comlt_epi64(a, b) simde_mm_comlt_epi64((a), (b))
1224
+ #endif
1225
+
1226
+ SIMDE_FUNCTION_ATTRIBUTES
1227
+ simde__m128i
1228
+ simde_mm_comlt_epu8 (simde__m128i a, simde__m128i b) {
1229
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1230
+ return _mm_com_epu8(a, b, _MM_PCOMCTRL_LT);
1231
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1232
+ return _mm_comlt_epu8(a, b);
1233
+ #else
1234
+ simde__m128i_private
1235
+ r_,
1236
+ a_ = simde__m128i_to_private(a),
1237
+ b_ = simde__m128i_to_private(b);
1238
+
1239
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1240
+ r_.neon_u8 = vcltq_u8(a_.neon_u8, b_.neon_u8);
1241
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1242
+ r_.u8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u8), a_.u8 < b_.u8);
1243
+ #else
1244
+ SIMDE_VECTORIZE
1245
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
1246
+ r_.u8[i] = (a_.u8[i] < b_.u8[i]) ? ~INT8_C(0) : INT8_C(0);
1247
+ }
1248
+ #endif
1249
+
1250
+ return simde__m128i_from_private(r_);
1251
+ #endif
1252
+ }
1253
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1254
+ #define _mm_comlt_epu8(a, b) simde_mm_comlt_epu8((a), (b))
1255
+ #endif
1256
+
1257
+ SIMDE_FUNCTION_ATTRIBUTES
1258
+ simde__m128i
1259
+ simde_mm_comlt_epu16 (simde__m128i a, simde__m128i b) {
1260
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1261
+ return _mm_com_epu16(a, b, _MM_PCOMCTRL_LT);
1262
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1263
+ return _mm_comlt_epu16(a, b);
1264
+ #else
1265
+ simde__m128i_private
1266
+ r_,
1267
+ a_ = simde__m128i_to_private(a),
1268
+ b_ = simde__m128i_to_private(b);
1269
+
1270
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1271
+ r_.neon_u16 = vcltq_u16(a_.neon_u16, b_.neon_u16);
1272
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1273
+ r_.u16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u16), a_.u16 < b_.u16);
1274
+ #else
1275
+ SIMDE_VECTORIZE
1276
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
1277
+ r_.u16[i] = (a_.u16[i] < b_.u16[i]) ? ~INT16_C(0) : INT16_C(0);
1278
+ }
1279
+ #endif
1280
+
1281
+ return simde__m128i_from_private(r_);
1282
+ #endif
1283
+ }
1284
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1285
+ #define _mm_comlt_epu16(a, b) simde_mm_comlt_epu16((a), (b))
1286
+ #endif
1287
+
1288
+ SIMDE_FUNCTION_ATTRIBUTES
1289
+ simde__m128i
1290
+ simde_mm_comlt_epu32 (simde__m128i a, simde__m128i b) {
1291
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1292
+ return _mm_com_epu32(a, b, _MM_PCOMCTRL_LT);
1293
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1294
+ return _mm_comlt_epu32(a, b);
1295
+ #else
1296
+ simde__m128i_private
1297
+ r_,
1298
+ a_ = simde__m128i_to_private(a),
1299
+ b_ = simde__m128i_to_private(b);
1300
+
1301
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1302
+ r_.neon_u32 = vcltq_u32(a_.neon_u32, b_.neon_u32);
1303
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1304
+ r_.u32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u32), a_.u32 < b_.u32);
1305
+ #else
1306
+ SIMDE_VECTORIZE
1307
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
1308
+ r_.u32[i] = (a_.u32[i] < b_.u32[i]) ? ~INT32_C(0) : INT32_C(0);
1309
+ }
1310
+ #endif
1311
+
1312
+ return simde__m128i_from_private(r_);
1313
+ #endif
1314
+ }
1315
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1316
+ #define _mm_comlt_epu32(a, b) simde_mm_comlt_epu32((a), (b))
1317
+ #endif
1318
+
1319
+ SIMDE_FUNCTION_ATTRIBUTES
1320
+ simde__m128i
1321
+ simde_mm_comlt_epu64 (simde__m128i a, simde__m128i b) {
1322
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1323
+ return _mm_com_epu64(a, b, _MM_PCOMCTRL_LT);
1324
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1325
+ return _mm_comlt_epu64(a, b);
1326
+ #else
1327
+ simde__m128i_private
1328
+ r_,
1329
+ a_ = simde__m128i_to_private(a),
1330
+ b_ = simde__m128i_to_private(b);
1331
+
1332
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
1333
+ r_.neon_u64 = vcltq_u64(a_.neon_u64, b_.neon_u64);
1334
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1335
+ r_.u64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u64), a_.u64 < b_.u64);
1336
+ #else
1337
+ SIMDE_VECTORIZE
1338
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
1339
+ r_.u64[i] = (a_.u64[i] < b_.u64[i]) ? ~INT64_C(0) : INT64_C(0);
1340
+ }
1341
+ #endif
1342
+
1343
+ return simde__m128i_from_private(r_);
1344
+ #endif
1345
+ }
1346
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1347
+ #define _mm_comlt_epu64(a, b) simde_mm_comlt_epu64((a), (b))
1348
+ #endif
1349
+
1350
+ SIMDE_FUNCTION_ATTRIBUTES
1351
+ simde__m128i
1352
+ simde_mm_comneq_epi8 (simde__m128i a, simde__m128i b) {
1353
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1354
+ return _mm_com_epi8(a, b, _MM_PCOMCTRL_NEQ);
1355
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1356
+ return _mm_comneq_epi8(a, b);
1357
+ #else
1358
+ simde__m128i_private
1359
+ r_,
1360
+ a_ = simde__m128i_to_private(a),
1361
+ b_ = simde__m128i_to_private(b);
1362
+
1363
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1364
+ r_.neon_u8 = vmvnq_u8(vceqq_s8(a_.neon_i8, b_.neon_i8));
1365
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1366
+ r_.i8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i8), a_.i8 != b_.i8);
1367
+ #else
1368
+ SIMDE_VECTORIZE
1369
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
1370
+ r_.i8[i] = (a_.i8[i] != b_.i8[i]) ? ~INT8_C(0) : INT8_C(0);
1371
+ }
1372
+ #endif
1373
+
1374
+ return simde__m128i_from_private(r_);
1375
+ #endif
1376
+ }
1377
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1378
+ #define _mm_comneq_epi8(a, b) simde_mm_comneq_epi8((a), (b))
1379
+ #endif
1380
+
1381
+ SIMDE_FUNCTION_ATTRIBUTES
1382
+ simde__m128i
1383
+ simde_mm_comneq_epi16 (simde__m128i a, simde__m128i b) {
1384
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1385
+ return _mm_com_epi16(a, b, _MM_PCOMCTRL_NEQ);
1386
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1387
+ return _mm_comneq_epi16(a, b);
1388
+ #else
1389
+ simde__m128i_private
1390
+ r_,
1391
+ a_ = simde__m128i_to_private(a),
1392
+ b_ = simde__m128i_to_private(b);
1393
+
1394
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1395
+ r_.neon_u16 = vmvnq_u16(vceqq_s16(a_.neon_i16, b_.neon_i16));
1396
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1397
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), a_.i16 != b_.i16);
1398
+ #else
1399
+ SIMDE_VECTORIZE
1400
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
1401
+ r_.i16[i] = (a_.i16[i] != b_.i16[i]) ? ~INT16_C(0) : INT16_C(0);
1402
+ }
1403
+ #endif
1404
+
1405
+ return simde__m128i_from_private(r_);
1406
+ #endif
1407
+ }
1408
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1409
+ #define _mm_comneq_epi16(a, b) simde_mm_comneq_epi16((a), (b))
1410
+ #endif
1411
+
1412
+ SIMDE_FUNCTION_ATTRIBUTES
1413
+ simde__m128i
1414
+ simde_mm_comneq_epi32 (simde__m128i a, simde__m128i b) {
1415
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1416
+ return _mm_com_epi32(a, b, _MM_PCOMCTRL_NEQ);
1417
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1418
+ return _mm_comneq_epi32(a, b);
1419
+ #else
1420
+ simde__m128i_private
1421
+ r_,
1422
+ a_ = simde__m128i_to_private(a),
1423
+ b_ = simde__m128i_to_private(b);
1424
+
1425
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1426
+ r_.neon_u32 = vmvnq_u32(vceqq_s32(a_.neon_i32, b_.neon_i32));
1427
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1428
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), a_.i32 != b_.i32);
1429
+ #else
1430
+ SIMDE_VECTORIZE
1431
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
1432
+ r_.i32[i] = (a_.i32[i] != b_.i32[i]) ? ~INT32_C(0) : INT32_C(0);
1433
+ }
1434
+ #endif
1435
+
1436
+ return simde__m128i_from_private(r_);
1437
+ #endif
1438
+ }
1439
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1440
+ #define _mm_comneq_epi32(a, b) simde_mm_comneq_epi32((a), (b))
1441
+ #endif
1442
+
1443
+ SIMDE_FUNCTION_ATTRIBUTES
1444
+ simde__m128i
1445
+ simde_mm_comneq_epi64 (simde__m128i a, simde__m128i b) {
1446
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1447
+ return _mm_com_epi64(a, b, _MM_PCOMCTRL_NEQ);
1448
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1449
+ return _mm_comneq_epi64(a, b);
1450
+ #else
1451
+ simde__m128i_private
1452
+ r_,
1453
+ a_ = simde__m128i_to_private(a),
1454
+ b_ = simde__m128i_to_private(b);
1455
+
1456
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
1457
+ r_.neon_u32 = vmvnq_u32(vreinterpretq_u32_u64(vceqq_s64(a_.neon_i64, b_.neon_i64)));
1458
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1459
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), a_.i64 != b_.i64);
1460
+ #else
1461
+ SIMDE_VECTORIZE
1462
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
1463
+ r_.i64[i] = (a_.i64[i] != b_.i64[i]) ? ~INT64_C(0) : INT64_C(0);
1464
+ }
1465
+ #endif
1466
+
1467
+ return simde__m128i_from_private(r_);
1468
+ #endif
1469
+ }
1470
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1471
+ #define _mm_comneq_epi64(a, b) simde_mm_comneq_epi64((a), (b))
1472
+ #endif
1473
+
1474
+ SIMDE_FUNCTION_ATTRIBUTES
1475
+ simde__m128i
1476
+ simde_mm_comneq_epu8 (simde__m128i a, simde__m128i b) {
1477
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1478
+ return _mm_com_epu8(a, b, _MM_PCOMCTRL_NEQ);
1479
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1480
+ return _mm_comneq_epu8(a, b);
1481
+ #else
1482
+ simde__m128i_private
1483
+ r_,
1484
+ a_ = simde__m128i_to_private(a),
1485
+ b_ = simde__m128i_to_private(b);
1486
+
1487
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1488
+ r_.neon_u8 = vmvnq_u8(vceqq_u8(a_.neon_u8, b_.neon_u8));
1489
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1490
+ r_.u8 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u8), a_.u8 != b_.u8);
1491
+ #else
1492
+ SIMDE_VECTORIZE
1493
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
1494
+ r_.u8[i] = (a_.u8[i] != b_.u8[i]) ? ~INT8_C(0) : INT8_C(0);
1495
+ }
1496
+ #endif
1497
+
1498
+ return simde__m128i_from_private(r_);
1499
+ #endif
1500
+ }
1501
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1502
+ #define _mm_comneq_epu8(a, b) simde_mm_comneq_epu8((a), (b))
1503
+ #endif
1504
+
1505
+ SIMDE_FUNCTION_ATTRIBUTES
1506
+ simde__m128i
1507
+ simde_mm_comneq_epu16 (simde__m128i a, simde__m128i b) {
1508
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1509
+ return _mm_com_epu16(a, b, _MM_PCOMCTRL_NEQ);
1510
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1511
+ return _mm_comneq_epu16(a, b);
1512
+ #else
1513
+ simde__m128i_private
1514
+ r_,
1515
+ a_ = simde__m128i_to_private(a),
1516
+ b_ = simde__m128i_to_private(b);
1517
+
1518
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1519
+ r_.neon_u16 = vmvnq_u16(vceqq_u16(a_.neon_u16, b_.neon_u16));
1520
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1521
+ r_.u16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u16), a_.u16 != b_.u16);
1522
+ #else
1523
+ SIMDE_VECTORIZE
1524
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
1525
+ r_.u16[i] = (a_.u16[i] != b_.u16[i]) ? ~INT16_C(0) : INT16_C(0);
1526
+ }
1527
+ #endif
1528
+
1529
+ return simde__m128i_from_private(r_);
1530
+ #endif
1531
+ }
1532
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1533
+ #define _mm_comneq_epu16(a, b) simde_mm_comneq_epu16((a), (b))
1534
+ #endif
1535
+
1536
+ SIMDE_FUNCTION_ATTRIBUTES
1537
+ simde__m128i
1538
+ simde_mm_comneq_epu32 (simde__m128i a, simde__m128i b) {
1539
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1540
+ return _mm_com_epu32(a, b, _MM_PCOMCTRL_NEQ);
1541
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1542
+ return _mm_comneq_epu32(a, b);
1543
+ #else
1544
+ simde__m128i_private
1545
+ r_,
1546
+ a_ = simde__m128i_to_private(a),
1547
+ b_ = simde__m128i_to_private(b);
1548
+
1549
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1550
+ r_.neon_u32 = vmvnq_u32(vceqq_u32(a_.neon_u32, b_.neon_u32));
1551
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1552
+ r_.u32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u32), a_.u32 != b_.u32);
1553
+ #else
1554
+ SIMDE_VECTORIZE
1555
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
1556
+ r_.u32[i] = (a_.u32[i] != b_.u32[i]) ? ~INT32_C(0) : INT32_C(0);
1557
+ }
1558
+ #endif
1559
+
1560
+ return simde__m128i_from_private(r_);
1561
+ #endif
1562
+ }
1563
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1564
+ #define _mm_comneq_epu32(a, b) simde_mm_comneq_epu32((a), (b))
1565
+ #endif
1566
+
1567
+ SIMDE_FUNCTION_ATTRIBUTES
1568
+ simde__m128i
1569
+ simde_mm_comneq_epu64 (simde__m128i a, simde__m128i b) {
1570
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_NEQ)
1571
+ return _mm_com_epu64(a, b, _MM_PCOMCTRL_NEQ);
1572
+ #elif defined(SIMDE_X86_XOP_NATIVE)
1573
+ return _mm_comneq_epu64(a, b);
1574
+ #else
1575
+ simde__m128i_private
1576
+ r_,
1577
+ a_ = simde__m128i_to_private(a),
1578
+ b_ = simde__m128i_to_private(b);
1579
+
1580
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
1581
+ r_.neon_u32 = vmvnq_u32(vreinterpretq_u32_u64(vceqq_u64(a_.neon_u64, b_.neon_u64)));
1582
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1583
+ r_.u64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.u64), a_.u64 != b_.u64);
1584
+ #else
1585
+ SIMDE_VECTORIZE
1586
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
1587
+ r_.u64[i] = (a_.u64[i] != b_.u64[i]) ? ~INT64_C(0) : INT64_C(0);
1588
+ }
1589
+ #endif
1590
+
1591
+ return simde__m128i_from_private(r_);
1592
+ #endif
1593
+ }
1594
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1595
+ #define _mm_comneq_epu64(a, b) simde_mm_comneq_epu64((a), (b))
1596
+ #endif
1597
+
1598
+ SIMDE_FUNCTION_ATTRIBUTES
1599
+ simde__m128i
1600
+ simde_mm_comfalse_epi8 (simde__m128i a, simde__m128i b) {
1601
+ (void) a;
1602
+ (void) b;
1603
+ return simde_mm_setzero_si128();
1604
+ }
1605
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1606
+ #define _mm_comfalse_epi8(a, b) simde_mm_comfalse_epi8((a), (b))
1607
+ #endif
1608
+
1609
+ SIMDE_FUNCTION_ATTRIBUTES
1610
+ simde__m128i
1611
+ simde_mm_comfalse_epi16 (simde__m128i a, simde__m128i b) {
1612
+ (void) a;
1613
+ (void) b;
1614
+ return simde_mm_setzero_si128();
1615
+ }
1616
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1617
+ #define _mm_comfalse_epi16(a, b) simde_mm_comfalse_epi16((a), (b))
1618
+ #endif
1619
+
1620
+ SIMDE_FUNCTION_ATTRIBUTES
1621
+ simde__m128i
1622
+ simde_mm_comfalse_epi32 (simde__m128i a, simde__m128i b) {
1623
+ (void) a;
1624
+ (void) b;
1625
+ return simde_mm_setzero_si128();
1626
+ }
1627
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1628
+ #define _mm_comfalse_epi32(a, b) simde_mm_comfalse_epi32((a), (b))
1629
+ #endif
1630
+
1631
+ SIMDE_FUNCTION_ATTRIBUTES
1632
+ simde__m128i
1633
+ simde_mm_comfalse_epi64 (simde__m128i a, simde__m128i b) {
1634
+ (void) a;
1635
+ (void) b;
1636
+ return simde_mm_setzero_si128();
1637
+ }
1638
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1639
+ #define _mm_comfalse_epi64(a, b) simde_mm_comfalse_epi64((a), (b))
1640
+ #endif
1641
+
1642
+ SIMDE_FUNCTION_ATTRIBUTES
1643
+ simde__m128i
1644
+ simde_mm_comfalse_epu8 (simde__m128i a, simde__m128i b) {
1645
+ (void) a;
1646
+ (void) b;
1647
+ return simde_mm_setzero_si128();
1648
+ }
1649
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1650
+ #define _mm_comfalse_epu8(a, b) simde_mm_comfalse_epu8((a), (b))
1651
+ #endif
1652
+
1653
+ SIMDE_FUNCTION_ATTRIBUTES
1654
+ simde__m128i
1655
+ simde_mm_comfalse_epu16 (simde__m128i a, simde__m128i b) {
1656
+ (void) a;
1657
+ (void) b;
1658
+ return simde_mm_setzero_si128();
1659
+ }
1660
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1661
+ #define _mm_comfalse_epu16(a, b) simde_mm_comfalse_epu16((a), (b))
1662
+ #endif
1663
+
1664
+ SIMDE_FUNCTION_ATTRIBUTES
1665
+ simde__m128i
1666
+ simde_mm_comfalse_epu32 (simde__m128i a, simde__m128i b) {
1667
+ (void) a;
1668
+ (void) b;
1669
+ return simde_mm_setzero_si128();
1670
+ }
1671
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1672
+ #define _mm_comfalse_epu32(a, b) simde_mm_comfalse_epu32((a), (b))
1673
+ #endif
1674
+
1675
+ SIMDE_FUNCTION_ATTRIBUTES
1676
+ simde__m128i
1677
+ simde_mm_comfalse_epu64 (simde__m128i a, simde__m128i b) {
1678
+ (void) a;
1679
+ (void) b;
1680
+ return simde_mm_setzero_si128();
1681
+ }
1682
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1683
+ #define _mm_comfalse_epu64(a, b) simde_mm_comfalse_epu64((a), (b))
1684
+ #endif
1685
+
1686
+ SIMDE_FUNCTION_ATTRIBUTES
1687
+ simde__m128i
1688
+ simde_mm_comtrue_epi8 (simde__m128i a, simde__m128i b) {
1689
+ (void) a;
1690
+ (void) b;
1691
+ return simde_x_mm_setone_si128();
1692
+ }
1693
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1694
+ #define _mm_comtrue_epi8(a, b) simde_mm_comtrue_epi8((a), (b))
1695
+ #endif
1696
+
1697
+ SIMDE_FUNCTION_ATTRIBUTES
1698
+ simde__m128i
1699
+ simde_mm_comtrue_epi16 (simde__m128i a, simde__m128i b) {
1700
+ (void) a;
1701
+ (void) b;
1702
+ return simde_x_mm_setone_si128();
1703
+ }
1704
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1705
+ #define _mm_comtrue_epi16(a, b) simde_mm_comtrue_epi16((a), (b))
1706
+ #endif
1707
+
1708
+ SIMDE_FUNCTION_ATTRIBUTES
1709
+ simde__m128i
1710
+ simde_mm_comtrue_epi32 (simde__m128i a, simde__m128i b) {
1711
+ (void) a;
1712
+ (void) b;
1713
+ return simde_x_mm_setone_si128();
1714
+ }
1715
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1716
+ #define _mm_comtrue_epi32(a, b) simde_mm_comtrue_epi32((a), (b))
1717
+ #endif
1718
+
1719
+ SIMDE_FUNCTION_ATTRIBUTES
1720
+ simde__m128i
1721
+ simde_mm_comtrue_epi64 (simde__m128i a, simde__m128i b) {
1722
+ (void) a;
1723
+ (void) b;
1724
+ return simde_x_mm_setone_si128();
1725
+ }
1726
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1727
+ #define _mm_comtrue_epi64(a, b) simde_mm_comtrue_epi64((a), (b))
1728
+ #endif
1729
+
1730
+ SIMDE_FUNCTION_ATTRIBUTES
1731
+ simde__m128i
1732
+ simde_mm_comtrue_epu8 (simde__m128i a, simde__m128i b) {
1733
+ (void) a;
1734
+ (void) b;
1735
+ return simde_x_mm_setone_si128();
1736
+ }
1737
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1738
+ #define _mm_comtrue_epu8(a, b) simde_mm_comtrue_epu8((a), (b))
1739
+ #endif
1740
+
1741
+ SIMDE_FUNCTION_ATTRIBUTES
1742
+ simde__m128i
1743
+ simde_mm_comtrue_epu16 (simde__m128i a, simde__m128i b) {
1744
+ (void) a;
1745
+ (void) b;
1746
+ return simde_x_mm_setone_si128();
1747
+ }
1748
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1749
+ #define _mm_comtrue_epu16(a, b) simde_mm_comtrue_epu16((a), (b))
1750
+ #endif
1751
+
1752
+ SIMDE_FUNCTION_ATTRIBUTES
1753
+ simde__m128i
1754
+ simde_mm_comtrue_epu32 (simde__m128i a, simde__m128i b) {
1755
+ (void) a;
1756
+ (void) b;
1757
+ return simde_x_mm_setone_si128();
1758
+ }
1759
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1760
+ #define _mm_comtrue_epu32(a, b) simde_mm_comtrue_epu32((a), (b))
1761
+ #endif
1762
+
1763
+ SIMDE_FUNCTION_ATTRIBUTES
1764
+ simde__m128i
1765
+ simde_mm_comtrue_epu64 (simde__m128i a, simde__m128i b) {
1766
+ (void) a;
1767
+ (void) b;
1768
+ return simde_x_mm_setone_si128();
1769
+ }
1770
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1771
+ #define _mm_comtrue_epu64(a, b) simde_mm_comtrue_epu64((a), (b))
1772
+ #endif
1773
+
1774
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(_MM_PCOMCTRL_LT)
1775
+ #define SIMDE_X86_XOP_HAVE_COM_ 1
1776
+ #define SIMDE_MM_PCOMCTRL_LT _MM_PCOMCTRL_LT
1777
+ #define SIMDE_MM_PCOMCTRL_LE _MM_PCOMCTRL_LE
1778
+ #define SIMDE_MM_PCOMCTRL_GT _MM_PCOMCTRL_GT
1779
+ #define SIMDE_MM_PCOMCTRL_GE _MM_PCOMCTRL_GE
1780
+ #define SIMDE_MM_PCOMCTRL_EQ _MM_PCOMCTRL_EQ
1781
+ #define SIMDE_MM_PCOMCTRL_NEQ _MM_PCOMCTRL_NEQ
1782
+ #define SIMDE_MM_PCOMCTRL_FALSE _MM_PCOMCTRL_FALSE
1783
+ #define SIMDE_MM_PCOMCTRL_TRUE _MM_PCOMCTRL_TRUE
1784
+ #else
1785
+ #define SIMDE_MM_PCOMCTRL_LT 0
1786
+ #define SIMDE_MM_PCOMCTRL_LE 1
1787
+ #define SIMDE_MM_PCOMCTRL_GT 2
1788
+ #define SIMDE_MM_PCOMCTRL_GE 3
1789
+ #define SIMDE_MM_PCOMCTRL_EQ 4
1790
+ #define SIMDE_MM_PCOMCTRL_NEQ 5
1791
+ #define SIMDE_MM_PCOMCTRL_FALSE 6
1792
+ #define SIMDE_MM_PCOMCTRL_TRUE 7
1793
+
1794
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1795
+ #define _MM_PCOMCTRL_LT SIMDE_MM_PCOMCTRL_LT
1796
+ #define _MM_PCOMCTRL_LE SIMDE_MM_PCOMCTRL_LE
1797
+ #define _MM_PCOMCTRL_GT SIMDE_MM_PCOMCTRL_GT
1798
+ #define _MM_PCOMCTRL_GE SIMDE_MM_PCOMCTRL_GE
1799
+ #define _MM_PCOMCTRL_EQ SIMDE_MM_PCOMCTRL_EQ
1800
+ #define _MM_PCOMCTRL_NEQ SIMDE_MM_PCOMCTRL_NEQ
1801
+ #define _MM_PCOMCTRL_FALSE SIMDE_MM_PCOMCTRL_FALSE
1802
+ #define _MM_PCOMCTRL_TRUE SIMDE_MM_PCOMCTRL_TRUE
1803
+ #endif
1804
+ #endif
1805
+
1806
+ SIMDE_FUNCTION_ATTRIBUTES
1807
+ simde__m128i
1808
+ simde_mm_com_epi8 (simde__m128i a, simde__m128i b, const int imm8)
1809
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
1810
+ switch (imm8) {
1811
+ case SIMDE_MM_PCOMCTRL_LT:
1812
+ return simde_mm_comlt_epi8(a, b);
1813
+ case SIMDE_MM_PCOMCTRL_LE:
1814
+ return simde_mm_comle_epi8(a, b);
1815
+ case SIMDE_MM_PCOMCTRL_GT:
1816
+ return simde_mm_comgt_epi8(a, b);
1817
+ case SIMDE_MM_PCOMCTRL_GE:
1818
+ return simde_mm_comge_epi8(a, b);
1819
+ case SIMDE_MM_PCOMCTRL_EQ:
1820
+ return simde_mm_comeq_epi8(a, b);
1821
+ case SIMDE_MM_PCOMCTRL_NEQ:
1822
+ return simde_mm_comneq_epi8(a, b);
1823
+ case SIMDE_MM_PCOMCTRL_FALSE:
1824
+ return simde_mm_comfalse_epi8(a, b);
1825
+ case SIMDE_MM_PCOMCTRL_TRUE:
1826
+ return simde_mm_comtrue_epi8(a, b);
1827
+ default:
1828
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
1829
+ }
1830
+ }
1831
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
1832
+ #define simde_mm_com_epi8(a, b, imm8) _mm_com_epi8((a), (b), (imm8))
1833
+ #endif
1834
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1835
+ #define _mm_com_epi8(a, b, imm8) simde_mm_com_epi8((a), (b), (imm8))
1836
+ #endif
1837
+
1838
+ SIMDE_FUNCTION_ATTRIBUTES
1839
+ simde__m128i
1840
+ simde_mm_com_epi16 (simde__m128i a, simde__m128i b, const int imm8)
1841
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
1842
+ switch (imm8) {
1843
+ case SIMDE_MM_PCOMCTRL_LT:
1844
+ return simde_mm_comlt_epi16(a, b);
1845
+ case SIMDE_MM_PCOMCTRL_LE:
1846
+ return simde_mm_comle_epi16(a, b);
1847
+ case SIMDE_MM_PCOMCTRL_GT:
1848
+ return simde_mm_comgt_epi16(a, b);
1849
+ case SIMDE_MM_PCOMCTRL_GE:
1850
+ return simde_mm_comge_epi16(a, b);
1851
+ case SIMDE_MM_PCOMCTRL_EQ:
1852
+ return simde_mm_comeq_epi16(a, b);
1853
+ case SIMDE_MM_PCOMCTRL_NEQ:
1854
+ return simde_mm_comneq_epi16(a, b);
1855
+ case SIMDE_MM_PCOMCTRL_FALSE:
1856
+ return simde_mm_comfalse_epi16(a, b);
1857
+ case SIMDE_MM_PCOMCTRL_TRUE:
1858
+ return simde_mm_comtrue_epi16(a, b);
1859
+ default:
1860
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
1861
+ }
1862
+ }
1863
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
1864
+ #define simde_mm_com_epi16(a, b, imm8) _mm_com_epi16((a), (b), (imm8))
1865
+ #endif
1866
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1867
+ #define _mm_com_epi16(a, b, imm8) simde_mm_com_epi16((a), (b), (imm8))
1868
+ #endif
1869
+
1870
+ SIMDE_FUNCTION_ATTRIBUTES
1871
+ simde__m128i
1872
+ simde_mm_com_epi32 (simde__m128i a, simde__m128i b, const int imm8)
1873
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
1874
+ switch (imm8) {
1875
+ case SIMDE_MM_PCOMCTRL_LT:
1876
+ return simde_mm_comlt_epi32(a, b);
1877
+ case SIMDE_MM_PCOMCTRL_LE:
1878
+ return simde_mm_comle_epi32(a, b);
1879
+ case SIMDE_MM_PCOMCTRL_GT:
1880
+ return simde_mm_comgt_epi32(a, b);
1881
+ case SIMDE_MM_PCOMCTRL_GE:
1882
+ return simde_mm_comge_epi32(a, b);
1883
+ case SIMDE_MM_PCOMCTRL_EQ:
1884
+ return simde_mm_comeq_epi32(a, b);
1885
+ case SIMDE_MM_PCOMCTRL_NEQ:
1886
+ return simde_mm_comneq_epi32(a, b);
1887
+ case SIMDE_MM_PCOMCTRL_FALSE:
1888
+ return simde_mm_comfalse_epi32(a, b);
1889
+ case SIMDE_MM_PCOMCTRL_TRUE:
1890
+ return simde_mm_comtrue_epi32(a, b);
1891
+ default:
1892
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
1893
+ }
1894
+ }
1895
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
1896
+ #define simde_mm_com_epi32(a, b, imm8) _mm_com_epi32((a), (b), (imm8))
1897
+ #endif
1898
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1899
+ #define _mm_com_epi32(a, b, imm8) simde_mm_com_epi32((a), (b), (imm8))
1900
+ #endif
1901
+
1902
+ SIMDE_FUNCTION_ATTRIBUTES
1903
+ simde__m128i
1904
+ simde_mm_com_epi64 (simde__m128i a, simde__m128i b, const int imm8)
1905
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
1906
+ switch (imm8) {
1907
+ case SIMDE_MM_PCOMCTRL_LT:
1908
+ return simde_mm_comlt_epi64(a, b);
1909
+ case SIMDE_MM_PCOMCTRL_LE:
1910
+ return simde_mm_comle_epi64(a, b);
1911
+ case SIMDE_MM_PCOMCTRL_GT:
1912
+ return simde_mm_comgt_epi64(a, b);
1913
+ case SIMDE_MM_PCOMCTRL_GE:
1914
+ return simde_mm_comge_epi64(a, b);
1915
+ case SIMDE_MM_PCOMCTRL_EQ:
1916
+ return simde_mm_comeq_epi64(a, b);
1917
+ case SIMDE_MM_PCOMCTRL_NEQ:
1918
+ return simde_mm_comneq_epi64(a, b);
1919
+ case SIMDE_MM_PCOMCTRL_FALSE:
1920
+ return simde_mm_comfalse_epi64(a, b);
1921
+ case SIMDE_MM_PCOMCTRL_TRUE:
1922
+ return simde_mm_comtrue_epi64(a, b);
1923
+ default:
1924
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
1925
+ }
1926
+ }
1927
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
1928
+ #define simde_mm_com_epi64(a, b, imm8) _mm_com_epi64((a), (b), (imm8))
1929
+ #endif
1930
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1931
+ #define _mm_com_epi64(a, b, imm8) simde_mm_com_epi64((a), (b), (imm8))
1932
+ #endif
1933
+
1934
+ SIMDE_FUNCTION_ATTRIBUTES
1935
+ simde__m128i
1936
+ simde_mm_com_epu8 (simde__m128i a, simde__m128i b, const int imm8)
1937
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
1938
+ switch (imm8) {
1939
+ case SIMDE_MM_PCOMCTRL_LT:
1940
+ return simde_mm_comlt_epu8(a, b);
1941
+ case SIMDE_MM_PCOMCTRL_LE:
1942
+ return simde_mm_comle_epu8(a, b);
1943
+ case SIMDE_MM_PCOMCTRL_GT:
1944
+ return simde_mm_comgt_epu8(a, b);
1945
+ case SIMDE_MM_PCOMCTRL_GE:
1946
+ return simde_mm_comge_epu8(a, b);
1947
+ case SIMDE_MM_PCOMCTRL_EQ:
1948
+ return simde_mm_comeq_epu8(a, b);
1949
+ case SIMDE_MM_PCOMCTRL_NEQ:
1950
+ return simde_mm_comneq_epu8(a, b);
1951
+ case SIMDE_MM_PCOMCTRL_FALSE:
1952
+ return simde_mm_comfalse_epu8(a, b);
1953
+ case SIMDE_MM_PCOMCTRL_TRUE:
1954
+ return simde_mm_comtrue_epu8(a, b);
1955
+ default:
1956
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
1957
+ }
1958
+ }
1959
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
1960
+ #define simde_mm_com_epu8(a, b, imm8) _mm_com_epu8((a), (b), (imm8))
1961
+ #endif
1962
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1963
+ #define _mm_com_epu8(a, b, imm8) simde_mm_com_epu8((a), (b), (imm8))
1964
+ #endif
1965
+
1966
+ SIMDE_FUNCTION_ATTRIBUTES
1967
+ simde__m128i
1968
+ simde_mm_com_epu16 (simde__m128i a, simde__m128i b, const int imm8)
1969
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
1970
+ switch (imm8) {
1971
+ case SIMDE_MM_PCOMCTRL_LT:
1972
+ return simde_mm_comlt_epu16(a, b);
1973
+ case SIMDE_MM_PCOMCTRL_LE:
1974
+ return simde_mm_comle_epu16(a, b);
1975
+ case SIMDE_MM_PCOMCTRL_GT:
1976
+ return simde_mm_comgt_epu16(a, b);
1977
+ case SIMDE_MM_PCOMCTRL_GE:
1978
+ return simde_mm_comge_epu16(a, b);
1979
+ case SIMDE_MM_PCOMCTRL_EQ:
1980
+ return simde_mm_comeq_epu16(a, b);
1981
+ case SIMDE_MM_PCOMCTRL_NEQ:
1982
+ return simde_mm_comneq_epu16(a, b);
1983
+ case SIMDE_MM_PCOMCTRL_FALSE:
1984
+ return simde_mm_comfalse_epu16(a, b);
1985
+ case SIMDE_MM_PCOMCTRL_TRUE:
1986
+ return simde_mm_comtrue_epu16(a, b);
1987
+ default:
1988
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
1989
+ }
1990
+ }
1991
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
1992
+ #define simde_mm_com_epu16(a, b, imm8) _mm_com_epu16((a), (b), (imm8))
1993
+ #endif
1994
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
1995
+ #define _mm_com_epu16(a, b, imm8) simde_mm_com_epu16((a), (b), (imm8))
1996
+ #endif
1997
+
1998
+ SIMDE_FUNCTION_ATTRIBUTES
1999
+ simde__m128i
2000
+ simde_mm_com_epu32 (simde__m128i a, simde__m128i b, const int imm8)
2001
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
2002
+ switch (imm8) {
2003
+ case SIMDE_MM_PCOMCTRL_LT:
2004
+ return simde_mm_comlt_epu32(a, b);
2005
+ case SIMDE_MM_PCOMCTRL_LE:
2006
+ return simde_mm_comle_epu32(a, b);
2007
+ case SIMDE_MM_PCOMCTRL_GT:
2008
+ return simde_mm_comgt_epu32(a, b);
2009
+ case SIMDE_MM_PCOMCTRL_GE:
2010
+ return simde_mm_comge_epu32(a, b);
2011
+ case SIMDE_MM_PCOMCTRL_EQ:
2012
+ return simde_mm_comeq_epu32(a, b);
2013
+ case SIMDE_MM_PCOMCTRL_NEQ:
2014
+ return simde_mm_comneq_epu32(a, b);
2015
+ case SIMDE_MM_PCOMCTRL_FALSE:
2016
+ return simde_mm_comfalse_epu32(a, b);
2017
+ case SIMDE_MM_PCOMCTRL_TRUE:
2018
+ return simde_mm_comtrue_epu32(a, b);
2019
+ default:
2020
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
2021
+ }
2022
+ }
2023
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
2024
+ #define simde_mm_com_epu32(a, b, imm8) _mm_com_epu32((a), (b), (imm8))
2025
+ #endif
2026
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2027
+ #define _mm_com_epu32(a, b, imm8) simde_mm_com_epu32((a), (b), (imm8))
2028
+ #endif
2029
+
2030
+ SIMDE_FUNCTION_ATTRIBUTES
2031
+ simde__m128i
2032
+ simde_mm_com_epu64 (simde__m128i a, simde__m128i b, const int imm8)
2033
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 7) {
2034
+ switch (imm8) {
2035
+ case SIMDE_MM_PCOMCTRL_LT:
2036
+ return simde_mm_comlt_epu64(a, b);
2037
+ case SIMDE_MM_PCOMCTRL_LE:
2038
+ return simde_mm_comle_epu64(a, b);
2039
+ case SIMDE_MM_PCOMCTRL_GT:
2040
+ return simde_mm_comgt_epu64(a, b);
2041
+ case SIMDE_MM_PCOMCTRL_GE:
2042
+ return simde_mm_comge_epu64(a, b);
2043
+ case SIMDE_MM_PCOMCTRL_EQ:
2044
+ return simde_mm_comeq_epu64(a, b);
2045
+ case SIMDE_MM_PCOMCTRL_NEQ:
2046
+ return simde_mm_comneq_epu64(a, b);
2047
+ case SIMDE_MM_PCOMCTRL_FALSE:
2048
+ return simde_mm_comfalse_epu64(a, b);
2049
+ case SIMDE_MM_PCOMCTRL_TRUE:
2050
+ return simde_mm_comtrue_epu64(a, b);
2051
+ default:
2052
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_setzero_si128());
2053
+ }
2054
+ }
2055
+ #if defined(SIMDE_X86_XOP_NATIVE) && defined(SIMDE_X86_XOP_HAVE_COM_)
2056
+ #define simde_mm_com_epu64(a, b, imm8) _mm_com_epu64((a), (b), (imm8))
2057
+ #endif
2058
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2059
+ #define _mm_com_epu64(a, b, imm8) simde_mm_com_epu64((a), (b), (imm8))
2060
+ #endif
2061
+
2062
+ SIMDE_FUNCTION_ATTRIBUTES
2063
+ simde__m128
2064
+ simde_mm_frcz_ps (simde__m128 a) {
2065
+ #if defined(SIMDE_X86_XOP_NATIVE)
2066
+ return _mm_frcz_ps(a);
2067
+ #else
2068
+ simde__m128_private
2069
+ r_,
2070
+ a_ = simde__m128_to_private(a);
2071
+
2072
+ SIMDE_VECTORIZE
2073
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
2074
+ #if defined(simde_math_modff)
2075
+ simde_float32 integral;
2076
+ r_.f32[i] = simde_math_modff(a_.f32[i], &integral);
2077
+ #else
2078
+ r_.f32[i] = (a_.f32[i] / 1.0f);
2079
+ #endif
2080
+ }
2081
+
2082
+ return simde__m128_from_private(r_);
2083
+ #endif
2084
+ }
2085
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2086
+ #define _mm_frcz_ps(a) simde_mm_frcz_ps((a))
2087
+ #endif
2088
+
2089
+ SIMDE_FUNCTION_ATTRIBUTES
2090
+ simde__m128d
2091
+ simde_mm_frcz_pd (simde__m128d a) {
2092
+ #if defined(SIMDE_X86_XOP_NATIVE)
2093
+ return _mm_frcz_pd(a);
2094
+ #else
2095
+ simde__m128d_private
2096
+ r_,
2097
+ a_ = simde__m128d_to_private(a);
2098
+
2099
+ SIMDE_VECTORIZE
2100
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
2101
+ #if defined(simde_math_modf)
2102
+ simde_float64 integral;
2103
+ r_.f64[i] = simde_math_modf(a_.f64[i], &integral);
2104
+ #else
2105
+ r_.f64[i] = (a_.f64[i] / 1.0f);
2106
+ #endif
2107
+ }
2108
+
2109
+ return simde__m128d_from_private(r_);
2110
+ #endif
2111
+ }
2112
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2113
+ #define _mm_frcz_ps(a) simde_mm_frcz_ps((a))
2114
+ #endif
2115
+
2116
+ SIMDE_FUNCTION_ATTRIBUTES
2117
+ simde__m128
2118
+ simde_mm_frcz_ss (simde__m128 a, simde__m128 b) {
2119
+ #if defined(SIMDE_X86_XOP_NATIVE) && !defined(SIMDE_BUG_CLANG_48673)
2120
+ return _mm_frcz_ss(a, b);
2121
+ #else
2122
+ simde__m128_private
2123
+ a_ = simde__m128_to_private(a),
2124
+ b_ = simde__m128_to_private(b);
2125
+
2126
+ #if defined(simde_math_modff)
2127
+ simde_float32 integral;
2128
+ a_.f32[0] = simde_math_modff(b_.f32[0], &integral);
2129
+ #else
2130
+ a_.f32[0] = (b_.f32[0] / 1.0f);
2131
+ #endif
2132
+
2133
+ return simde__m128_from_private(a_);
2134
+ #endif
2135
+ }
2136
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2137
+ #define _mm_frcz_ss(a, b) simde_mm_frcz_ss((a), (b))
2138
+ #endif
2139
+
2140
+ SIMDE_FUNCTION_ATTRIBUTES
2141
+ simde__m128d
2142
+ simde_mm_frcz_sd (simde__m128d a, simde__m128d b) {
2143
+ #if defined(SIMDE_X86_XOP_NATIVE) && !defined(SIMDE_BUG_CLANG_48673)
2144
+ return _mm_frcz_sd(a, b);
2145
+ #else
2146
+ simde__m128d_private
2147
+ a_ = simde__m128d_to_private(a),
2148
+ b_ = simde__m128d_to_private(b);
2149
+
2150
+ #if defined(simde_math_modf)
2151
+ simde_float64 integral;
2152
+ a_.f64[0] = simde_math_modf(b_.f64[0], &integral);
2153
+ #else
2154
+ a_.f64[0] = (b_.f64[0] / 1.0f);
2155
+ #endif
2156
+
2157
+ return simde__m128d_from_private(a_);
2158
+ #endif
2159
+ }
2160
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2161
+ #define _mm_frcz_sd(a, b) simde_mm_frcz_sd((a), (b))
2162
+ #endif
2163
+
2164
+ SIMDE_FUNCTION_ATTRIBUTES
2165
+ simde__m256
2166
+ simde_mm256_frcz_ps (simde__m256 a) {
2167
+ #if defined(SIMDE_X86_XOP_NATIVE)
2168
+ return _mm256_frcz_ps(a);
2169
+ #else
2170
+ simde__m256_private
2171
+ r_,
2172
+ a_ = simde__m256_to_private(a);
2173
+
2174
+ #if SIMDE_NATURAL_VECTOR_SIZE_LE(128)
2175
+ for (size_t i = 0 ; i < (sizeof(r_.m128) / sizeof(r_.m128[0])) ; i++) {
2176
+ r_.m128[i] = simde_mm_frcz_ps(a_.m128[i]);
2177
+ }
2178
+ #else
2179
+ SIMDE_VECTORIZE
2180
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
2181
+ #if defined(simde_math_modff)
2182
+ simde_float32 integral;
2183
+ r_.f32[i] = simde_math_modff(a_.f32[i], &integral);
2184
+ #else
2185
+ r_.f32[i] = (a_.f32[i] / 1.0f);
2186
+ #endif
2187
+ }
2188
+ #endif
2189
+
2190
+ return simde__m256_from_private(r_);
2191
+ #endif
2192
+ }
2193
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2194
+ #define _mm256_frcz_ps(a) simde_mm256_frcz_ps((a))
2195
+ #endif
2196
+
2197
+ SIMDE_FUNCTION_ATTRIBUTES
2198
+ simde__m256d
2199
+ simde_mm256_frcz_pd (simde__m256d a) {
2200
+ #if defined(SIMDE_X86_XOP_NATIVE)
2201
+ return _mm256_frcz_pd(a);
2202
+ #else
2203
+ simde__m256d_private
2204
+ r_,
2205
+ a_ = simde__m256d_to_private(a);
2206
+
2207
+ #if SIMDE_NATURAL_VECTOR_SIZE_LE(128)
2208
+ for (size_t i = 0 ; i < (sizeof(r_.m128d) / sizeof(r_.m128d[0])) ; i++) {
2209
+ r_.m128d[i] = simde_mm_frcz_pd(a_.m128d[i]);
2210
+ }
2211
+ #else
2212
+ SIMDE_VECTORIZE
2213
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
2214
+ #if defined(simde_math_modf)
2215
+ simde_float64 integral;
2216
+ r_.f64[i] = simde_math_modf(a_.f64[i], &integral);
2217
+ #else
2218
+ r_.f64[i] = (a_.f64[i] / 1.0f);
2219
+ #endif
2220
+ }
2221
+ #endif
2222
+
2223
+ return simde__m256d_from_private(r_);
2224
+ #endif
2225
+ }
2226
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2227
+ #define _mm256_frcz_ps(a) simde_mm256_frcz_ps((a))
2228
+ #endif
2229
+
2230
+ SIMDE_FUNCTION_ATTRIBUTES
2231
+ simde__m128i
2232
+ simde_mm_haddw_epi8 (simde__m128i a) {
2233
+ #if defined(SIMDE_X86_XOP_NATIVE)
2234
+ return _mm_haddw_epi8(a);
2235
+ #else
2236
+ simde__m128i_private
2237
+ r_,
2238
+ a_ = simde__m128i_to_private(a);
2239
+
2240
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2241
+ r_.neon_i16 = vpaddlq_s8(a_.neon_i8);
2242
+ #else
2243
+ SIMDE_VECTORIZE
2244
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
2245
+ r_.i16[i] = HEDLEY_STATIC_CAST(int16_t, a_.i8[i * 2]) + HEDLEY_STATIC_CAST(int16_t, a_.i8[(i * 2) + 1]);
2246
+ }
2247
+ #endif
2248
+
2249
+ return simde__m128i_from_private(r_);
2250
+ #endif
2251
+ }
2252
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2253
+ #define _mm_haddw_epi8(a) simde_mm_haddw_epi8((a))
2254
+ #endif
2255
+
2256
+ SIMDE_FUNCTION_ATTRIBUTES
2257
+ simde__m128i
2258
+ simde_mm_haddw_epu8 (simde__m128i a) {
2259
+ #if defined(SIMDE_X86_XOP_NATIVE)
2260
+ return _mm_haddw_epu8(a);
2261
+ #else
2262
+ simde__m128i_private
2263
+ r_,
2264
+ a_ = simde__m128i_to_private(a);
2265
+
2266
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2267
+ r_.neon_u16 = vpaddlq_u8(a_.neon_u8);
2268
+ #else
2269
+ SIMDE_VECTORIZE
2270
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
2271
+ r_.u16[i] = HEDLEY_STATIC_CAST(uint16_t, a_.u8[i * 2]) + HEDLEY_STATIC_CAST(uint16_t, a_.u8[(i * 2) + 1]);
2272
+ }
2273
+ #endif
2274
+
2275
+ return simde__m128i_from_private(r_);
2276
+ #endif
2277
+ }
2278
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2279
+ #define _mm_haddw_epu8(a) simde_mm_haddw_epu8((a))
2280
+ #endif
2281
+
2282
+ SIMDE_FUNCTION_ATTRIBUTES
2283
+ simde__m128i
2284
+ simde_mm_haddd_epi8 (simde__m128i a) {
2285
+ #if defined(SIMDE_X86_XOP_NATIVE)
2286
+ return _mm_haddd_epi8(a);
2287
+ #else
2288
+ simde__m128i_private
2289
+ r_,
2290
+ a_ = simde__m128i_to_private(a);
2291
+
2292
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2293
+ r_.neon_i32 = vpaddlq_s16(vpaddlq_s8(a_.neon_i8));
2294
+ #else
2295
+ SIMDE_VECTORIZE
2296
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2297
+ r_.i32[i] =
2298
+ HEDLEY_STATIC_CAST(int32_t, a_.i8[(i * 4) ]) + HEDLEY_STATIC_CAST(int32_t, a_.i8[(i * 4) + 1]) +
2299
+ HEDLEY_STATIC_CAST(int32_t, a_.i8[(i * 4) + 2]) + HEDLEY_STATIC_CAST(int32_t, a_.i8[(i * 4) + 3]);
2300
+ }
2301
+ #endif
2302
+
2303
+ return simde__m128i_from_private(r_);
2304
+ #endif
2305
+ }
2306
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2307
+ #define _mm_haddd_epi8(a) simde_mm_haddd_epi8((a))
2308
+ #endif
2309
+
2310
+ SIMDE_FUNCTION_ATTRIBUTES
2311
+ simde__m128i
2312
+ simde_mm_haddd_epi16 (simde__m128i a) {
2313
+ #if defined(SIMDE_X86_XOP_NATIVE)
2314
+ return _mm_haddd_epi16(a);
2315
+ #else
2316
+ simde__m128i_private
2317
+ r_,
2318
+ a_ = simde__m128i_to_private(a);
2319
+
2320
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2321
+ r_.neon_i32 = vpaddlq_s16(a_.neon_i16);
2322
+ #else
2323
+ SIMDE_VECTORIZE
2324
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2325
+ r_.i32[i] =
2326
+ HEDLEY_STATIC_CAST(int32_t, a_.i16[(i * 2) ]) + HEDLEY_STATIC_CAST(int32_t, a_.i16[(i * 2) + 1]);
2327
+ }
2328
+ #endif
2329
+
2330
+ return simde__m128i_from_private(r_);
2331
+ #endif
2332
+ }
2333
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2334
+ #define _mm_haddd_epi8(a) simde_mm_haddd_epi8((a))
2335
+ #endif
2336
+
2337
+ SIMDE_FUNCTION_ATTRIBUTES
2338
+ simde__m128i
2339
+ simde_mm_haddd_epu8 (simde__m128i a) {
2340
+ #if defined(SIMDE_X86_XOP_NATIVE)
2341
+ return _mm_haddd_epu8(a);
2342
+ #else
2343
+ simde__m128i_private
2344
+ r_,
2345
+ a_ = simde__m128i_to_private(a);
2346
+
2347
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2348
+ r_.neon_u32 = vpaddlq_u16(vpaddlq_u8(a_.neon_u8));
2349
+ #else
2350
+ SIMDE_VECTORIZE
2351
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
2352
+ r_.u32[i] =
2353
+ HEDLEY_STATIC_CAST(uint32_t, a_.u8[(i * 4) ]) + HEDLEY_STATIC_CAST(uint32_t, a_.u8[(i * 4) + 1]) +
2354
+ HEDLEY_STATIC_CAST(uint32_t, a_.u8[(i * 4) + 2]) + HEDLEY_STATIC_CAST(uint32_t, a_.u8[(i * 4) + 3]);
2355
+ }
2356
+ #endif
2357
+
2358
+ return simde__m128i_from_private(r_);
2359
+ #endif
2360
+ }
2361
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2362
+ #define _mm_haddd_epu8(a) simde_mm_haddd_epu8((a))
2363
+ #endif
2364
+
2365
+ SIMDE_FUNCTION_ATTRIBUTES
2366
+ simde__m128i
2367
+ simde_mm_haddd_epu16 (simde__m128i a) {
2368
+ #if defined(SIMDE_X86_XOP_NATIVE)
2369
+ return _mm_haddd_epu16(a);
2370
+ #else
2371
+ simde__m128i_private
2372
+ r_,
2373
+ a_ = simde__m128i_to_private(a);
2374
+
2375
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2376
+ r_.neon_u32 = vpaddlq_u16(a_.neon_u16);
2377
+ #else
2378
+ SIMDE_VECTORIZE
2379
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
2380
+ r_.u32[i] =
2381
+ HEDLEY_STATIC_CAST(uint32_t, a_.u16[(i * 2) ]) + HEDLEY_STATIC_CAST(uint32_t, a_.u16[(i * 2) + 1]);
2382
+ }
2383
+ #endif
2384
+
2385
+ return simde__m128i_from_private(r_);
2386
+ #endif
2387
+ }
2388
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2389
+ #define _mm_haddd_epu8(a) simde_mm_haddd_epu8((a))
2390
+ #endif
2391
+
2392
+ SIMDE_FUNCTION_ATTRIBUTES
2393
+ simde__m128i
2394
+ simde_mm_haddq_epi8 (simde__m128i a) {
2395
+ #if defined(SIMDE_X86_XOP_NATIVE)
2396
+ return _mm_haddq_epi8(a);
2397
+ #else
2398
+ simde__m128i_private
2399
+ r_,
2400
+ a_ = simde__m128i_to_private(a);
2401
+
2402
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2403
+ r_.neon_i64 = vpaddlq_s32(vpaddlq_s16(vpaddlq_s8(a_.neon_i8)));
2404
+ #else
2405
+ SIMDE_VECTORIZE
2406
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2407
+ r_.i64[i] =
2408
+ HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) ]) + HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) + 1]) +
2409
+ HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) + 2]) + HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) + 3]) +
2410
+ HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) + 4]) + HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) + 5]) +
2411
+ HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) + 6]) + HEDLEY_STATIC_CAST(int64_t, a_.i8[(i * 8) + 7]);
2412
+ }
2413
+ #endif
2414
+
2415
+ return simde__m128i_from_private(r_);
2416
+ #endif
2417
+ }
2418
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2419
+ #define _mm_haddq_epi8(a) simde_mm_haddq_epi8((a))
2420
+ #endif
2421
+
2422
+ SIMDE_FUNCTION_ATTRIBUTES
2423
+ simde__m128i
2424
+ simde_mm_haddq_epi16 (simde__m128i a) {
2425
+ #if defined(SIMDE_X86_XOP_NATIVE)
2426
+ return _mm_haddq_epi16(a);
2427
+ #else
2428
+ simde__m128i_private
2429
+ r_,
2430
+ a_ = simde__m128i_to_private(a);
2431
+
2432
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2433
+ r_.neon_i64 = vpaddlq_s32(vpaddlq_s16(a_.neon_i16));
2434
+ #else
2435
+ SIMDE_VECTORIZE
2436
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2437
+ r_.i64[i] =
2438
+ HEDLEY_STATIC_CAST(int64_t, a_.i16[(i * 4) ]) + HEDLEY_STATIC_CAST(int64_t, a_.i16[(i * 4) + 1]) +
2439
+ HEDLEY_STATIC_CAST(int64_t, a_.i16[(i * 4) + 2]) + HEDLEY_STATIC_CAST(int64_t, a_.i16[(i * 4) + 3]);
2440
+ }
2441
+ #endif
2442
+
2443
+ return simde__m128i_from_private(r_);
2444
+ #endif
2445
+ }
2446
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2447
+ #define _mm_haddq_epi16(a) simde_mm_haddq_epi16((a))
2448
+ #endif
2449
+
2450
+ SIMDE_FUNCTION_ATTRIBUTES
2451
+ simde__m128i
2452
+ simde_mm_haddq_epi32 (simde__m128i a) {
2453
+ #if defined(SIMDE_X86_XOP_NATIVE)
2454
+ return _mm_haddq_epi32(a);
2455
+ #else
2456
+ simde__m128i_private
2457
+ r_,
2458
+ a_ = simde__m128i_to_private(a);
2459
+
2460
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2461
+ r_.neon_i64 = vpaddlq_s32(a_.neon_i32);
2462
+ #else
2463
+ SIMDE_VECTORIZE
2464
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2465
+ r_.i64[i] = HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) ]) + HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) + 1]);
2466
+ }
2467
+ #endif
2468
+
2469
+ return simde__m128i_from_private(r_);
2470
+ #endif
2471
+ }
2472
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2473
+ #define _mm_haddq_epi32(a) simde_mm_haddq_epi32((a))
2474
+ #endif
2475
+
2476
+ SIMDE_FUNCTION_ATTRIBUTES
2477
+ simde__m128i
2478
+ simde_mm_haddq_epu8 (simde__m128i a) {
2479
+ #if defined(SIMDE_X86_XOP_NATIVE)
2480
+ return _mm_haddq_epu8(a);
2481
+ #else
2482
+ simde__m128i_private
2483
+ r_,
2484
+ a_ = simde__m128i_to_private(a);
2485
+
2486
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2487
+ r_.neon_u64 = vpaddlq_u32(vpaddlq_u16(vpaddlq_u8(a_.neon_u8)));
2488
+ #else
2489
+ SIMDE_VECTORIZE
2490
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2491
+ r_.u64[i] =
2492
+ HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) ]) + HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) + 1]) +
2493
+ HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) + 2]) + HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) + 3]) +
2494
+ HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) + 4]) + HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) + 5]) +
2495
+ HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) + 6]) + HEDLEY_STATIC_CAST(uint64_t, a_.u8[(i * 8) + 7]);
2496
+ }
2497
+ #endif
2498
+
2499
+ return simde__m128i_from_private(r_);
2500
+ #endif
2501
+ }
2502
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2503
+ #define _mm_haddq_epu8(a) simde_mm_haddq_epu8((a))
2504
+ #endif
2505
+
2506
+ SIMDE_FUNCTION_ATTRIBUTES
2507
+ simde__m128i
2508
+ simde_mm_haddq_epu16 (simde__m128i a) {
2509
+ #if defined(SIMDE_X86_XOP_NATIVE)
2510
+ return _mm_haddq_epu16(a);
2511
+ #else
2512
+ simde__m128i_private
2513
+ r_,
2514
+ a_ = simde__m128i_to_private(a);
2515
+
2516
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2517
+ r_.neon_u64 = vpaddlq_u32(vpaddlq_u16(a_.neon_u16));
2518
+ #else
2519
+ SIMDE_VECTORIZE
2520
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2521
+ r_.u64[i] =
2522
+ HEDLEY_STATIC_CAST(uint64_t, a_.u16[(i * 4) ]) + HEDLEY_STATIC_CAST(uint64_t, a_.u16[(i * 4) + 1]) +
2523
+ HEDLEY_STATIC_CAST(uint64_t, a_.u16[(i * 4) + 2]) + HEDLEY_STATIC_CAST(uint64_t, a_.u16[(i * 4) + 3]);
2524
+ }
2525
+ #endif
2526
+
2527
+ return simde__m128i_from_private(r_);
2528
+ #endif
2529
+ }
2530
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2531
+ #define _mm_haddq_epu16(a) simde_mm_haddq_epu16((a))
2532
+ #endif
2533
+
2534
+ SIMDE_FUNCTION_ATTRIBUTES
2535
+ simde__m128i
2536
+ simde_mm_haddq_epu32 (simde__m128i a) {
2537
+ #if defined(SIMDE_X86_XOP_NATIVE)
2538
+ return _mm_haddq_epu32(a);
2539
+ #else
2540
+ simde__m128i_private
2541
+ r_,
2542
+ a_ = simde__m128i_to_private(a);
2543
+
2544
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2545
+ r_.neon_u64 = vpaddlq_u32(a_.neon_u32);
2546
+ #else
2547
+ SIMDE_VECTORIZE
2548
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2549
+ r_.u64[i] = HEDLEY_STATIC_CAST(uint64_t, a_.u32[(i * 2) ]) + HEDLEY_STATIC_CAST(uint64_t, a_.u32[(i * 2) + 1]);
2550
+ }
2551
+ #endif
2552
+
2553
+ return simde__m128i_from_private(r_);
2554
+ #endif
2555
+ }
2556
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2557
+ #define _mm_haddq_epu32(a) simde_mm_haddq_epu32((a))
2558
+ #endif
2559
+
2560
+ SIMDE_FUNCTION_ATTRIBUTES
2561
+ simde__m128i
2562
+ simde_mm_hsubw_epi8 (simde__m128i a) {
2563
+ #if defined(SIMDE_X86_XOP_NATIVE)
2564
+ return _mm_hsubw_epi8(a);
2565
+ #else
2566
+ simde__m128i_private
2567
+ r_,
2568
+ a_ = simde__m128i_to_private(a);
2569
+
2570
+ SIMDE_VECTORIZE
2571
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
2572
+ r_.i16[i] = HEDLEY_STATIC_CAST(int16_t, a_.i8[i * 2]) - HEDLEY_STATIC_CAST(int16_t, a_.i8[(i * 2) + 1]);
2573
+ }
2574
+
2575
+ return simde__m128i_from_private(r_);
2576
+ #endif
2577
+ }
2578
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2579
+ #define _mm_hsubw_epi8(a) simde_mm_hsubw_epi8((a))
2580
+ #endif
2581
+
2582
+ SIMDE_FUNCTION_ATTRIBUTES
2583
+ simde__m128i
2584
+ simde_mm_hsubd_epi16 (simde__m128i a) {
2585
+ #if defined(SIMDE_X86_XOP_NATIVE)
2586
+ return _mm_hsubd_epi16(a);
2587
+ #else
2588
+ simde__m128i_private
2589
+ r_,
2590
+ a_ = simde__m128i_to_private(a);
2591
+
2592
+ SIMDE_VECTORIZE
2593
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2594
+ r_.i32[i] =
2595
+ HEDLEY_STATIC_CAST(int32_t, a_.i16[(i * 2) ]) - HEDLEY_STATIC_CAST(int32_t, a_.i16[(i * 2) + 1]);
2596
+ }
2597
+
2598
+ return simde__m128i_from_private(r_);
2599
+ #endif
2600
+ }
2601
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2602
+ #define _mm_hsubd_epi8(a) simde_mm_hsubd_epi8((a))
2603
+ #endif
2604
+
2605
+ SIMDE_FUNCTION_ATTRIBUTES
2606
+ simde__m128i
2607
+ simde_mm_hsubq_epi32 (simde__m128i a) {
2608
+ #if defined(SIMDE_X86_XOP_NATIVE)
2609
+ return _mm_hsubq_epi32(a);
2610
+ #else
2611
+ simde__m128i_private
2612
+ r_,
2613
+ a_ = simde__m128i_to_private(a);
2614
+
2615
+ SIMDE_VECTORIZE
2616
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2617
+ r_.i64[i] = HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) ]) - HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) + 1]);
2618
+ }
2619
+
2620
+ return simde__m128i_from_private(r_);
2621
+ #endif
2622
+ }
2623
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2624
+ #define _mm_hsubq_epi32(a) simde_mm_hsubq_epi32((a))
2625
+ #endif
2626
+
2627
+ SIMDE_FUNCTION_ATTRIBUTES
2628
+ simde__m128i
2629
+ simde_mm_macc_epi16 (simde__m128i a, simde__m128i b, simde__m128i c) {
2630
+ #if defined(SIMDE_X86_XOP_NATIVE)
2631
+ return _mm_macc_epi16(a, b, c);
2632
+ #else
2633
+ simde__m128i_private
2634
+ r_,
2635
+ a_ = simde__m128i_to_private(a),
2636
+ b_ = simde__m128i_to_private(b),
2637
+ c_ = simde__m128i_to_private(c);
2638
+
2639
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2640
+ r_.neon_i16 = vmlaq_s16(c_.neon_i16, a_.neon_i16, b_.neon_i16);
2641
+ #else
2642
+ SIMDE_VECTORIZE
2643
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
2644
+ r_.i16[i] = (a_.i16[i] * b_.i16[i]) + c_.i16[i];
2645
+ }
2646
+ #endif
2647
+
2648
+ return simde__m128i_from_private(r_);
2649
+ #endif
2650
+ }
2651
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2652
+ #define _mm_macc_epi16(a, b, c) simde_mm_macc_epi16((a), (b), (c))
2653
+ #endif
2654
+
2655
+ SIMDE_FUNCTION_ATTRIBUTES
2656
+ simde__m128i
2657
+ simde_mm_macc_epi32 (simde__m128i a, simde__m128i b, simde__m128i c) {
2658
+ #if defined(SIMDE_X86_XOP_NATIVE)
2659
+ return _mm_macc_epi32(a, b, c);
2660
+ #else
2661
+ simde__m128i_private
2662
+ r_,
2663
+ a_ = simde__m128i_to_private(a),
2664
+ b_ = simde__m128i_to_private(b),
2665
+ c_ = simde__m128i_to_private(c);
2666
+
2667
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2668
+ r_.neon_i32 = vmlaq_s32(c_.neon_i32, a_.neon_i32, b_.neon_i32);
2669
+ #else
2670
+ SIMDE_VECTORIZE
2671
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2672
+ r_.i32[i] = (a_.i32[i] * b_.i32[i]) + c_.i32[i];
2673
+ }
2674
+ #endif
2675
+
2676
+ return simde__m128i_from_private(r_);
2677
+ #endif
2678
+ }
2679
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2680
+ #define _mm_macc_epi32(a, b, c) simde_mm_macc_epi32((a), (b), (c))
2681
+ #endif
2682
+
2683
+ SIMDE_FUNCTION_ATTRIBUTES
2684
+ simde__m128i
2685
+ simde_mm_maccd_epi16 (simde__m128i a, simde__m128i b, simde__m128i c) {
2686
+ #if defined(SIMDE_X86_XOP_NATIVE)
2687
+ return _mm_maccd_epi16(a, b, c);
2688
+ #else
2689
+ simde__m128i_private
2690
+ r_,
2691
+ a_ = simde__m128i_to_private(a),
2692
+ b_ = simde__m128i_to_private(b),
2693
+ c_ = simde__m128i_to_private(c);
2694
+
2695
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
2696
+ int16x8_t even = vuzp1q_s16(a_.neon_i16, b_.neon_i16);
2697
+ int32x4_t a_even = vmovl_s16(vget_low_s16(even));
2698
+ int32x4_t b_even = vmovl_high_s16(even);
2699
+ r_.neon_i32 = vmlaq_s32(c_.neon_i32, a_even, b_even);
2700
+ #else
2701
+ SIMDE_VECTORIZE
2702
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2703
+ r_.i32[i] = (HEDLEY_STATIC_CAST(int32_t, a_.i16[i * 2]) * HEDLEY_STATIC_CAST(int32_t, b_.i16[i * 2])) + c_.i32[i];
2704
+ }
2705
+ #endif
2706
+
2707
+ return simde__m128i_from_private(r_);
2708
+ #endif
2709
+ }
2710
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2711
+ #define _mm_maccd_epi16(a, b, c) simde_mm_maccd_epi16((a), (b), (c))
2712
+ #endif
2713
+
2714
+ SIMDE_FUNCTION_ATTRIBUTES
2715
+ simde__m128i
2716
+ simde_mm_macclo_epi32 (simde__m128i a, simde__m128i b, simde__m128i c) {
2717
+ #if defined(SIMDE_X86_XOP_NATIVE)
2718
+ return _mm_macclo_epi32(a, b, c);
2719
+ #else
2720
+ simde__m128i_private
2721
+ r_,
2722
+ a_ = simde__m128i_to_private(a),
2723
+ b_ = simde__m128i_to_private(b),
2724
+ c_ = simde__m128i_to_private(c);
2725
+
2726
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
2727
+ int32x4_t even = vuzp1q_s32(a_.neon_i32, b_.neon_i32);
2728
+ r_.neon_i64 = vaddq_s64(vmull_s32(vget_low_s32(even), vget_high_s32(even)), c_.neon_i64);
2729
+ #else
2730
+ SIMDE_VECTORIZE
2731
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2732
+ r_.i64[i] = (HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) + 0]) * HEDLEY_STATIC_CAST(int64_t, b_.i32[(i * 2) + 0])) + c_.i64[i];
2733
+ }
2734
+ #endif
2735
+
2736
+ return simde__m128i_from_private(r_);
2737
+ #endif
2738
+ }
2739
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2740
+ #define _mm_macclo_epi16(a, b, c) simde_mm_macclo_epi16((a), (b), (c))
2741
+ #endif
2742
+
2743
+ SIMDE_FUNCTION_ATTRIBUTES
2744
+ simde__m128i
2745
+ simde_mm_macchi_epi32 (simde__m128i a, simde__m128i b, simde__m128i c) {
2746
+ #if defined(SIMDE_X86_XOP_NATIVE)
2747
+ return _mm_macchi_epi32(a, b, c);
2748
+ #else
2749
+ simde__m128i_private
2750
+ r_,
2751
+ a_ = simde__m128i_to_private(a),
2752
+ b_ = simde__m128i_to_private(b),
2753
+ c_ = simde__m128i_to_private(c);
2754
+
2755
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
2756
+ int32x4_t even = vuzp2q_s32(a_.neon_i32, b_.neon_i32);
2757
+ r_.neon_i64 = vaddq_s64(vmull_s32(vget_low_s32(even), vget_high_s32(even)), c_.neon_i64);
2758
+ #else
2759
+ SIMDE_VECTORIZE
2760
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2761
+ r_.i64[i] = (HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) + 1]) * HEDLEY_STATIC_CAST(int64_t, b_.i32[(i * 2) + 1])) + c_.i64[i];
2762
+ }
2763
+ #endif
2764
+
2765
+ return simde__m128i_from_private(r_);
2766
+ #endif
2767
+ }
2768
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2769
+ #define _mm_macchi_epi16(a, b, c) simde_mm_macchi_epi16((a), (b), (c))
2770
+ #endif
2771
+
2772
+ SIMDE_FUNCTION_ATTRIBUTES
2773
+ simde__m128i
2774
+ simde_mm_maccs_epi16 (simde__m128i a, simde__m128i b, simde__m128i c) {
2775
+ #if defined(SIMDE_X86_XOP_NATIVE)
2776
+ return _mm_maccs_epi16(a, b, c);
2777
+ #else
2778
+ simde__m128i_private
2779
+ r_,
2780
+ a_ = simde__m128i_to_private(a),
2781
+ b_ = simde__m128i_to_private(b),
2782
+ c_ = simde__m128i_to_private(c);
2783
+
2784
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
2785
+ int32x4_t c_lo = vmovl_s16(vget_low_s16(c_.i16));
2786
+ int32x4_t c_hi = vmovl_high_s16(c_.i16);
2787
+ int32x4_t lo = vmlal_s16(c_lo, vget_low_s16(a_.neon_i16), vget_low_s16(b_.neon_i16));
2788
+ int32x4_t hi = vmlal_high_s16(c_hi, a_.neon_i16, b_.neon_i16);
2789
+ r_.neon_i16 = vcombine_s16(vqmovn_s32(lo), vqmovn_s32(hi));
2790
+ #else
2791
+ SIMDE_VECTORIZE
2792
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
2793
+ int32_t tmp = HEDLEY_STATIC_CAST(int32_t, a_.i16[i]) * HEDLEY_STATIC_CAST(int32_t, b_.i16[i]);
2794
+ tmp += c_.i16[i];
2795
+ if (tmp > INT16_MAX)
2796
+ r_.i16[i] = INT16_MAX;
2797
+ else if (tmp < INT16_MIN)
2798
+ r_.i16[i] = INT16_MIN;
2799
+ else
2800
+ r_.i16[i] = HEDLEY_STATIC_CAST(int16_t, tmp);
2801
+ }
2802
+ #endif
2803
+
2804
+ return simde__m128i_from_private(r_);
2805
+ #endif
2806
+ }
2807
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2808
+ #define _mm_maccs_epi16(a, b, c) simde_mm_maccs_epi16((a), (b), (c))
2809
+ #endif
2810
+
2811
+ SIMDE_FUNCTION_ATTRIBUTES
2812
+ simde__m128i
2813
+ simde_mm_maccs_epi32 (simde__m128i a, simde__m128i b, simde__m128i c) {
2814
+ #if defined(SIMDE_X86_XOP_NATIVE)
2815
+ return _mm_maccs_epi32(a, b, c);
2816
+ #else
2817
+ simde__m128i_private
2818
+ r_,
2819
+ a_ = simde__m128i_to_private(a),
2820
+ b_ = simde__m128i_to_private(b),
2821
+ c_ = simde__m128i_to_private(c);
2822
+
2823
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
2824
+ int64x2_t c_lo = vmovl_s32(vget_low_s32(c_.i32));
2825
+ int64x2_t c_hi = vmovl_high_s32(c_.i32);
2826
+ int64x2_t lo = vmlal_s32(c_lo, vget_low_s32(a_.neon_i32), vget_low_s32(b_.neon_i32));
2827
+ int64x2_t hi = vmlal_high_s32(c_hi, a_.neon_i32, b_.neon_i32);
2828
+ r_.neon_i32 = vcombine_s32(vqmovn_s64(lo), vqmovn_s64(hi));
2829
+ #else
2830
+ SIMDE_VECTORIZE
2831
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2832
+ int64_t tmp = HEDLEY_STATIC_CAST(int64_t, a_.i32[i]) * HEDLEY_STATIC_CAST(int64_t, b_.i32[i]);
2833
+ tmp += HEDLEY_STATIC_CAST(int64_t, c_.i32[i]);
2834
+ if (tmp > INT32_MAX)
2835
+ r_.i32[i] = INT32_MAX;
2836
+ else if (tmp < INT32_MIN)
2837
+ r_.i32[i] = INT32_MIN;
2838
+ else
2839
+ r_.i32[i] = HEDLEY_STATIC_CAST(int32_t, tmp);
2840
+ }
2841
+ #endif
2842
+
2843
+ return simde__m128i_from_private(r_);
2844
+ #endif
2845
+ }
2846
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2847
+ #define _mm_maccs_epi32(a, b, c) simde_mm_maccs_epi32((a), (b), (c))
2848
+ #endif
2849
+
2850
+ SIMDE_FUNCTION_ATTRIBUTES
2851
+ simde__m128i
2852
+ simde_mm_maccsd_epi16 (simde__m128i a, simde__m128i b, simde__m128i c) {
2853
+ #if defined(SIMDE_X86_XOP_NATIVE)
2854
+ return _mm_maccsd_epi16(a, b, c);
2855
+ #else
2856
+ simde__m128i_private
2857
+ r_,
2858
+ a_ = simde__m128i_to_private(a),
2859
+ b_ = simde__m128i_to_private(b),
2860
+ c_ = simde__m128i_to_private(c);
2861
+
2862
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
2863
+ int16x8_t even = vuzp1q_s16(a_.neon_i16, b_.neon_i16);
2864
+ r_.neon_i32 = vqaddq_s32(vmull_s16(vget_low_s16(even), vget_high_s16(even)), c_.neon_i32);
2865
+ #else
2866
+ SIMDE_VECTORIZE
2867
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2868
+ int32_t prod = HEDLEY_STATIC_CAST(int32_t, a_.i16[i * 2]) * HEDLEY_STATIC_CAST(int32_t, b_.i16[i * 2]);
2869
+ r_.i32[i] = simde_math_adds_i32(prod, c_.i32[i]);
2870
+ }
2871
+ #endif
2872
+
2873
+ return simde__m128i_from_private(r_);
2874
+ #endif
2875
+ }
2876
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2877
+ #define _mm_maccsd_epi16(a, b, c) simde_mm_maccsd_epi16((a), (b), (c))
2878
+ #endif
2879
+
2880
+ SIMDE_FUNCTION_ATTRIBUTES
2881
+ simde__m128i
2882
+ simde_mm_maccslo_epi32 (simde__m128i a, simde__m128i b, simde__m128i c) {
2883
+ #if defined(SIMDE_X86_XOP_NATIVE)
2884
+ return _mm_maccslo_epi32(a, b, c);
2885
+ #else
2886
+ simde__m128i_private
2887
+ r_,
2888
+ a_ = simde__m128i_to_private(a),
2889
+ b_ = simde__m128i_to_private(b),
2890
+ c_ = simde__m128i_to_private(c);
2891
+
2892
+ SIMDE_VECTORIZE
2893
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2894
+ int64_t tmp = HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) + 0]) * HEDLEY_STATIC_CAST(int64_t, b_.i32[(i * 2) + 0]);
2895
+ r_.i64[i] = simde_math_adds_i64(tmp, c_.i64[i]);
2896
+ }
2897
+
2898
+ return simde__m128i_from_private(r_);
2899
+ #endif
2900
+ }
2901
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2902
+ #define _mm_maccslo_epi16(a, b, c) simde_mm_maccslo_epi16((a), (b), (c))
2903
+ #endif
2904
+
2905
+ SIMDE_FUNCTION_ATTRIBUTES
2906
+ simde__m128i
2907
+ simde_mm_maccshi_epi32 (simde__m128i a, simde__m128i b, simde__m128i c) {
2908
+ #if defined(SIMDE_X86_XOP_NATIVE)
2909
+ return _mm_maccshi_epi32(a, b, c);
2910
+ #else
2911
+ simde__m128i_private
2912
+ r_,
2913
+ a_ = simde__m128i_to_private(a),
2914
+ b_ = simde__m128i_to_private(b),
2915
+ c_ = simde__m128i_to_private(c);
2916
+
2917
+ SIMDE_VECTORIZE
2918
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
2919
+ int64_t tmp = HEDLEY_STATIC_CAST(int64_t, a_.i32[(i * 2) + 1]) * HEDLEY_STATIC_CAST(int64_t, b_.i32[(i * 2) + 1]);
2920
+ r_.i64[i] = simde_math_adds_i64(tmp, c_.i64[i]);
2921
+ }
2922
+
2923
+ return simde__m128i_from_private(r_);
2924
+ #endif
2925
+ }
2926
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2927
+ #define _mm_maccshi_epi16(a, b, c) simde_mm_maccshi_epi16((a), (b), (c))
2928
+ #endif
2929
+
2930
+ SIMDE_FUNCTION_ATTRIBUTES
2931
+ simde__m128i
2932
+ simde_mm_maddd_epi16 (simde__m128i a, simde__m128i b, simde__m128i c) {
2933
+ #if defined(SIMDE_X86_XOP_NATIVE)
2934
+ return _mm_maddd_epi16(a, b, c);
2935
+ #else
2936
+ simde__m128i_private
2937
+ r_,
2938
+ a_ = simde__m128i_to_private(a),
2939
+ b_ = simde__m128i_to_private(b),
2940
+ c_ = simde__m128i_to_private(c);
2941
+
2942
+ SIMDE_VECTORIZE
2943
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2944
+ r_.i32[i] =
2945
+ (a_.i16[(i * 2) + 0] * b_.i16[(i * 2) + 0]) +
2946
+ (a_.i16[(i * 2) + 1] * b_.i16[(i * 2) + 1]);
2947
+ r_.i32[i] += c_.i32[i];
2948
+ }
2949
+
2950
+ return simde__m128i_from_private(r_);
2951
+ #endif
2952
+ }
2953
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2954
+ #define _mm_maddd_epi16(a, b, c) simde_mm_maddd_epi16((a), (b), (c))
2955
+ #endif
2956
+
2957
+ SIMDE_FUNCTION_ATTRIBUTES
2958
+ simde__m128i
2959
+ simde_mm_maddsd_epi16 (simde__m128i a, simde__m128i b, simde__m128i c) {
2960
+ #if defined(SIMDE_X86_XOP_NATIVE)
2961
+ return _mm_maddsd_epi16(a, b, c);
2962
+ #else
2963
+ simde__m128i_private
2964
+ r_,
2965
+ a_ = simde__m128i_to_private(a),
2966
+ b_ = simde__m128i_to_private(b),
2967
+ c_ = simde__m128i_to_private(c);
2968
+
2969
+ SIMDE_VECTORIZE
2970
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
2971
+ /* The AMD64 Architecture Programmer's Manual says that "the"
2972
+ * addition is saturated; I'm not sure whether that means
2973
+ * the pairwise addition or the accumulate, or both. */
2974
+ r_.i32[i] =
2975
+ (a_.i16[(i * 2) + 0] * b_.i16[(i * 2) + 0]) +
2976
+ (a_.i16[(i * 2) + 1] * b_.i16[(i * 2) + 1]);
2977
+ r_.i32[i] = simde_math_adds_i32(r_.i32[i], c_.i32[i]);
2978
+ }
2979
+
2980
+ return simde__m128i_from_private(r_);
2981
+ #endif
2982
+ }
2983
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
2984
+ #define _mm_maddsd_epi16(a, b, c) simde_mm_maddsd_epi16((a), (b), (c))
2985
+ #endif
2986
+
2987
+ SIMDE_FUNCTION_ATTRIBUTES
2988
+ simde__m128i
2989
+ simde_mm_sha_epi8 (simde__m128i a, simde__m128i b) {
2990
+ #if defined(SIMDE_X86_XOP_NATIVE)
2991
+ return _mm_sha_epi8(a, b);
2992
+ #else
2993
+ simde__m128i_private
2994
+ r_,
2995
+ a_ = simde__m128i_to_private(a),
2996
+ b_ = simde__m128i_to_private(b);
2997
+
2998
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2999
+ r_.neon_i8 = vshlq_s8(a_.neon_i8, b_.neon_i8);
3000
+ #else
3001
+ SIMDE_VECTORIZE
3002
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
3003
+ if (b_.i8[i] < 0) {
3004
+ r_.i8[i] = HEDLEY_STATIC_CAST(int8_t, a_.i8[i] >> -b_.i8[i]);
3005
+ } else {
3006
+ r_.i8[i] = HEDLEY_STATIC_CAST(int8_t, a_.i8[i] << b_.i8[i]);
3007
+ }
3008
+ }
3009
+ #endif
3010
+
3011
+ return simde__m128i_from_private(r_);
3012
+ #endif
3013
+ }
3014
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3015
+ #define _mm_sha_epi8(a, b) simde_mm_sha_epi8((a), (b))
3016
+ #endif
3017
+
3018
+ SIMDE_FUNCTION_ATTRIBUTES
3019
+ simde__m128i
3020
+ simde_mm_sha_epi16 (simde__m128i a, simde__m128i b) {
3021
+ #if defined(SIMDE_X86_XOP_NATIVE)
3022
+ return _mm_sha_epi16(a, b);
3023
+ #else
3024
+ simde__m128i_private
3025
+ r_,
3026
+ a_ = simde__m128i_to_private(a),
3027
+ b_ = simde__m128i_to_private(b);
3028
+
3029
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
3030
+ r_.neon_i16 = vshlq_s16(a_.neon_i16, b_.neon_i16);
3031
+ #else
3032
+ SIMDE_VECTORIZE
3033
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
3034
+ if (b_.i16[i] < 0) {
3035
+ r_.i16[i] = HEDLEY_STATIC_CAST(int16_t, a_.i16[i] >> -b_.i16[i]);
3036
+ } else {
3037
+ r_.i16[i] = HEDLEY_STATIC_CAST(int16_t, a_.i16[i] << b_.i16[i]);
3038
+ }
3039
+ }
3040
+ #endif
3041
+
3042
+ return simde__m128i_from_private(r_);
3043
+ #endif
3044
+ }
3045
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3046
+ #define _mm_sha_epi16(a, b) simde_mm_sha_epi16((a), (b))
3047
+ #endif
3048
+
3049
+ SIMDE_FUNCTION_ATTRIBUTES
3050
+ simde__m128i
3051
+ simde_mm_sha_epi32 (simde__m128i a, simde__m128i b) {
3052
+ #if defined(SIMDE_X86_XOP_NATIVE)
3053
+ return _mm_sha_epi32(a, b);
3054
+ #else
3055
+ simde__m128i_private
3056
+ r_,
3057
+ a_ = simde__m128i_to_private(a),
3058
+ b_ = simde__m128i_to_private(b);
3059
+
3060
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
3061
+ r_.neon_i32 = vshlq_s32(a_.neon_i32, b_.neon_i32);
3062
+ #else
3063
+ SIMDE_VECTORIZE
3064
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
3065
+ if (b_.i32[i] < 0) {
3066
+ r_.i32[i] = HEDLEY_STATIC_CAST(int32_t, a_.i32[i] >> -b_.i32[i]);
3067
+ } else {
3068
+ r_.i32[i] = HEDLEY_STATIC_CAST(int32_t, a_.i32[i] << b_.i32[i]);
3069
+ }
3070
+ }
3071
+ #endif
3072
+
3073
+ return simde__m128i_from_private(r_);
3074
+ #endif
3075
+ }
3076
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3077
+ #define _mm_sha_epi32(a, b) simde_mm_sha_epi32((a), (b))
3078
+ #endif
3079
+
3080
+ SIMDE_FUNCTION_ATTRIBUTES
3081
+ simde__m128i
3082
+ simde_mm_sha_epi64 (simde__m128i a, simde__m128i b) {
3083
+ #if defined(SIMDE_X86_XOP_NATIVE)
3084
+ return _mm_sha_epi64(a, b);
3085
+ #else
3086
+ simde__m128i_private
3087
+ r_,
3088
+ a_ = simde__m128i_to_private(a),
3089
+ b_ = simde__m128i_to_private(b);
3090
+
3091
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
3092
+ r_.neon_i64 = vshlq_s64(a_.neon_i64, b_.neon_i64);
3093
+ #else
3094
+ SIMDE_VECTORIZE
3095
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
3096
+ if (b_.i64[i] < 0) {
3097
+ r_.i64[i] = HEDLEY_STATIC_CAST(int64_t, a_.i64[i] >> -b_.i64[i]);
3098
+ } else {
3099
+ r_.i64[i] = HEDLEY_STATIC_CAST(int64_t, a_.i64[i] << b_.i64[i]);
3100
+ }
3101
+ }
3102
+ #endif
3103
+
3104
+ return simde__m128i_from_private(r_);
3105
+ #endif
3106
+ }
3107
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3108
+ #define _mm_sha_epi64(a, b) simde_mm_sha_epi64((a), (b))
3109
+ #endif
3110
+
3111
+ SIMDE_FUNCTION_ATTRIBUTES
3112
+ simde__m128i
3113
+ simde_mm_shl_epi8 (simde__m128i a, simde__m128i b) {
3114
+ #if defined(SIMDE_X86_XOP_NATIVE)
3115
+ return _mm_shl_epi8(a, b);
3116
+ #else
3117
+ simde__m128i_private
3118
+ r_,
3119
+ a_ = simde__m128i_to_private(a),
3120
+ b_ = simde__m128i_to_private(b);
3121
+
3122
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
3123
+ r_.neon_u8 = vshlq_u8(a_.neon_u8, b_.neon_i8);
3124
+ #else
3125
+ SIMDE_VECTORIZE
3126
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
3127
+ if (HEDLEY_UNLIKELY(b_.i8[i] < -7 || b_.i8[i] > 7)) {
3128
+ r_.u8[i] = 0;
3129
+ } else {
3130
+ if (b_.i8[i] < 0) {
3131
+ r_.u8[i] = HEDLEY_STATIC_CAST(uint8_t, a_.u8[i] >> -b_.i8[i]);
3132
+ } else {
3133
+ r_.u8[i] = HEDLEY_STATIC_CAST(uint8_t, a_.u8[i] << b_.i8[i]);
3134
+ }
3135
+ }
3136
+ }
3137
+ #endif
3138
+
3139
+ return simde__m128i_from_private(r_);
3140
+ #endif
3141
+ }
3142
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3143
+ #define _mm_shl_epi8(a, b) simde_mm_shl_epi8((a), (b))
3144
+ #endif
3145
+
3146
+ SIMDE_FUNCTION_ATTRIBUTES
3147
+ simde__m128i
3148
+ simde_mm_shl_epi16 (simde__m128i a, simde__m128i b) {
3149
+ #if defined(SIMDE_X86_XOP_NATIVE)
3150
+ return _mm_shl_epi16(a, b);
3151
+ #else
3152
+ simde__m128i_private
3153
+ r_,
3154
+ a_ = simde__m128i_to_private(a),
3155
+ b_ = simde__m128i_to_private(b);
3156
+
3157
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
3158
+ r_.neon_u16 = vshlq_u16(a_.neon_u16, b_.neon_i16);
3159
+ #else
3160
+ SIMDE_VECTORIZE
3161
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
3162
+ if (HEDLEY_UNLIKELY(b_.i16[i] < -15 || b_.i16[i] > 15)) {
3163
+ r_.u16[i] = 0;
3164
+ } else {
3165
+ if (b_.i16[i] < 0) {
3166
+ r_.u16[i] = HEDLEY_STATIC_CAST(uint16_t, a_.u16[i] >> -b_.i16[i]);
3167
+ } else {
3168
+ r_.u16[i] = HEDLEY_STATIC_CAST(uint16_t, a_.u16[i] << b_.i16[i]);
3169
+ }
3170
+ }
3171
+ }
3172
+ #endif
3173
+
3174
+ return simde__m128i_from_private(r_);
3175
+ #endif
3176
+ }
3177
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3178
+ #define _mm_shl_epi16(a, b) simde_mm_shl_epi16((a), (b))
3179
+ #endif
3180
+
3181
+ SIMDE_FUNCTION_ATTRIBUTES
3182
+ simde__m128i
3183
+ simde_mm_shl_epi32 (simde__m128i a, simde__m128i b) {
3184
+ #if defined(SIMDE_X86_XOP_NATIVE)
3185
+ return _mm_shl_epi32(a, b);
3186
+ #else
3187
+ simde__m128i_private
3188
+ r_,
3189
+ a_ = simde__m128i_to_private(a),
3190
+ b_ = simde__m128i_to_private(b);
3191
+
3192
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
3193
+ r_.neon_u32 = vshlq_u32(a_.neon_u32, b_.neon_i32);
3194
+ #else
3195
+ SIMDE_VECTORIZE
3196
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
3197
+ if (HEDLEY_UNLIKELY(b_.i32[i] < -31 || b_.i32[i] > 31)) {
3198
+ r_.u32[i] = 0;
3199
+ } else {
3200
+ if (b_.i32[i] < 0) {
3201
+ r_.u32[i] = HEDLEY_STATIC_CAST(uint32_t, a_.u32[i] >> -b_.i32[i]);
3202
+ } else {
3203
+ r_.u32[i] = HEDLEY_STATIC_CAST(uint32_t, a_.u32[i] << b_.i32[i]);
3204
+ }
3205
+ }
3206
+ }
3207
+ #endif
3208
+
3209
+ return simde__m128i_from_private(r_);
3210
+ #endif
3211
+ }
3212
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3213
+ #define _mm_shl_epi32(a, b) simde_mm_shl_epi32((a), (b))
3214
+ #endif
3215
+
3216
+ SIMDE_FUNCTION_ATTRIBUTES
3217
+ simde__m128i
3218
+ simde_mm_shl_epi64 (simde__m128i a, simde__m128i b) {
3219
+ #if defined(SIMDE_X86_XOP_NATIVE)
3220
+ return _mm_shl_epi64(a, b);
3221
+ #else
3222
+ simde__m128i_private
3223
+ r_,
3224
+ a_ = simde__m128i_to_private(a),
3225
+ b_ = simde__m128i_to_private(b);
3226
+
3227
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
3228
+ r_.neon_u64 = vshlq_u64(a_.neon_u64, b_.neon_i64);
3229
+ #else
3230
+ SIMDE_VECTORIZE
3231
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
3232
+ if (HEDLEY_UNLIKELY(b_.i64[i] < -63 || b_.i64[i] > 63)) {
3233
+ r_.u64[i] = 0;
3234
+ } else {
3235
+ if (b_.i64[i] < 0) {
3236
+ r_.u64[i] = HEDLEY_STATIC_CAST(uint64_t, a_.u64[i] >> -b_.i64[i]);
3237
+ } else {
3238
+ r_.u64[i] = HEDLEY_STATIC_CAST(uint64_t, a_.u64[i] << b_.i64[i]);
3239
+ }
3240
+ }
3241
+ }
3242
+ #endif
3243
+
3244
+ return simde__m128i_from_private(r_);
3245
+ #endif
3246
+ }
3247
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3248
+ #define _mm_shl_epi64(a, b) simde_mm_shl_epi64((a), (b))
3249
+ #endif
3250
+
3251
+ SIMDE_FUNCTION_ATTRIBUTES
3252
+ simde__m128i
3253
+ simde_mm_rot_epi8 (simde__m128i a, simde__m128i b) {
3254
+ #if defined(SIMDE_X86_XOP_NATIVE)
3255
+ return _mm_rot_epi8(a, b);
3256
+ #else
3257
+ simde__m128i_private
3258
+ r_,
3259
+ a_ = simde__m128i_to_private(a),
3260
+ b_ = simde__m128i_to_private(b);
3261
+
3262
+ SIMDE_VECTORIZE
3263
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
3264
+ r_.u8[i] = (b_.i8[i] < 0) ?
3265
+ HEDLEY_STATIC_CAST(uint8_t, ((a_.u8[i] >> -b_.i8[i]) | (a_.u8[i] << ( b_.i8[i] & 7)))) :
3266
+ HEDLEY_STATIC_CAST(uint8_t, ((a_.u8[i] << b_.i8[i]) | (a_.u8[i] >> (-b_.i8[i] & 7))));
3267
+ }
3268
+
3269
+ return simde__m128i_from_private(r_);
3270
+ #endif
3271
+ }
3272
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3273
+ #define _mm_rot_epi8(a, b) simde_mm_rot_epi8((a), (b))
3274
+ #endif
3275
+
3276
+ SIMDE_FUNCTION_ATTRIBUTES
3277
+ simde__m128i
3278
+ simde_mm_rot_epi16 (simde__m128i a, simde__m128i b) {
3279
+ #if defined(SIMDE_X86_XOP_NATIVE)
3280
+ return _mm_rot_epi16(a, b);
3281
+ #else
3282
+ simde__m128i_private
3283
+ r_,
3284
+ a_ = simde__m128i_to_private(a),
3285
+ b_ = simde__m128i_to_private(b);
3286
+
3287
+ SIMDE_VECTORIZE
3288
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
3289
+ r_.u16[i] = (b_.i16[i] < 0) ?
3290
+ HEDLEY_STATIC_CAST(uint16_t, ((a_.u16[i] >> -b_.i16[i]) | (a_.u16[i] << ( b_.i16[i] & 15)))) :
3291
+ HEDLEY_STATIC_CAST(uint16_t, ((a_.u16[i] << b_.i16[i]) | (a_.u16[i] >> (-b_.i16[i] & 15))));
3292
+ }
3293
+
3294
+ return simde__m128i_from_private(r_);
3295
+ #endif
3296
+ }
3297
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3298
+ #define _mm_rot_epi16(a, b) simde_mm_rot_epi16((a), (b))
3299
+ #endif
3300
+
3301
+ SIMDE_FUNCTION_ATTRIBUTES
3302
+ simde__m128i
3303
+ simde_mm_rot_epi32 (simde__m128i a, simde__m128i b) {
3304
+ #if defined(SIMDE_X86_XOP_NATIVE)
3305
+ return _mm_rot_epi32(a, b);
3306
+ #else
3307
+ simde__m128i_private
3308
+ r_,
3309
+ a_ = simde__m128i_to_private(a),
3310
+ b_ = simde__m128i_to_private(b);
3311
+
3312
+ SIMDE_VECTORIZE
3313
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
3314
+ r_.u32[i] = (b_.i32[i] < 0) ?
3315
+ HEDLEY_STATIC_CAST(uint32_t, ((a_.u32[i] >> -b_.i32[i]) | (a_.u32[i] << ( b_.i32[i] & 31)))) :
3316
+ HEDLEY_STATIC_CAST(uint32_t, ((a_.u32[i] << b_.i32[i]) | (a_.u32[i] >> (-b_.i32[i] & 31))));
3317
+ }
3318
+
3319
+ return simde__m128i_from_private(r_);
3320
+ #endif
3321
+ }
3322
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3323
+ #define _mm_rot_epi32(a, b) simde_mm_rot_epi32((a), (b))
3324
+ #endif
3325
+
3326
+ SIMDE_FUNCTION_ATTRIBUTES
3327
+ simde__m128i
3328
+ simde_mm_rot_epi64 (simde__m128i a, simde__m128i b) {
3329
+ #if defined(SIMDE_X86_XOP_NATIVE)
3330
+ return _mm_rot_epi64(a, b);
3331
+ #else
3332
+ simde__m128i_private
3333
+ r_,
3334
+ a_ = simde__m128i_to_private(a),
3335
+ b_ = simde__m128i_to_private(b);
3336
+
3337
+ SIMDE_VECTORIZE
3338
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
3339
+ r_.u64[i] = (b_.i64[i] < 0) ?
3340
+ HEDLEY_STATIC_CAST(uint64_t, ((a_.u64[i] >> -b_.i64[i]) | (a_.u64[i] << ( b_.i64[i] & 63)))) :
3341
+ HEDLEY_STATIC_CAST(uint64_t, ((a_.u64[i] << b_.i64[i]) | (a_.u64[i] >> (-b_.i64[i] & 63))));
3342
+ }
3343
+
3344
+ return simde__m128i_from_private(r_);
3345
+ #endif
3346
+ }
3347
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3348
+ #define _mm_rot_epi64(a, b) simde_mm_rot_epi64((a), (b))
3349
+ #endif
3350
+
3351
+ SIMDE_FUNCTION_ATTRIBUTES
3352
+ simde__m128i
3353
+ simde_mm_roti_epi8 (simde__m128i a, const int count) {
3354
+ simde__m128i_private
3355
+ r_,
3356
+ a_ = simde__m128i_to_private(a);
3357
+
3358
+ SIMDE_VECTORIZE
3359
+ for (size_t i = 0 ; i < (sizeof(r_.u8) / sizeof(r_.u8[0])) ; i++) {
3360
+ r_.u8[i] = (count < 0) ?
3361
+ HEDLEY_STATIC_CAST(uint8_t, ((a_.u8[i] >> -count) | (a_.u8[i] << ( count & 7)))) :
3362
+ HEDLEY_STATIC_CAST(uint8_t, ((a_.u8[i] << count) | (a_.u8[i] >> (-count & 7))));
3363
+ }
3364
+
3365
+ return simde__m128i_from_private(r_);
3366
+ }
3367
+ #if defined(SIMDE_X86_XOP_NATIVE)
3368
+ #define simde_mm_roti_epi8(a, count) _mm_roti_epi8((a), (count))
3369
+ #endif
3370
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3371
+ #define _mm_roti_epi8(a, b) simde_mm_roti_epi8((a), (count))
3372
+ #endif
3373
+
3374
+ SIMDE_FUNCTION_ATTRIBUTES
3375
+ simde__m128i
3376
+ simde_mm_roti_epi16 (simde__m128i a, const int count) {
3377
+ simde__m128i_private
3378
+ r_,
3379
+ a_ = simde__m128i_to_private(a);
3380
+
3381
+ SIMDE_VECTORIZE
3382
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
3383
+ r_.u16[i] = (count < 0) ?
3384
+ HEDLEY_STATIC_CAST(uint16_t, ((a_.u16[i] >> -count) | (a_.u16[i] << ( count & 15)))) :
3385
+ HEDLEY_STATIC_CAST(uint16_t, ((a_.u16[i] << count) | (a_.u16[i] >> (-count & 15))));
3386
+ }
3387
+
3388
+ return simde__m128i_from_private(r_);
3389
+ }
3390
+ #if defined(SIMDE_X86_XOP_NATIVE)
3391
+ #define simde_mm_roti_epi16(a, count) _mm_roti_epi16((a), (count))
3392
+ #endif
3393
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3394
+ #define _mm_roti_epi16(a, count) simde_mm_roti_epi16((a), (count))
3395
+ #endif
3396
+
3397
+ SIMDE_FUNCTION_ATTRIBUTES
3398
+ simde__m128i
3399
+ simde_mm_roti_epi32 (simde__m128i a, const int count) {
3400
+ simde__m128i_private
3401
+ r_,
3402
+ a_ = simde__m128i_to_private(a);
3403
+
3404
+ SIMDE_VECTORIZE
3405
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
3406
+ r_.u32[i] = (count < 0) ?
3407
+ HEDLEY_STATIC_CAST(uint32_t, ((a_.u32[i] >> -count) | (a_.u32[i] << ( count & 31)))) :
3408
+ HEDLEY_STATIC_CAST(uint32_t, ((a_.u32[i] << count) | (a_.u32[i] >> (-count & 31))));
3409
+ }
3410
+
3411
+ return simde__m128i_from_private(r_);
3412
+ }
3413
+ #if defined(SIMDE_X86_XOP_NATIVE)
3414
+ #define simde_mm_roti_epi32(a, count) _mm_roti_epi32((a), (count))
3415
+ #endif
3416
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3417
+ #define _mm_roti_epi32(a, count) simde_mm_roti_epi32((a), (count))
3418
+ #endif
3419
+
3420
+ SIMDE_FUNCTION_ATTRIBUTES
3421
+ simde__m128i
3422
+ simde_mm_roti_epi64 (simde__m128i a, const int count) {
3423
+ simde__m128i_private
3424
+ r_,
3425
+ a_ = simde__m128i_to_private(a);
3426
+
3427
+ SIMDE_VECTORIZE
3428
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
3429
+ r_.u64[i] = (count < 0) ?
3430
+ HEDLEY_STATIC_CAST(uint64_t, ((a_.u64[i] >> -count) | (a_.u64[i] << ( count & 63)))) :
3431
+ HEDLEY_STATIC_CAST(uint64_t, ((a_.u64[i] << count) | (a_.u64[i] >> (-count & 63))));
3432
+ }
3433
+
3434
+ return simde__m128i_from_private(r_);
3435
+ }
3436
+ #if defined(SIMDE_X86_XOP_NATIVE)
3437
+ #define simde_mm_roti_epi64(a, count) _mm_roti_epi64((a), (count))
3438
+ #endif
3439
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3440
+ #define _mm_roti_epi64(a, count) simde_mm_roti_epi64((a), (count))
3441
+ #endif
3442
+
3443
+ SIMDE_FUNCTION_ATTRIBUTES
3444
+ simde__m128i
3445
+ simde_mm_perm_epi8 (simde__m128i a, simde__m128i b, simde__m128i c) {
3446
+ #if defined(SIMDE_X86_XOP_NATIVE)
3447
+ return _mm_perm_epi8(a, b, c);
3448
+ #else
3449
+ simde__m128i_private
3450
+ r_,
3451
+ a_ = simde__m128i_to_private(a),
3452
+ b_ = simde__m128i_to_private(b),
3453
+ c_ = simde__m128i_to_private(c);
3454
+
3455
+ SIMDE_VECTORIZE
3456
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
3457
+ int8_t src = (c_.u8[i] & 0x10) ? b_.i8[c_.u8[i] & 0xf] : a_.i8[c_.u8[i] & 0xf];
3458
+
3459
+ switch (c_.u8[i] & 0xc0) {
3460
+ case 0x40:
3461
+ #if HEDLEY_HAS_BUILTIN(__builtin_bitreverse8) && !defined(HEDLEY_IBM_VERSION)
3462
+ src = HEDLEY_STATIC_CAST(int8_t, __builtin_bitreverse8(HEDLEY_STATIC_CAST(uint8_t, src)));
3463
+ #else
3464
+ src = HEDLEY_STATIC_CAST(int8_t, ((HEDLEY_STATIC_CAST(uint8_t, src) * UINT64_C(0x80200802)) & UINT64_C(0x0884422110)) * UINT64_C(0x0101010101) >> 32);
3465
+ #endif
3466
+ break;
3467
+ case 0x80:
3468
+ src = 0;
3469
+ break;
3470
+ case 0xc0:
3471
+ src >>= 7;
3472
+ break;
3473
+ }
3474
+
3475
+ r_.i8[i] = (c_.u8[i] & 0x20) ? ~src : src;
3476
+ }
3477
+
3478
+ return simde__m128i_from_private(r_);
3479
+ #endif
3480
+ }
3481
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3482
+ #define _mm_perm_epi8(a, b, c) simde_mm_perm_epi8((a), (b), (c))
3483
+ #endif
3484
+
3485
+ SIMDE_FUNCTION_ATTRIBUTES
3486
+ simde__m128
3487
+ simde_mm_permute2_ps (simde__m128 a, simde__m128 b, simde__m128i c, const int imm8) {
3488
+ simde__m128_private
3489
+ r_,
3490
+ a_ = simde__m128_to_private(a),
3491
+ b_ = simde__m128_to_private(b);
3492
+ simde__m128i_private c_ = simde__m128i_to_private(c);
3493
+
3494
+ const int m2z = imm8 & 0x03;
3495
+
3496
+ SIMDE_VECTORIZE
3497
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
3498
+ const int sel = c_.i32[i] & 0x07;
3499
+ const int m = c_.i32[i] & 0x08;
3500
+
3501
+ switch (m | m2z) {
3502
+ case 0xa:
3503
+ case 0x3:
3504
+ r_.i32[i] = 0;
3505
+ break;
3506
+ default:
3507
+ r_.i32[i] = (sel > 3) ? b_.i32[sel - 4] : a_.i32[sel];
3508
+ break;
3509
+ }
3510
+ }
3511
+
3512
+ return simde__m128_from_private(r_);
3513
+ }
3514
+ #if defined(SIMDE_X86_XOP_NATIVE)
3515
+ #define simde_mm_permute2_ps(a, b, c, imm8) _mm_permute2_ps((a), (b), (c), (imm8))
3516
+ #endif
3517
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3518
+ #define _mm_permute2_ps(a, b, c, imm8) simde_mm_permute2_ps((a), (b), (c), (imm8))
3519
+ #endif
3520
+
3521
+ SIMDE_FUNCTION_ATTRIBUTES
3522
+ simde__m128d
3523
+ simde_mm_permute2_pd (simde__m128d a, simde__m128d b, simde__m128i c, const int imm8) {
3524
+ simde__m128d_private
3525
+ r_,
3526
+ a_ = simde__m128d_to_private(a),
3527
+ b_ = simde__m128d_to_private(b);
3528
+ simde__m128i_private c_ = simde__m128i_to_private(c);
3529
+
3530
+ const int m2z = imm8 & 0x03;
3531
+
3532
+ SIMDE_VECTORIZE
3533
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
3534
+ const int sel = (c_.i64[i] & 0x06) >> 1;
3535
+ const int m = c_.i64[i] & 0x08;
3536
+
3537
+ switch (m | m2z) {
3538
+ case 0x0a:
3539
+ case 0x03:
3540
+ r_.i64[i] = 0;
3541
+ break;
3542
+ default:
3543
+ r_.i64[i] = (sel > 1) ? b_.i64[sel - 2] : a_.i64[sel];
3544
+ break;
3545
+ }
3546
+ }
3547
+
3548
+ return simde__m128d_from_private(r_);
3549
+ }
3550
+ #if defined(SIMDE_X86_XOP_NATIVE)
3551
+ #define simde_mm_permute2_pd(a, b, c, imm8) _mm_permute2_pd((a), (b), (c), (imm8))
3552
+ #endif
3553
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3554
+ #define _mm_permute2_pd(a, b, c, imm8) simde_mm_permute2_pd((a), (b), (c), (imm8))
3555
+ #endif
3556
+
3557
+ SIMDE_FUNCTION_ATTRIBUTES
3558
+ simde__m256
3559
+ simde_mm256_permute2_ps (simde__m256 a, simde__m256 b, simde__m256i c, const int imm8) {
3560
+ simde__m256_private
3561
+ r_,
3562
+ a_ = simde__m256_to_private(a),
3563
+ b_ = simde__m256_to_private(b);
3564
+ simde__m256i_private c_ = simde__m256i_to_private(c);
3565
+
3566
+ #if SIMDE_NATURAL_VECTOR_SIZE_LE(128)
3567
+ for (size_t i = 0 ; i < (sizeof(r_.m128) / sizeof(r_.m128[0])) ; i++) {
3568
+ r_.m128[i] = simde_mm_permute2_ps(a_.m128[i], b_.m128[i], c_.m128i[i], imm8);
3569
+ }
3570
+ #else
3571
+ const int m2z = imm8 & 0x03;
3572
+
3573
+ SIMDE_VECTORIZE
3574
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
3575
+ const int sel = c_.i32[i] & 0x07;
3576
+ const int m = c_.i32[i] & 0x08;
3577
+
3578
+ switch (m | m2z) {
3579
+ case 0xa:
3580
+ case 0x3:
3581
+ r_.i32[i] = 0;
3582
+ break;
3583
+ default:
3584
+ r_.i32[i] = (sel > 3) ? b_.i32[sel + (HEDLEY_STATIC_CAST(int, i) & 4) - 4] : a_.i32[sel + (HEDLEY_STATIC_CAST(int, i) & 4)];
3585
+ break;
3586
+ }
3587
+ }
3588
+ #endif
3589
+
3590
+ return simde__m256_from_private(r_);
3591
+ }
3592
+ #if defined(SIMDE_X86_XOP_NATIVE)
3593
+ #define simde_mm256_permute2_ps(a, b, c, imm8) _mm256_permute2_ps((a), (b), (c), (imm8))
3594
+ #endif
3595
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3596
+ #define _mm256_permute2_ps(a, b, c, imm8) simde_mm256_permute2_ps((a), (b), (c), (imm8))
3597
+ #endif
3598
+
3599
+ SIMDE_FUNCTION_ATTRIBUTES
3600
+ simde__m256d
3601
+ simde_mm256_permute2_pd (simde__m256d a, simde__m256d b, simde__m256i c, const int imm8) {
3602
+ simde__m256d_private
3603
+ r_,
3604
+ a_ = simde__m256d_to_private(a),
3605
+ b_ = simde__m256d_to_private(b);
3606
+ simde__m256i_private c_ = simde__m256i_to_private(c);
3607
+
3608
+ #if SIMDE_NATURAL_VECTOR_SIZE_LE(128)
3609
+ for (size_t i = 0 ; i < (sizeof(r_.m128d) / sizeof(r_.m128d[0])) ; i++) {
3610
+ r_.m128d[i] = simde_mm_permute2_pd(a_.m128d[i], b_.m128d[i], c_.m128i[i], imm8);
3611
+ }
3612
+ #else
3613
+ const int m2z = imm8 & 0x03;
3614
+
3615
+ SIMDE_VECTORIZE
3616
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
3617
+ const int sel = (c_.i64[i] & 0x06) >> 1;
3618
+ const int m = c_.i64[i] & 0x08;
3619
+
3620
+ switch (m | m2z) {
3621
+ case 0x0a:
3622
+ case 0x03:
3623
+ r_.i64[i] = 0;
3624
+ break;
3625
+ default:
3626
+ r_.i64[i] = (sel > 1) ? b_.i64[sel + (HEDLEY_STATIC_CAST(int, i) & 2) - 2] : a_.i64[sel + (HEDLEY_STATIC_CAST(int, i) & 2)];
3627
+ break;
3628
+ }
3629
+ }
3630
+ #endif
3631
+
3632
+ return simde__m256d_from_private(r_);
3633
+ }
3634
+ #if defined(SIMDE_X86_XOP_NATIVE)
3635
+ #define simde_mm256_permute2_pd(a, b, c, imm8) _mm256_permute2_pd((a), (b), (c), (imm8))
3636
+ #endif
3637
+ #if defined(SIMDE_X86_XOP_ENABLE_NATIVE_ALIASES)
3638
+ #define _mm256_permute2_pd(a, b, c, imm8) simde_mm256_permute2_pd((a), (b), (c), (imm8))
3639
+ #endif
3640
+
3641
+ HEDLEY_DIAGNOSTIC_POP
3642
+ SIMDE_END_DECLS_
3643
+
3644
+ #endif /* !defined(SIMDE_X86_XOP_H) */