casadi 3.7.2__cp314-none-manylinux2014_x86_64.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 (2377) hide show
  1. casadi/__init__.py +92 -0
  2. casadi/_casadi.so +0 -0
  3. casadi/casadi-cli +0 -0
  4. casadi/casadi.py +54468 -0
  5. casadi/cbc +0 -0
  6. casadi/clp +0 -0
  7. casadi/cmake/alpaqa/alpaqaConfig.cmake +24 -0
  8. casadi/cmake/alpaqa/alpaqaConfigVersion.cmake +65 -0
  9. casadi/cmake/alpaqa/alpaqaTargets-release.cmake +29 -0
  10. casadi/cmake/alpaqa/alpaqaTargets.cmake +131 -0
  11. casadi/cmake/casadi-config-version.cmake +11 -0
  12. casadi/cmake/casadi-config.cmake +8 -0
  13. casadi/cmake/casadi-targets-release.cmake +19 -0
  14. casadi/cmake/casadi-targets.cmake +107 -0
  15. casadi/cmake/highs/highs-config.cmake +17 -0
  16. casadi/cmake/highs/highs-targets-release.cmake +28 -0
  17. casadi/cmake/highs/highs-targets.cmake +117 -0
  18. casadi/cmake/libzip/libzip-config-version.cmake +43 -0
  19. casadi/cmake/libzip/libzip-config.cmake +69 -0
  20. casadi/cmake/libzip/libzip-targets-release.cmake +19 -0
  21. casadi/cmake/libzip/libzip-targets.cmake +107 -0
  22. casadi/cmake/libzip/modules/FindMbedTLS.cmake +141 -0
  23. casadi/cmake/libzip/modules/FindNettle.cmake +141 -0
  24. casadi/cmake/libzip/modules/Findzstd.cmake +186 -0
  25. casadi/cmake/osqp/osqp-config.cmake +1 -0
  26. casadi/cmake/osqp/osqp-targets-noconfig.cmake +29 -0
  27. casadi/cmake/osqp/osqp-targets.cmake +113 -0
  28. casadi/cmake/qdldl/qdldl-config.cmake +1 -0
  29. casadi/cmake/qdldl/qdldl-targets-noconfig.cmake +29 -0
  30. casadi/cmake/qdldl/qdldl-targets.cmake +113 -0
  31. casadi/cmake/sleqp/sleqp-config-version.cmake +65 -0
  32. casadi/cmake/sleqp/sleqp-config.cmake +1 -0
  33. casadi/cmake/sleqp/sleqp-targets-release.cmake +20 -0
  34. casadi/cmake/sleqp/sleqp-targets.cmake +106 -0
  35. casadi/highs +0 -0
  36. casadi/include/alpaqa/accelerators/anderson.hpp +133 -0
  37. casadi/include/alpaqa/accelerators/internal/anderson-helpers.hpp +92 -0
  38. casadi/include/alpaqa/accelerators/internal/limited-memory-qr.hpp +295 -0
  39. casadi/include/alpaqa/accelerators/lbfgs.hpp +244 -0
  40. casadi/include/alpaqa/accelerators/steihaugcg.hpp +143 -0
  41. casadi/include/alpaqa/alpaqa.hpp +3 -0
  42. casadi/include/alpaqa/casadi/CasADiControlProblem.hpp +185 -0
  43. casadi/include/alpaqa/casadi/CasADiFunctionWrapper.hpp +104 -0
  44. casadi/include/alpaqa/casadi/CasADiProblem.hpp +102 -0
  45. casadi/include/alpaqa/casadi-loader-export.hpp +15 -0
  46. casadi/include/alpaqa/casadi-ocp-loader-export.hpp +15 -0
  47. casadi/include/alpaqa/config/config.hpp +165 -0
  48. casadi/include/alpaqa/dl/dl-problem.h +476 -0
  49. casadi/include/alpaqa/dl/dl-problem.hpp +301 -0
  50. casadi/include/alpaqa/export.h +43 -0
  51. casadi/include/alpaqa/export.hpp +30 -0
  52. casadi/include/alpaqa/implementation/accelerators/lbfgs.tpp +240 -0
  53. casadi/include/alpaqa/implementation/casadi/CasADiControlProblem.tpp +594 -0
  54. casadi/include/alpaqa/implementation/casadi/CasADiLoader-util.hpp +50 -0
  55. casadi/include/alpaqa/implementation/casadi/CasADiProblem.tpp +425 -0
  56. casadi/include/alpaqa/implementation/inner/directions/panoc/structured-lbfgs.tpp +164 -0
  57. casadi/include/alpaqa/implementation/inner/panoc-helpers.tpp +389 -0
  58. casadi/include/alpaqa/implementation/inner/panoc-ocp.tpp +798 -0
  59. casadi/include/alpaqa/implementation/inner/panoc.tpp +448 -0
  60. casadi/include/alpaqa/implementation/inner/pantr.tpp +474 -0
  61. casadi/include/alpaqa/implementation/inner/zerofpr.tpp +482 -0
  62. casadi/include/alpaqa/implementation/outer/alm.tpp +228 -0
  63. casadi/include/alpaqa/implementation/outer/internal/alm-helpers.tpp +80 -0
  64. casadi/include/alpaqa/implementation/params/params.tpp +158 -0
  65. casadi/include/alpaqa/implementation/problem/ocproblem.tpp +56 -0
  66. casadi/include/alpaqa/implementation/problem/type-erased-problem.tpp +211 -0
  67. casadi/include/alpaqa/implementation/util/io/csv.tpp +120 -0
  68. casadi/include/alpaqa/implementation/util/print.tpp +151 -0
  69. casadi/include/alpaqa/inner/directions/panoc/anderson.hpp +98 -0
  70. casadi/include/alpaqa/inner/directions/panoc/lbfgs.hpp +94 -0
  71. casadi/include/alpaqa/inner/directions/panoc/structured-lbfgs.hpp +146 -0
  72. casadi/include/alpaqa/inner/directions/panoc/structured-newton.hpp +264 -0
  73. casadi/include/alpaqa/inner/directions/panoc-direction-update.hpp +96 -0
  74. casadi/include/alpaqa/inner/directions/panoc-ocp/lqr.hpp +181 -0
  75. casadi/include/alpaqa/inner/directions/panoc-ocp/ocp-vars.hpp +492 -0
  76. casadi/include/alpaqa/inner/directions/pantr/newton-tr.hpp +192 -0
  77. casadi/include/alpaqa/inner/directions/pantr/pantr-direction.hpp +99 -0
  78. casadi/include/alpaqa/inner/inner-solve-options.hpp +30 -0
  79. casadi/include/alpaqa/inner/internal/lipschitz.hpp +27 -0
  80. casadi/include/alpaqa/inner/internal/panoc-helpers.hpp +10 -0
  81. casadi/include/alpaqa/inner/internal/panoc-stop-crit.hpp +124 -0
  82. casadi/include/alpaqa/inner/internal/solverstatus.hpp +42 -0
  83. casadi/include/alpaqa/inner/panoc-ocp.hpp +302 -0
  84. casadi/include/alpaqa/inner/panoc.hpp +274 -0
  85. casadi/include/alpaqa/inner/pantr.hpp +284 -0
  86. casadi/include/alpaqa/inner/zerofpr.hpp +274 -0
  87. casadi/include/alpaqa/ipopt/ipopt-adapter.hpp +81 -0
  88. casadi/include/alpaqa/ipopt/ipopt-enums.hpp +35 -0
  89. casadi/include/alpaqa/lbfgsb/lbfgsb-adapter.hpp +111 -0
  90. casadi/include/alpaqa/newton-tr-pantr-alm.hpp +27 -0
  91. casadi/include/alpaqa/outer/alm.hpp +190 -0
  92. casadi/include/alpaqa/outer/internal/alm-helpers.hpp +10 -0
  93. casadi/include/alpaqa/panoc-alm.hpp +27 -0
  94. casadi/include/alpaqa/panoc-anderson-alm.hpp +27 -0
  95. casadi/include/alpaqa/params/params.hpp +60 -0
  96. casadi/include/alpaqa/problem/box-constr-problem.hpp +220 -0
  97. casadi/include/alpaqa/problem/box.hpp +82 -0
  98. casadi/include/alpaqa/problem/functional-problem.hpp +73 -0
  99. casadi/include/alpaqa/problem/kkt-error.hpp +43 -0
  100. casadi/include/alpaqa/problem/ocproblem-counters.hpp +116 -0
  101. casadi/include/alpaqa/problem/ocproblem.hpp +662 -0
  102. casadi/include/alpaqa/problem/problem-counters.hpp +116 -0
  103. casadi/include/alpaqa/problem/problem-with-counters.hpp +141 -0
  104. casadi/include/alpaqa/problem/type-erased-problem.hpp +874 -0
  105. casadi/include/alpaqa/problem/unconstr-problem.hpp +37 -0
  106. casadi/include/alpaqa/structured-panoc-alm.hpp +27 -0
  107. casadi/include/alpaqa/structured-zerofpr-alm.hpp +27 -0
  108. casadi/include/alpaqa/util/alloc-check.hpp +23 -0
  109. casadi/include/alpaqa/util/atomic-stop-signal.hpp +24 -0
  110. casadi/include/alpaqa/util/check-dim.hpp +64 -0
  111. casadi/include/alpaqa/util/copyable_unique_ptr.hpp +32 -0
  112. casadi/include/alpaqa/util/demangled-typename.hpp +9 -0
  113. casadi/include/alpaqa/util/enumerate.hpp +70 -0
  114. casadi/include/alpaqa/util/float.hpp +25 -0
  115. casadi/include/alpaqa/util/index-set.hpp +97 -0
  116. casadi/include/alpaqa/util/io/csv.hpp +43 -0
  117. casadi/include/alpaqa/util/iter-adapter.hpp +68 -0
  118. casadi/include/alpaqa/util/max-history.hpp +47 -0
  119. casadi/include/alpaqa/util/noop-delete.hpp +15 -0
  120. casadi/include/alpaqa/util/not-implemented.hpp +12 -0
  121. casadi/include/alpaqa/util/print.hpp +78 -0
  122. casadi/include/alpaqa/util/quadmath/quadmath-print.hpp +20 -0
  123. casadi/include/alpaqa/util/quadmath/quadmath.hpp +137 -0
  124. casadi/include/alpaqa/util/required-method.hpp +29 -0
  125. casadi/include/alpaqa/util/ringbuffer.hpp +212 -0
  126. casadi/include/alpaqa/util/set-intersection.hpp +129 -0
  127. casadi/include/alpaqa/util/sparse-ops.hpp +164 -0
  128. casadi/include/alpaqa/util/timed.hpp +22 -0
  129. casadi/include/alpaqa/util/type-erasure.hpp +568 -0
  130. casadi/include/alpaqa/util/type-traits.hpp +58 -0
  131. casadi/include/alpaqa/zerofpr-alm.hpp +27 -0
  132. casadi/include/alpaqa/zerofpr-anderson-alm.hpp +27 -0
  133. casadi/include/alpaqa-version.h +8 -0
  134. casadi/include/blasfeo.h +52 -0
  135. casadi/include/blasfeo_block_size.h +447 -0
  136. casadi/include/blasfeo_common.h +274 -0
  137. casadi/include/blasfeo_d_aux.h +255 -0
  138. casadi/include/blasfeo_d_aux_ext_dep.h +145 -0
  139. casadi/include/blasfeo_d_aux_ext_dep_ref.h +84 -0
  140. casadi/include/blasfeo_d_aux_old.h +75 -0
  141. casadi/include/blasfeo_d_aux_ref.h +208 -0
  142. casadi/include/blasfeo_d_aux_test.h +226 -0
  143. casadi/include/blasfeo_d_blas.h +46 -0
  144. casadi/include/blasfeo_d_blas_api.h +281 -0
  145. casadi/include/blasfeo_d_blasfeo_api.h +364 -0
  146. casadi/include/blasfeo_d_blasfeo_api_ref.h +147 -0
  147. casadi/include/blasfeo_d_blasfeo_hp_api.h +84 -0
  148. casadi/include/blasfeo_d_blasfeo_ref_api.h +283 -0
  149. casadi/include/blasfeo_d_kernel.h +1321 -0
  150. casadi/include/blasfeo_i_aux_ext_dep.h +69 -0
  151. casadi/include/blasfeo_m_aux.h +57 -0
  152. casadi/include/blasfeo_memory.h +62 -0
  153. casadi/include/blasfeo_naming.h +77 -0
  154. casadi/include/blasfeo_processor_features.h +88 -0
  155. casadi/include/blasfeo_s_aux.h +168 -0
  156. casadi/include/blasfeo_s_aux_ext_dep.h +141 -0
  157. casadi/include/blasfeo_s_aux_ext_dep_ref.h +82 -0
  158. casadi/include/blasfeo_s_aux_old.h +64 -0
  159. casadi/include/blasfeo_s_aux_ref.h +147 -0
  160. casadi/include/blasfeo_s_aux_test.h +177 -0
  161. casadi/include/blasfeo_s_blas.h +46 -0
  162. casadi/include/blasfeo_s_blas_api.h +182 -0
  163. casadi/include/blasfeo_s_blasfeo_api.h +284 -0
  164. casadi/include/blasfeo_s_blasfeo_api_ref.h +135 -0
  165. casadi/include/blasfeo_s_blasfeo_ref_api.h +252 -0
  166. casadi/include/blasfeo_s_kernel.h +692 -0
  167. casadi/include/blasfeo_stdlib.h +62 -0
  168. casadi/include/blasfeo_target.h +73 -0
  169. casadi/include/blasfeo_timing.h +114 -0
  170. casadi/include/blasfeo_v_aux_ext_dep.h +83 -0
  171. casadi/include/casadi/casadi.hpp +31 -0
  172. casadi/include/casadi/casadi.i +4920 -0
  173. casadi/include/casadi/casadi_c.h +138 -0
  174. casadi/include/casadi/casadi_numpy.hpp +97 -0
  175. casadi/include/casadi/config.h +46 -0
  176. casadi/include/casadi/core/archiver.hpp +58 -0
  177. casadi/include/casadi/core/blazing_spline.hpp +47 -0
  178. casadi/include/casadi/core/calculus.hpp +1805 -0
  179. casadi/include/casadi/core/callback.hpp +235 -0
  180. casadi/include/casadi/core/casadi_common.hpp +355 -0
  181. casadi/include/casadi/core/casadi_enum.hpp +90 -0
  182. casadi/include/casadi/core/casadi_export.h +43 -0
  183. casadi/include/casadi/core/casadi_interrupt.hpp +83 -0
  184. casadi/include/casadi/core/casadi_limits.hpp +104 -0
  185. casadi/include/casadi/core/casadi_logger.hpp +134 -0
  186. casadi/include/casadi/core/casadi_meta.hpp +122 -0
  187. casadi/include/casadi/core/casadi_misc.hpp +1022 -0
  188. casadi/include/casadi/core/casadi_types.hpp +66 -0
  189. casadi/include/casadi/core/code_generator.hpp +1071 -0
  190. casadi/include/casadi/core/conic.hpp +213 -0
  191. casadi/include/casadi/core/core.hpp +75 -0
  192. casadi/include/casadi/core/dae_builder.hpp +885 -0
  193. casadi/include/casadi/core/dm.hpp +90 -0
  194. casadi/include/casadi/core/dm_fwd.hpp +39 -0
  195. casadi/include/casadi/core/dple.hpp +138 -0
  196. casadi/include/casadi/core/exception.hpp +167 -0
  197. casadi/include/casadi/core/expm.hpp +84 -0
  198. casadi/include/casadi/core/external.hpp +70 -0
  199. casadi/include/casadi/core/filesystem.hpp +58 -0
  200. casadi/include/casadi/core/fmu.hpp +270 -0
  201. casadi/include/casadi/core/function.hpp +1389 -0
  202. casadi/include/casadi/core/generic_expression.hpp +760 -0
  203. casadi/include/casadi/core/generic_matrix.hpp +1805 -0
  204. casadi/include/casadi/core/generic_shared.hpp +395 -0
  205. casadi/include/casadi/core/generic_shared_impl.hpp +218 -0
  206. casadi/include/casadi/core/generic_shared_internal.hpp +215 -0
  207. casadi/include/casadi/core/generic_type.hpp +314 -0
  208. casadi/include/casadi/core/global_options.hpp +107 -0
  209. casadi/include/casadi/core/im.hpp +52 -0
  210. casadi/include/casadi/core/im_fwd.hpp +35 -0
  211. casadi/include/casadi/core/importer.hpp +221 -0
  212. casadi/include/casadi/core/integration_tools.hpp +292 -0
  213. casadi/include/casadi/core/integrator.hpp +290 -0
  214. casadi/include/casadi/core/interpolant.hpp +163 -0
  215. casadi/include/casadi/core/linsol.hpp +171 -0
  216. casadi/include/casadi/core/matrix_decl.hpp +1423 -0
  217. casadi/include/casadi/core/matrix_fwd.hpp +37 -0
  218. casadi/include/casadi/core/mx.hpp +1014 -0
  219. casadi/include/casadi/core/nlp_builder.hpp +163 -0
  220. casadi/include/casadi/core/nlp_tools.hpp +124 -0
  221. casadi/include/casadi/core/nlpsol.hpp +234 -0
  222. casadi/include/casadi/core/nonzeros.hpp +111 -0
  223. casadi/include/casadi/core/options.hpp +122 -0
  224. casadi/include/casadi/core/optistack.hpp +704 -0
  225. casadi/include/casadi/core/polynomial.hpp +126 -0
  226. casadi/include/casadi/core/printable.hpp +81 -0
  227. casadi/include/casadi/core/resource.hpp +107 -0
  228. casadi/include/casadi/core/rootfinder.hpp +176 -0
  229. casadi/include/casadi/core/runtime/casadi_axpy.hpp +8 -0
  230. casadi/include/casadi/core/runtime/casadi_bfgs.hpp +49 -0
  231. casadi/include/casadi/core/runtime/casadi_bilin.hpp +42 -0
  232. casadi/include/casadi/core/runtime/casadi_blazing_1d_boor_eval.hpp +112 -0
  233. casadi/include/casadi/core/runtime/casadi_blazing_2d_boor_eval.hpp +311 -0
  234. casadi/include/casadi/core/runtime/casadi_blazing_3d_boor_eval.hpp +645 -0
  235. casadi/include/casadi/core/runtime/casadi_blazing_de_boor.hpp +101 -0
  236. casadi/include/casadi/core/runtime/casadi_bound_consistency.hpp +51 -0
  237. casadi/include/casadi/core/runtime/casadi_cache.hpp +59 -0
  238. casadi/include/casadi/core/runtime/casadi_clear.hpp +27 -0
  239. casadi/include/casadi/core/runtime/casadi_clip_max.hpp +33 -0
  240. casadi/include/casadi/core/runtime/casadi_clip_min.hpp +33 -0
  241. casadi/include/casadi/core/runtime/casadi_convexify.hpp +182 -0
  242. casadi/include/casadi/core/runtime/casadi_copy.hpp +31 -0
  243. casadi/include/casadi/core/runtime/casadi_cvx.hpp +463 -0
  244. casadi/include/casadi/core/runtime/casadi_de_boor.hpp +36 -0
  245. casadi/include/casadi/core/runtime/casadi_dense_lsqr.hpp +247 -0
  246. casadi/include/casadi/core/runtime/casadi_densify.hpp +48 -0
  247. casadi/include/casadi/core/runtime/casadi_dot.hpp +27 -0
  248. casadi/include/casadi/core/runtime/casadi_feasiblesqpmethod.hpp +208 -0
  249. casadi/include/casadi/core/runtime/casadi_file_slurp.hpp +32 -0
  250. casadi/include/casadi/core/runtime/casadi_fill.hpp +27 -0
  251. casadi/include/casadi/core/runtime/casadi_finite_diff.hpp +345 -0
  252. casadi/include/casadi/core/runtime/casadi_flip.hpp +33 -0
  253. casadi/include/casadi/core/runtime/casadi_getu.hpp +35 -0
  254. casadi/include/casadi/core/runtime/casadi_iamax.hpp +36 -0
  255. casadi/include/casadi/core/runtime/casadi_interpn.hpp +39 -0
  256. casadi/include/casadi/core/runtime/casadi_interpn_grad.hpp +72 -0
  257. casadi/include/casadi/core/runtime/casadi_interpn_interpolate.hpp +43 -0
  258. casadi/include/casadi/core/runtime/casadi_interpn_weights.hpp +39 -0
  259. casadi/include/casadi/core/runtime/casadi_ipqp.hpp +868 -0
  260. casadi/include/casadi/core/runtime/casadi_jac.hpp +186 -0
  261. casadi/include/casadi/core/runtime/casadi_kkt.hpp +67 -0
  262. casadi/include/casadi/core/runtime/casadi_kron.hpp +50 -0
  263. casadi/include/casadi/core/runtime/casadi_ldl.hpp +109 -0
  264. casadi/include/casadi/core/runtime/casadi_logsumexp.hpp +41 -0
  265. casadi/include/casadi/core/runtime/casadi_low.hpp +65 -0
  266. casadi/include/casadi/core/runtime/casadi_lsqr.hpp +247 -0
  267. casadi/include/casadi/core/runtime/casadi_masked_norm_inf.hpp +33 -0
  268. casadi/include/casadi/core/runtime/casadi_max_viol.hpp +37 -0
  269. casadi/include/casadi/core/runtime/casadi_mmax.hpp +28 -0
  270. casadi/include/casadi/core/runtime/casadi_mmin.hpp +29 -0
  271. casadi/include/casadi/core/runtime/casadi_mtimes.hpp +75 -0
  272. casadi/include/casadi/core/runtime/casadi_mv.hpp +46 -0
  273. casadi/include/casadi/core/runtime/casadi_mv_dense.hpp +39 -0
  274. casadi/include/casadi/core/runtime/casadi_nd_boor_dual_eval.hpp +127 -0
  275. casadi/include/casadi/core/runtime/casadi_nd_boor_eval.hpp +120 -0
  276. casadi/include/casadi/core/runtime/casadi_newton.hpp +66 -0
  277. casadi/include/casadi/core/runtime/casadi_nlp.hpp +295 -0
  278. casadi/include/casadi/core/runtime/casadi_norm_1.hpp +29 -0
  279. casadi/include/casadi/core/runtime/casadi_norm_2.hpp +24 -0
  280. casadi/include/casadi/core/runtime/casadi_norm_inf.hpp +28 -0
  281. casadi/include/casadi/core/runtime/casadi_norm_inf_mul.hpp +105 -0
  282. casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
  283. casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
  284. casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
  285. casadi/include/casadi/core/runtime/casadi_polyval.hpp +29 -0
  286. casadi/include/casadi/core/runtime/casadi_print_canonical.hpp +55 -0
  287. casadi/include/casadi/core/runtime/casadi_print_scalar.hpp +25 -0
  288. casadi/include/casadi/core/runtime/casadi_print_vector.hpp +32 -0
  289. casadi/include/casadi/core/runtime/casadi_printme.hpp +26 -0
  290. casadi/include/casadi/core/runtime/casadi_project.hpp +39 -0
  291. casadi/include/casadi/core/runtime/casadi_qp.hpp +86 -0
  292. casadi/include/casadi/core/runtime/casadi_qr.hpp +272 -0
  293. casadi/include/casadi/core/runtime/casadi_qrqp.hpp +1239 -0
  294. casadi/include/casadi/core/runtime/casadi_rank1.hpp +40 -0
  295. casadi/include/casadi/core/runtime/casadi_regularize.hpp +73 -0
  296. casadi/include/casadi/core/runtime/casadi_runtime.hpp +318 -0
  297. casadi/include/casadi/core/runtime/casadi_scal.hpp +26 -0
  298. casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
  299. casadi/include/casadi/core/runtime/casadi_sparsify.hpp +42 -0
  300. casadi/include/casadi/core/runtime/casadi_sparsity.hpp +24 -0
  301. casadi/include/casadi/core/runtime/casadi_sqpmethod.hpp +178 -0
  302. casadi/include/casadi/core/runtime/casadi_sum.hpp +31 -0
  303. casadi/include/casadi/core/runtime/casadi_sum_viol.hpp +37 -0
  304. casadi/include/casadi/core/runtime/casadi_swap.hpp +32 -0
  305. casadi/include/casadi/core/runtime/casadi_trans.hpp +35 -0
  306. casadi/include/casadi/core/runtime/casadi_tri_project.hpp +37 -0
  307. casadi/include/casadi/core/runtime/casadi_trilsolve.hpp +81 -0
  308. casadi/include/casadi/core/runtime/casadi_triusolve.hpp +81 -0
  309. casadi/include/casadi/core/runtime/casadi_vector_fmax.hpp +28 -0
  310. casadi/include/casadi/core/runtime/casadi_vector_fmin.hpp +28 -0
  311. casadi/include/casadi/core/runtime/casadi_vfmax.hpp +28 -0
  312. casadi/include/casadi/core/runtime/casadi_vfmin.hpp +28 -0
  313. casadi/include/casadi/core/runtime/shared.hpp +261 -0
  314. casadi/include/casadi/core/serializer.hpp +264 -0
  315. casadi/include/casadi/core/serializing_stream.hpp +336 -0
  316. casadi/include/casadi/core/shared_object.hpp +182 -0
  317. casadi/include/casadi/core/slice.hpp +149 -0
  318. casadi/include/casadi/core/sparsity.hpp +1507 -0
  319. casadi/include/casadi/core/sparsity_interface.hpp +763 -0
  320. casadi/include/casadi/core/submatrix.hpp +156 -0
  321. casadi/include/casadi/core/sx.hpp +244 -0
  322. casadi/include/casadi/core/sx_elem.hpp +376 -0
  323. casadi/include/casadi/core/sx_fwd.hpp +45 -0
  324. casadi/include/casadi/core/timing.hpp +98 -0
  325. casadi/include/casadi/core/tools.hpp +67 -0
  326. casadi/include/casadi/core/xml_file.hpp +93 -0
  327. casadi/include/casadi/core/xml_node.hpp +212 -0
  328. casadi/include/casadi/doc.i +62244 -0
  329. casadi/include/casadi/doc_merged.i +38499 -0
  330. casadi/include/casadi/mem.h +311 -0
  331. casadi/include/casadi/valgrind-casadi.supp +649 -0
  332. casadi/include/casadi/valgrind-python.supp +3886 -0
  333. casadi/include/coin/BonArraysHelpers.hpp +52 -0
  334. casadi/include/coin/BonAuxInfos.hpp +110 -0
  335. casadi/include/coin/BonBabInfos.hpp +57 -0
  336. casadi/include/coin/BonBabSetupBase.hpp +386 -0
  337. casadi/include/coin/BonBonminSetup.hpp +95 -0
  338. casadi/include/coin/BonBranchingTQP.hpp +197 -0
  339. casadi/include/coin/BonCbc.hpp +127 -0
  340. casadi/include/coin/BonCbcLpStrategy.hpp +45 -0
  341. casadi/include/coin/BonCbcNlpStrategy.hpp +98 -0
  342. casadi/include/coin/BonCbcNode.hpp +133 -0
  343. casadi/include/coin/BonChooseVariable.hpp +345 -0
  344. casadi/include/coin/BonCurvBranchingSolver.hpp +77 -0
  345. casadi/include/coin/BonCutStrengthener.hpp +244 -0
  346. casadi/include/coin/BonDiver.hpp +424 -0
  347. casadi/include/coin/BonDummyHeuristic.hpp +53 -0
  348. casadi/include/coin/BonDummyPump.hpp +43 -0
  349. casadi/include/coin/BonEcpCuts.hpp +97 -0
  350. casadi/include/coin/BonExitCodes.hpp +12 -0
  351. casadi/include/coin/BonFixAndSolveHeuristic.hpp +43 -0
  352. casadi/include/coin/BonGuessHeuristic.hpp +46 -0
  353. casadi/include/coin/BonHeuristicDive.hpp +88 -0
  354. casadi/include/coin/BonHeuristicDiveFractional.hpp +67 -0
  355. casadi/include/coin/BonHeuristicDiveMIP.hpp +83 -0
  356. casadi/include/coin/BonHeuristicDiveMIPFractional.hpp +67 -0
  357. casadi/include/coin/BonHeuristicDiveMIPVectorLength.hpp +74 -0
  358. casadi/include/coin/BonHeuristicDiveVectorLength.hpp +74 -0
  359. casadi/include/coin/BonHeuristicFPump.hpp +111 -0
  360. casadi/include/coin/BonHeuristicLocalBranching.hpp +59 -0
  361. casadi/include/coin/BonHeuristicRINS.hpp +55 -0
  362. casadi/include/coin/BonIpoptInteriorWarmStarter.hpp +103 -0
  363. casadi/include/coin/BonIpoptSolver.hpp +188 -0
  364. casadi/include/coin/BonIpoptWarmStart.hpp +148 -0
  365. casadi/include/coin/BonLinearCutsGenerator.hpp +75 -0
  366. casadi/include/coin/BonLocalSolverBasedHeuristic.hpp +102 -0
  367. casadi/include/coin/BonLpBranchingSolver.hpp +80 -0
  368. casadi/include/coin/BonMilpRounding.hpp +74 -0
  369. casadi/include/coin/BonOACutGenerator2.hpp +56 -0
  370. casadi/include/coin/BonOAMessages.hpp +44 -0
  371. casadi/include/coin/BonOaDecBase.hpp +297 -0
  372. casadi/include/coin/BonOaFeasChecker.hpp +73 -0
  373. casadi/include/coin/BonOaNlpOptim.hpp +116 -0
  374. casadi/include/coin/BonOsiTMINLPInterface.hpp +1342 -0
  375. casadi/include/coin/BonOuterApprox.hpp +123 -0
  376. casadi/include/coin/BonPseudoCosts.hpp +91 -0
  377. casadi/include/coin/BonPumpForMinlp.hpp +45 -0
  378. casadi/include/coin/BonQuadCut.hpp +217 -0
  379. casadi/include/coin/BonQuadRow.hpp +122 -0
  380. casadi/include/coin/BonRegisteredOptions.hpp +225 -0
  381. casadi/include/coin/BonStrongBranchingSolver.hpp +69 -0
  382. casadi/include/coin/BonSubMipSolver.hpp +143 -0
  383. casadi/include/coin/BonTMINLP.hpp +420 -0
  384. casadi/include/coin/BonTMINLP2OsiLP.hpp +164 -0
  385. casadi/include/coin/BonTMINLP2Quad.hpp +191 -0
  386. casadi/include/coin/BonTMINLP2TNLP.hpp +509 -0
  387. casadi/include/coin/BonTMINLPLinObj.hpp +216 -0
  388. casadi/include/coin/BonTMatrix.hpp +167 -0
  389. casadi/include/coin/BonTNLP2FPNLP.hpp +264 -0
  390. casadi/include/coin/BonTNLPSolver.hpp +241 -0
  391. casadi/include/coin/BonTypes.hpp +95 -0
  392. casadi/include/coin/BonminConfig.h +19 -0
  393. casadi/include/coin/CbcBranchActual.hpp +26 -0
  394. casadi/include/coin/CbcBranchAllDifferent.hpp +61 -0
  395. casadi/include/coin/CbcBranchBase.hpp +79 -0
  396. casadi/include/coin/CbcBranchCut.hpp +182 -0
  397. casadi/include/coin/CbcBranchDecision.hpp +135 -0
  398. casadi/include/coin/CbcBranchDefaultDecision.hpp +101 -0
  399. casadi/include/coin/CbcBranchDynamic.hpp +210 -0
  400. casadi/include/coin/CbcBranchLotsize.hpp +249 -0
  401. casadi/include/coin/CbcBranchToFixLots.hpp +94 -0
  402. casadi/include/coin/CbcBranchingObject.hpp +245 -0
  403. casadi/include/coin/CbcClique.hpp +309 -0
  404. casadi/include/coin/CbcCompare.hpp +46 -0
  405. casadi/include/coin/CbcCompareActual.hpp +16 -0
  406. casadi/include/coin/CbcCompareBase.hpp +155 -0
  407. casadi/include/coin/CbcCompareDefault.hpp +129 -0
  408. casadi/include/coin/CbcCompareDepth.hpp +48 -0
  409. casadi/include/coin/CbcCompareEstimate.hpp +48 -0
  410. casadi/include/coin/CbcCompareObjective.hpp +50 -0
  411. casadi/include/coin/CbcConfig.h +18 -0
  412. casadi/include/coin/CbcConsequence.hpp +50 -0
  413. casadi/include/coin/CbcCountRowCut.hpp +176 -0
  414. casadi/include/coin/CbcCutGenerator.hpp +550 -0
  415. casadi/include/coin/CbcCutModifier.hpp +59 -0
  416. casadi/include/coin/CbcCutSubsetModifier.hpp +69 -0
  417. casadi/include/coin/CbcDummyBranchingObject.hpp +83 -0
  418. casadi/include/coin/CbcEventHandler.hpp +250 -0
  419. casadi/include/coin/CbcFathom.hpp +136 -0
  420. casadi/include/coin/CbcFathomDynamicProgramming.hpp +177 -0
  421. casadi/include/coin/CbcFeasibilityBase.hpp +60 -0
  422. casadi/include/coin/CbcFixVariable.hpp +68 -0
  423. casadi/include/coin/CbcFollowOn.hpp +207 -0
  424. casadi/include/coin/CbcFullNodeInfo.hpp +171 -0
  425. casadi/include/coin/CbcGeneral.hpp +60 -0
  426. casadi/include/coin/CbcGeneralDepth.hpp +289 -0
  427. casadi/include/coin/CbcHeuristic.hpp +735 -0
  428. casadi/include/coin/CbcHeuristicDINS.hpp +98 -0
  429. casadi/include/coin/CbcHeuristicDW.hpp +374 -0
  430. casadi/include/coin/CbcHeuristicDive.hpp +198 -0
  431. casadi/include/coin/CbcHeuristicDiveCoefficient.hpp +52 -0
  432. casadi/include/coin/CbcHeuristicDiveFractional.hpp +52 -0
  433. casadi/include/coin/CbcHeuristicDiveGuided.hpp +55 -0
  434. casadi/include/coin/CbcHeuristicDiveLineSearch.hpp +52 -0
  435. casadi/include/coin/CbcHeuristicDivePseudoCost.hpp +60 -0
  436. casadi/include/coin/CbcHeuristicDiveVectorLength.hpp +52 -0
  437. casadi/include/coin/CbcHeuristicFPump.hpp +375 -0
  438. casadi/include/coin/CbcHeuristicGreedy.hpp +289 -0
  439. casadi/include/coin/CbcHeuristicLocal.hpp +276 -0
  440. casadi/include/coin/CbcHeuristicPivotAndFix.hpp +58 -0
  441. casadi/include/coin/CbcHeuristicRENS.hpp +79 -0
  442. casadi/include/coin/CbcHeuristicRINS.hpp +106 -0
  443. casadi/include/coin/CbcHeuristicRandRound.hpp +58 -0
  444. casadi/include/coin/CbcHeuristicVND.hpp +95 -0
  445. casadi/include/coin/CbcLinked.hpp +1443 -0
  446. casadi/include/coin/CbcMessage.hpp +94 -0
  447. casadi/include/coin/CbcMipStartIO.hpp +29 -0
  448. casadi/include/coin/CbcModel.hpp +3296 -0
  449. casadi/include/coin/CbcNWay.hpp +171 -0
  450. casadi/include/coin/CbcNode.hpp +380 -0
  451. casadi/include/coin/CbcNodeInfo.hpp +377 -0
  452. casadi/include/coin/CbcObject.hpp +288 -0
  453. casadi/include/coin/CbcObjectUpdateData.hpp +63 -0
  454. casadi/include/coin/CbcOrClpParam.cpp +4321 -0
  455. casadi/include/coin/CbcOrClpParam.hpp +585 -0
  456. casadi/include/coin/CbcParam.hpp +338 -0
  457. casadi/include/coin/CbcPartialNodeInfo.hpp +116 -0
  458. casadi/include/coin/CbcSOS.hpp +290 -0
  459. casadi/include/coin/CbcSimpleInteger.hpp +299 -0
  460. casadi/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp +619 -0
  461. casadi/include/coin/CbcSimpleIntegerPseudoCost.hpp +122 -0
  462. casadi/include/coin/CbcSolver.hpp +460 -0
  463. casadi/include/coin/CbcStrategy.hpp +269 -0
  464. casadi/include/coin/CbcSubProblem.hpp +84 -0
  465. casadi/include/coin/CbcTree.hpp +493 -0
  466. casadi/include/coin/CbcTreeLocal.hpp +393 -0
  467. casadi/include/coin/Cbc_C_Interface.h +904 -0
  468. casadi/include/coin/Cgl012cut.hpp +464 -0
  469. casadi/include/coin/CglAllDifferent.hpp +115 -0
  470. casadi/include/coin/CglClique.hpp +312 -0
  471. casadi/include/coin/CglConfig.h +19 -0
  472. casadi/include/coin/CglCutGenerator.hpp +133 -0
  473. casadi/include/coin/CglDuplicateRow.hpp +189 -0
  474. casadi/include/coin/CglFlowCover.hpp +371 -0
  475. casadi/include/coin/CglGMI.hpp +364 -0
  476. casadi/include/coin/CglGMIParam.hpp +313 -0
  477. casadi/include/coin/CglGomory.hpp +204 -0
  478. casadi/include/coin/CglKnapsackCover.hpp +310 -0
  479. casadi/include/coin/CglLandP.hpp +306 -0
  480. casadi/include/coin/CglLandPValidator.hpp +130 -0
  481. casadi/include/coin/CglLiftAndProject.hpp +104 -0
  482. casadi/include/coin/CglMessage.hpp +49 -0
  483. casadi/include/coin/CglMixedIntegerRounding.hpp +429 -0
  484. casadi/include/coin/CglMixedIntegerRounding2.hpp +427 -0
  485. casadi/include/coin/CglOddHole.hpp +160 -0
  486. casadi/include/coin/CglParam.hpp +93 -0
  487. casadi/include/coin/CglPreProcess.hpp +600 -0
  488. casadi/include/coin/CglProbing.hpp +543 -0
  489. casadi/include/coin/CglRedSplit.hpp +448 -0
  490. casadi/include/coin/CglRedSplit2.hpp +494 -0
  491. casadi/include/coin/CglRedSplit2Param.hpp +495 -0
  492. casadi/include/coin/CglRedSplitParam.hpp +272 -0
  493. casadi/include/coin/CglResidualCapacity.hpp +240 -0
  494. casadi/include/coin/CglSimpleRounding.hpp +174 -0
  495. casadi/include/coin/CglStored.hpp +140 -0
  496. casadi/include/coin/CglTreeInfo.hpp +216 -0
  497. casadi/include/coin/CglTwomir.hpp +562 -0
  498. casadi/include/coin/CglZeroHalf.hpp +133 -0
  499. casadi/include/coin/ClpAmplObjective.hpp +113 -0
  500. casadi/include/coin/ClpCholeskyBase.hpp +321 -0
  501. casadi/include/coin/ClpCholeskyDense.hpp +157 -0
  502. casadi/include/coin/ClpCholeskyMumps.hpp +65 -0
  503. casadi/include/coin/ClpCholeskyPardiso.hpp +67 -0
  504. casadi/include/coin/ClpConfig.h +17 -0
  505. casadi/include/coin/ClpConstraint.hpp +129 -0
  506. casadi/include/coin/ClpConstraintAmpl.hpp +109 -0
  507. casadi/include/coin/ClpConstraintLinear.hpp +113 -0
  508. casadi/include/coin/ClpConstraintQuadratic.hpp +123 -0
  509. casadi/include/coin/ClpDualRowDantzig.hpp +72 -0
  510. casadi/include/coin/ClpDualRowPivot.hpp +136 -0
  511. casadi/include/coin/ClpDualRowSteepest.hpp +160 -0
  512. casadi/include/coin/ClpDummyMatrix.hpp +186 -0
  513. casadi/include/coin/ClpDynamicExampleMatrix.hpp +199 -0
  514. casadi/include/coin/ClpDynamicMatrix.hpp +420 -0
  515. casadi/include/coin/ClpEventHandler.hpp +193 -0
  516. casadi/include/coin/ClpFactorization.hpp +556 -0
  517. casadi/include/coin/ClpGubDynamicMatrix.hpp +270 -0
  518. casadi/include/coin/ClpGubMatrix.hpp +373 -0
  519. casadi/include/coin/ClpInterior.hpp +622 -0
  520. casadi/include/coin/ClpLinearObjective.hpp +104 -0
  521. casadi/include/coin/ClpMatrixBase.hpp +561 -0
  522. casadi/include/coin/ClpMessage.hpp +131 -0
  523. casadi/include/coin/ClpModel.hpp +1442 -0
  524. casadi/include/coin/ClpNetworkMatrix.hpp +235 -0
  525. casadi/include/coin/ClpNode.hpp +364 -0
  526. casadi/include/coin/ClpNonLinearCost.hpp +432 -0
  527. casadi/include/coin/ClpObjective.hpp +142 -0
  528. casadi/include/coin/ClpPEDualRowDantzig.hpp +84 -0
  529. casadi/include/coin/ClpPEDualRowSteepest.hpp +100 -0
  530. casadi/include/coin/ClpPEPrimalColumnDantzig.hpp +71 -0
  531. casadi/include/coin/ClpPEPrimalColumnSteepest.hpp +107 -0
  532. casadi/include/coin/ClpPESimplex.hpp +231 -0
  533. casadi/include/coin/ClpPackedMatrix.hpp +778 -0
  534. casadi/include/coin/ClpParameters.hpp +132 -0
  535. casadi/include/coin/ClpPdcoBase.hpp +110 -0
  536. casadi/include/coin/ClpPlusMinusOneMatrix.hpp +565 -0
  537. casadi/include/coin/ClpPresolve.hpp +379 -0
  538. casadi/include/coin/ClpPrimalColumnDantzig.hpp +74 -0
  539. casadi/include/coin/ClpPrimalColumnPivot.hpp +163 -0
  540. casadi/include/coin/ClpPrimalColumnSteepest.hpp +281 -0
  541. casadi/include/coin/ClpQuadraticObjective.hpp +161 -0
  542. casadi/include/coin/ClpSimplex.hpp +2137 -0
  543. casadi/include/coin/ClpSimplexDual.hpp +304 -0
  544. casadi/include/coin/ClpSimplexNonlinear.hpp +117 -0
  545. casadi/include/coin/ClpSimplexOther.hpp +282 -0
  546. casadi/include/coin/ClpSimplexPrimal.hpp +244 -0
  547. casadi/include/coin/ClpSolve.hpp +505 -0
  548. casadi/include/coin/Clp_C_Interface.h +554 -0
  549. casadi/include/coin/CoinAlloc.hpp +179 -0
  550. casadi/include/coin/CoinBuild.hpp +159 -0
  551. casadi/include/coin/CoinDenseFactorization.hpp +452 -0
  552. casadi/include/coin/CoinDenseVector.hpp +401 -0
  553. casadi/include/coin/CoinDistance.hpp +51 -0
  554. casadi/include/coin/CoinError.hpp +274 -0
  555. casadi/include/coin/CoinFactorization.hpp +2178 -0
  556. casadi/include/coin/CoinFileIO.hpp +185 -0
  557. casadi/include/coin/CoinFinite.hpp +37 -0
  558. casadi/include/coin/CoinFloatEqual.hpp +204 -0
  559. casadi/include/coin/CoinHelperFunctions.hpp +1270 -0
  560. casadi/include/coin/CoinIndexedVector.hpp +1437 -0
  561. casadi/include/coin/CoinLpIO.hpp +836 -0
  562. casadi/include/coin/CoinMessage.hpp +95 -0
  563. casadi/include/coin/CoinMessageHandler.hpp +717 -0
  564. casadi/include/coin/CoinModel.hpp +1214 -0
  565. casadi/include/coin/CoinModelUseful.hpp +518 -0
  566. casadi/include/coin/CoinMpsIO.hpp +1142 -0
  567. casadi/include/coin/CoinOslFactorization.hpp +287 -0
  568. casadi/include/coin/CoinPackedMatrix.hpp +956 -0
  569. casadi/include/coin/CoinPackedVector.hpp +670 -0
  570. casadi/include/coin/CoinPackedVectorBase.hpp +274 -0
  571. casadi/include/coin/CoinParam.hpp +644 -0
  572. casadi/include/coin/CoinPragma.hpp +29 -0
  573. casadi/include/coin/CoinPresolveDoubleton.hpp +76 -0
  574. casadi/include/coin/CoinPresolveDual.hpp +84 -0
  575. casadi/include/coin/CoinPresolveDupcol.hpp +259 -0
  576. casadi/include/coin/CoinPresolveEmpty.hpp +120 -0
  577. casadi/include/coin/CoinPresolveFixed.hpp +185 -0
  578. casadi/include/coin/CoinPresolveForcing.hpp +69 -0
  579. casadi/include/coin/CoinPresolveImpliedFree.hpp +66 -0
  580. casadi/include/coin/CoinPresolveIsolated.hpp +59 -0
  581. casadi/include/coin/CoinPresolveMatrix.hpp +1996 -0
  582. casadi/include/coin/CoinPresolveMonitor.hpp +105 -0
  583. casadi/include/coin/CoinPresolvePsdebug.hpp +169 -0
  584. casadi/include/coin/CoinPresolveSingleton.hpp +115 -0
  585. casadi/include/coin/CoinPresolveSubst.hpp +103 -0
  586. casadi/include/coin/CoinPresolveTighten.hpp +58 -0
  587. casadi/include/coin/CoinPresolveTripleton.hpp +69 -0
  588. casadi/include/coin/CoinPresolveUseless.hpp +63 -0
  589. casadi/include/coin/CoinPresolveZeros.hpp +65 -0
  590. casadi/include/coin/CoinRational.hpp +43 -0
  591. casadi/include/coin/CoinSearchTree.hpp +523 -0
  592. casadi/include/coin/CoinShallowPackedVector.hpp +149 -0
  593. casadi/include/coin/CoinSignal.hpp +127 -0
  594. casadi/include/coin/CoinSimpFactorization.hpp +432 -0
  595. casadi/include/coin/CoinSmartPtr.hpp +548 -0
  596. casadi/include/coin/CoinSnapshot.hpp +572 -0
  597. casadi/include/coin/CoinSort.hpp +753 -0
  598. casadi/include/coin/CoinStructuredModel.hpp +270 -0
  599. casadi/include/coin/CoinTime.hpp +350 -0
  600. casadi/include/coin/CoinTypes.hpp +67 -0
  601. casadi/include/coin/CoinUtility.hpp +26 -0
  602. casadi/include/coin/CoinUtilsConfig.h +34 -0
  603. casadi/include/coin/CoinWarmStart.hpp +56 -0
  604. casadi/include/coin/CoinWarmStartBasis.hpp +468 -0
  605. casadi/include/coin/CoinWarmStartDual.hpp +180 -0
  606. casadi/include/coin/CoinWarmStartPrimalDual.hpp +233 -0
  607. casadi/include/coin/CoinWarmStartVector.hpp +523 -0
  608. casadi/include/coin/Coin_C_defines.h +149 -0
  609. casadi/include/coin/Idiot.hpp +327 -0
  610. casadi/include/coin/OsiAuxInfo.hpp +261 -0
  611. casadi/include/coin/OsiBranchingObject.hpp +1097 -0
  612. casadi/include/coin/OsiCbcSolverInterface.hpp +791 -0
  613. casadi/include/coin/OsiChooseVariable.hpp +645 -0
  614. casadi/include/coin/OsiClpSolverInterface.hpp +1604 -0
  615. casadi/include/coin/OsiColCut.hpp +322 -0
  616. casadi/include/coin/OsiCollections.hpp +34 -0
  617. casadi/include/coin/OsiConfig.h +19 -0
  618. casadi/include/coin/OsiCut.hpp +251 -0
  619. casadi/include/coin/OsiCuts.hpp +505 -0
  620. casadi/include/coin/OsiPresolve.hpp +272 -0
  621. casadi/include/coin/OsiRowCut.hpp +345 -0
  622. casadi/include/coin/OsiRowCutDebugger.hpp +190 -0
  623. casadi/include/coin/OsiSolverBranch.hpp +169 -0
  624. casadi/include/coin/OsiSolverInterface.hpp +2221 -0
  625. casadi/include/coin/OsiSolverParameters.hpp +144 -0
  626. casadi/include/coin/OsiUnitTests.hpp +390 -0
  627. casadi/include/coin-or/IpAlgBuilder.hpp +417 -0
  628. casadi/include/coin-or/IpAlgStrategy.hpp +201 -0
  629. casadi/include/coin-or/IpAlgTypes.hpp +64 -0
  630. casadi/include/coin-or/IpAugSystemSolver.hpp +212 -0
  631. casadi/include/coin-or/IpBlas.hpp +426 -0
  632. casadi/include/coin-or/IpCachedResults.hpp +897 -0
  633. casadi/include/coin-or/IpCompoundMatrix.hpp +423 -0
  634. casadi/include/coin-or/IpCompoundSymMatrix.hpp +348 -0
  635. casadi/include/coin-or/IpCompoundVector.hpp +395 -0
  636. casadi/include/coin-or/IpConvCheck.hpp +97 -0
  637. casadi/include/coin-or/IpDebug.hpp +167 -0
  638. casadi/include/coin-or/IpDenseVector.hpp +626 -0
  639. casadi/include/coin-or/IpDiagMatrix.hpp +158 -0
  640. casadi/include/coin-or/IpEqMultCalculator.hpp +76 -0
  641. casadi/include/coin-or/IpException.hpp +156 -0
  642. casadi/include/coin-or/IpExpansionMatrix.hpp +245 -0
  643. casadi/include/coin-or/IpGenTMatrix.hpp +290 -0
  644. casadi/include/coin-or/IpHessianUpdater.hpp +73 -0
  645. casadi/include/coin-or/IpIdentityMatrix.hpp +167 -0
  646. casadi/include/coin-or/IpIpoptAlg.hpp +257 -0
  647. casadi/include/coin-or/IpIpoptApplication.hpp +367 -0
  648. casadi/include/coin-or/IpIpoptCalculatedQuantities.hpp +1009 -0
  649. casadi/include/coin-or/IpIpoptData.hpp +966 -0
  650. casadi/include/coin-or/IpIpoptNLP.hpp +328 -0
  651. casadi/include/coin-or/IpIterateInitializer.hpp +68 -0
  652. casadi/include/coin-or/IpIteratesVector.hpp +840 -0
  653. casadi/include/coin-or/IpIterationOutput.hpp +78 -0
  654. casadi/include/coin-or/IpJournalist.hpp +573 -0
  655. casadi/include/coin-or/IpLapack.hpp +227 -0
  656. casadi/include/coin-or/IpLibraryLoader.hpp +76 -0
  657. casadi/include/coin-or/IpLineSearch.hpp +106 -0
  658. casadi/include/coin-or/IpLinearSolvers.h +46 -0
  659. casadi/include/coin-or/IpMatrix.hpp +434 -0
  660. casadi/include/coin-or/IpMuUpdate.hpp +77 -0
  661. casadi/include/coin-or/IpNLP.hpp +306 -0
  662. casadi/include/coin-or/IpNLPScaling.hpp +582 -0
  663. casadi/include/coin-or/IpObserver.hpp +422 -0
  664. casadi/include/coin-or/IpOptionsList.hpp +412 -0
  665. casadi/include/coin-or/IpOrigIpoptNLP.hpp +603 -0
  666. casadi/include/coin-or/IpPDSystemSolver.hpp +137 -0
  667. casadi/include/coin-or/IpReferenced.hpp +262 -0
  668. casadi/include/coin-or/IpRegOptions.hpp +1152 -0
  669. casadi/include/coin-or/IpReturnCodes.h +23 -0
  670. casadi/include/coin-or/IpReturnCodes.hpp +18 -0
  671. casadi/include/coin-or/IpReturnCodes.inc +71 -0
  672. casadi/include/coin-or/IpReturnCodes_inc.h +45 -0
  673. casadi/include/coin-or/IpScaledMatrix.hpp +291 -0
  674. casadi/include/coin-or/IpSearchDirCalculator.hpp +72 -0
  675. casadi/include/coin-or/IpSmartPtr.hpp +865 -0
  676. casadi/include/coin-or/IpSolveStatistics.hpp +210 -0
  677. casadi/include/coin-or/IpSparseSymLinearSolverInterface.hpp +260 -0
  678. casadi/include/coin-or/IpStdAugSystemSolver.cpp +555 -0
  679. casadi/include/coin-or/IpStdCInterface.h +428 -0
  680. casadi/include/coin-or/IpSumSymMatrix.hpp +186 -0
  681. casadi/include/coin-or/IpSymLinearSolver.hpp +141 -0
  682. casadi/include/coin-or/IpSymMatrix.hpp +167 -0
  683. casadi/include/coin-or/IpSymScaledMatrix.hpp +255 -0
  684. casadi/include/coin-or/IpSymTMatrix.hpp +275 -0
  685. casadi/include/coin-or/IpTNLP.hpp +820 -0
  686. casadi/include/coin-or/IpTNLPAdapter.hpp +648 -0
  687. casadi/include/coin-or/IpTNLPReducer.hpp +274 -0
  688. casadi/include/coin-or/IpTaggedObject.hpp +128 -0
  689. casadi/include/coin-or/IpTimedTask.hpp +218 -0
  690. casadi/include/coin-or/IpTimingStatistics.hpp +323 -0
  691. casadi/include/coin-or/IpTripletHelper.hpp +308 -0
  692. casadi/include/coin-or/IpTypes.h +81 -0
  693. casadi/include/coin-or/IpTypes.hpp +30 -0
  694. casadi/include/coin-or/IpUtils.hpp +166 -0
  695. casadi/include/coin-or/IpVector.hpp +892 -0
  696. casadi/include/coin-or/IpZeroSymMatrix.hpp +155 -0
  697. casadi/include/coin-or/IpoptConfig.h +45 -0
  698. casadi/include/coin-or/SensAlgorithm.hpp +114 -0
  699. casadi/include/coin-or/SensApplication.hpp +188 -0
  700. casadi/include/coin-or/SensBacksolver.hpp +36 -0
  701. casadi/include/coin-or/SensMeasurement.hpp +56 -0
  702. casadi/include/coin-or/SensPCalculator.hpp +137 -0
  703. casadi/include/coin-or/SensRegOp.hpp +21 -0
  704. casadi/include/coin-or/SensSchurData.hpp +182 -0
  705. casadi/include/coin-or/SensSchurDriver.hpp +118 -0
  706. casadi/include/coin-or/SensSimpleBacksolver.hpp +49 -0
  707. casadi/include/coin-or/SensStepCalc.hpp +85 -0
  708. casadi/include/coin-or/SensUtils.hpp +63 -0
  709. casadi/include/coin-or/metis/defs.h +161 -0
  710. casadi/include/coin-or/metis/macros.h +143 -0
  711. casadi/include/coin-or/metis/metis.h +37 -0
  712. casadi/include/coin-or/metis/proto.h +505 -0
  713. casadi/include/coin-or/metis/rename.h +418 -0
  714. casadi/include/coin-or/metis/struct.h +251 -0
  715. casadi/include/coin-or/mumps/dmumps_c.h +142 -0
  716. casadi/include/coin-or/mumps/mumps_c_types.h +72 -0
  717. casadi/include/coin-or/mumps/mumps_compat.h +27 -0
  718. casadi/include/coin-or/mumps/mumps_int_def.h +11 -0
  719. casadi/include/coin-or/mumps/mumps_mpi.h +67 -0
  720. casadi/include/d_blas.h +78 -0
  721. casadi/include/d_blas_64.h +73 -0
  722. casadi/include/daqp/api.h +46 -0
  723. casadi/include/daqp/auxiliary.h +29 -0
  724. casadi/include/daqp/bnb.h +32 -0
  725. casadi/include/daqp/codegen.h +18 -0
  726. casadi/include/daqp/constants.h +92 -0
  727. casadi/include/daqp/daqp.h +22 -0
  728. casadi/include/daqp/daqp_prox.h +18 -0
  729. casadi/include/daqp/factorization.h +18 -0
  730. casadi/include/daqp/types.h +161 -0
  731. casadi/include/daqp/utils.h +44 -0
  732. casadi/include/eigen3/Eigen/Cholesky +45 -0
  733. casadi/include/eigen3/Eigen/CholmodSupport +48 -0
  734. casadi/include/eigen3/Eigen/Core +384 -0
  735. casadi/include/eigen3/Eigen/Dense +7 -0
  736. casadi/include/eigen3/Eigen/Eigen +2 -0
  737. casadi/include/eigen3/Eigen/Eigenvalues +60 -0
  738. casadi/include/eigen3/Eigen/Geometry +59 -0
  739. casadi/include/eigen3/Eigen/Householder +29 -0
  740. casadi/include/eigen3/Eigen/IterativeLinearSolvers +48 -0
  741. casadi/include/eigen3/Eigen/Jacobi +32 -0
  742. casadi/include/eigen3/Eigen/KLUSupport +41 -0
  743. casadi/include/eigen3/Eigen/LU +47 -0
  744. casadi/include/eigen3/Eigen/MetisSupport +35 -0
  745. casadi/include/eigen3/Eigen/OrderingMethods +70 -0
  746. casadi/include/eigen3/Eigen/PaStiXSupport +49 -0
  747. casadi/include/eigen3/Eigen/PardisoSupport +35 -0
  748. casadi/include/eigen3/Eigen/QR +50 -0
  749. casadi/include/eigen3/Eigen/QtAlignedMalloc +39 -0
  750. casadi/include/eigen3/Eigen/SPQRSupport +34 -0
  751. casadi/include/eigen3/Eigen/SVD +50 -0
  752. casadi/include/eigen3/Eigen/Sparse +34 -0
  753. casadi/include/eigen3/Eigen/SparseCholesky +37 -0
  754. casadi/include/eigen3/Eigen/SparseCore +69 -0
  755. casadi/include/eigen3/Eigen/SparseLU +50 -0
  756. casadi/include/eigen3/Eigen/SparseQR +36 -0
  757. casadi/include/eigen3/Eigen/StdDeque +27 -0
  758. casadi/include/eigen3/Eigen/StdList +26 -0
  759. casadi/include/eigen3/Eigen/StdVector +27 -0
  760. casadi/include/eigen3/Eigen/SuperLUSupport +64 -0
  761. casadi/include/eigen3/Eigen/UmfPackSupport +40 -0
  762. casadi/include/eigen3/Eigen/src/Cholesky/LDLT.h +688 -0
  763. casadi/include/eigen3/Eigen/src/Cholesky/LLT.h +558 -0
  764. casadi/include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
  765. casadi/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
  766. casadi/include/eigen3/Eigen/src/Core/ArithmeticSequence.h +413 -0
  767. casadi/include/eigen3/Eigen/src/Core/Array.h +417 -0
  768. casadi/include/eigen3/Eigen/src/Core/ArrayBase.h +226 -0
  769. casadi/include/eigen3/Eigen/src/Core/ArrayWrapper.h +209 -0
  770. casadi/include/eigen3/Eigen/src/Core/Assign.h +90 -0
  771. casadi/include/eigen3/Eigen/src/Core/AssignEvaluator.h +1010 -0
  772. casadi/include/eigen3/Eigen/src/Core/Assign_MKL.h +178 -0
  773. casadi/include/eigen3/Eigen/src/Core/BandMatrix.h +353 -0
  774. casadi/include/eigen3/Eigen/src/Core/Block.h +448 -0
  775. casadi/include/eigen3/Eigen/src/Core/BooleanRedux.h +162 -0
  776. casadi/include/eigen3/Eigen/src/Core/CommaInitializer.h +164 -0
  777. casadi/include/eigen3/Eigen/src/Core/ConditionEstimator.h +175 -0
  778. casadi/include/eigen3/Eigen/src/Core/CoreEvaluators.h +1741 -0
  779. casadi/include/eigen3/Eigen/src/Core/CoreIterators.h +132 -0
  780. casadi/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h +183 -0
  781. casadi/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
  782. casadi/include/eigen3/Eigen/src/Core/CwiseTernaryOp.h +197 -0
  783. casadi/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h +103 -0
  784. casadi/include/eigen3/Eigen/src/Core/CwiseUnaryView.h +132 -0
  785. casadi/include/eigen3/Eigen/src/Core/DenseBase.h +701 -0
  786. casadi/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h +685 -0
  787. casadi/include/eigen3/Eigen/src/Core/DenseStorage.h +652 -0
  788. casadi/include/eigen3/Eigen/src/Core/Diagonal.h +258 -0
  789. casadi/include/eigen3/Eigen/src/Core/DiagonalMatrix.h +391 -0
  790. casadi/include/eigen3/Eigen/src/Core/DiagonalProduct.h +28 -0
  791. casadi/include/eigen3/Eigen/src/Core/Dot.h +318 -0
  792. casadi/include/eigen3/Eigen/src/Core/EigenBase.h +160 -0
  793. casadi/include/eigen3/Eigen/src/Core/ForceAlignedAccess.h +150 -0
  794. casadi/include/eigen3/Eigen/src/Core/Fuzzy.h +155 -0
  795. casadi/include/eigen3/Eigen/src/Core/GeneralProduct.h +465 -0
  796. casadi/include/eigen3/Eigen/src/Core/GenericPacketMath.h +1040 -0
  797. casadi/include/eigen3/Eigen/src/Core/GlobalFunctions.h +194 -0
  798. casadi/include/eigen3/Eigen/src/Core/IO.h +258 -0
  799. casadi/include/eigen3/Eigen/src/Core/IndexedView.h +237 -0
  800. casadi/include/eigen3/Eigen/src/Core/Inverse.h +117 -0
  801. casadi/include/eigen3/Eigen/src/Core/Map.h +171 -0
  802. casadi/include/eigen3/Eigen/src/Core/MapBase.h +310 -0
  803. casadi/include/eigen3/Eigen/src/Core/MathFunctions.h +2057 -0
  804. casadi/include/eigen3/Eigen/src/Core/MathFunctionsImpl.h +200 -0
  805. casadi/include/eigen3/Eigen/src/Core/Matrix.h +565 -0
  806. casadi/include/eigen3/Eigen/src/Core/MatrixBase.h +547 -0
  807. casadi/include/eigen3/Eigen/src/Core/NestByValue.h +85 -0
  808. casadi/include/eigen3/Eigen/src/Core/NoAlias.h +109 -0
  809. casadi/include/eigen3/Eigen/src/Core/NumTraits.h +335 -0
  810. casadi/include/eigen3/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
  811. casadi/include/eigen3/Eigen/src/Core/PermutationMatrix.h +605 -0
  812. casadi/include/eigen3/Eigen/src/Core/PlainObjectBase.h +1128 -0
  813. casadi/include/eigen3/Eigen/src/Core/Product.h +191 -0
  814. casadi/include/eigen3/Eigen/src/Core/ProductEvaluators.h +1179 -0
  815. casadi/include/eigen3/Eigen/src/Core/Random.h +218 -0
  816. casadi/include/eigen3/Eigen/src/Core/Redux.h +515 -0
  817. casadi/include/eigen3/Eigen/src/Core/Ref.h +381 -0
  818. casadi/include/eigen3/Eigen/src/Core/Replicate.h +142 -0
  819. casadi/include/eigen3/Eigen/src/Core/Reshaped.h +454 -0
  820. casadi/include/eigen3/Eigen/src/Core/ReturnByValue.h +119 -0
  821. casadi/include/eigen3/Eigen/src/Core/Reverse.h +217 -0
  822. casadi/include/eigen3/Eigen/src/Core/Select.h +164 -0
  823. casadi/include/eigen3/Eigen/src/Core/SelfAdjointView.h +365 -0
  824. casadi/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
  825. casadi/include/eigen3/Eigen/src/Core/Solve.h +188 -0
  826. casadi/include/eigen3/Eigen/src/Core/SolveTriangular.h +235 -0
  827. casadi/include/eigen3/Eigen/src/Core/SolverBase.h +168 -0
  828. casadi/include/eigen3/Eigen/src/Core/StableNorm.h +251 -0
  829. casadi/include/eigen3/Eigen/src/Core/StlIterators.h +463 -0
  830. casadi/include/eigen3/Eigen/src/Core/Stride.h +116 -0
  831. casadi/include/eigen3/Eigen/src/Core/Swap.h +68 -0
  832. casadi/include/eigen3/Eigen/src/Core/Transpose.h +464 -0
  833. casadi/include/eigen3/Eigen/src/Core/Transpositions.h +386 -0
  834. casadi/include/eigen3/Eigen/src/Core/TriangularMatrix.h +1001 -0
  835. casadi/include/eigen3/Eigen/src/Core/VectorBlock.h +96 -0
  836. casadi/include/eigen3/Eigen/src/Core/VectorwiseOp.h +784 -0
  837. casadi/include/eigen3/Eigen/src/Core/Visitor.h +381 -0
  838. casadi/include/eigen3/Eigen/src/Core/arch/AVX/Complex.h +372 -0
  839. casadi/include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
  840. casadi/include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
  841. casadi/include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
  842. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
  843. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
  844. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
  845. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
  846. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
  847. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
  848. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
  849. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
  850. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
  851. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
  852. casadi/include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
  853. casadi/include/eigen3/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
  854. casadi/include/eigen3/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
  855. casadi/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
  856. casadi/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
  857. casadi/include/eigen3/Eigen/src/Core/arch/Default/Half.h +942 -0
  858. casadi/include/eigen3/Eigen/src/Core/arch/Default/Settings.h +49 -0
  859. casadi/include/eigen3/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
  860. casadi/include/eigen3/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
  861. casadi/include/eigen3/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
  862. casadi/include/eigen3/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
  863. casadi/include/eigen3/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
  864. casadi/include/eigen3/Eigen/src/Core/arch/MSA/Complex.h +648 -0
  865. casadi/include/eigen3/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
  866. casadi/include/eigen3/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
  867. casadi/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h +584 -0
  868. casadi/include/eigen3/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
  869. casadi/include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
  870. casadi/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
  871. casadi/include/eigen3/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
  872. casadi/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h +351 -0
  873. casadi/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
  874. casadi/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
  875. casadi/include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
  876. casadi/include/eigen3/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
  877. casadi/include/eigen3/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
  878. casadi/include/eigen3/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
  879. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
  880. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
  881. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
  882. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
  883. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
  884. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
  885. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
  886. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
  887. casadi/include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
  888. casadi/include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
  889. casadi/include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
  890. casadi/include/eigen3/Eigen/src/Core/functors/StlFunctors.h +166 -0
  891. casadi/include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
  892. casadi/include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
  893. casadi/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
  894. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
  895. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
  896. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
  897. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
  898. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
  899. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
  900. casadi/include/eigen3/Eigen/src/Core/products/Parallelizer.h +180 -0
  901. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
  902. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
  903. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
  904. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
  905. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
  906. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
  907. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
  908. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
  909. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
  910. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
  911. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
  912. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
  913. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
  914. casadi/include/eigen3/Eigen/src/Core/util/BlasUtil.h +583 -0
  915. casadi/include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
  916. casadi/include/eigen3/Eigen/src/Core/util/Constants.h +563 -0
  917. casadi/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
  918. casadi/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
  919. casadi/include/eigen3/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
  920. casadi/include/eigen3/Eigen/src/Core/util/IntegralConstant.h +272 -0
  921. casadi/include/eigen3/Eigen/src/Core/util/MKL_support.h +137 -0
  922. casadi/include/eigen3/Eigen/src/Core/util/Macros.h +1464 -0
  923. casadi/include/eigen3/Eigen/src/Core/util/Memory.h +1163 -0
  924. casadi/include/eigen3/Eigen/src/Core/util/Meta.h +812 -0
  925. casadi/include/eigen3/Eigen/src/Core/util/NonMPL2.h +3 -0
  926. casadi/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
  927. casadi/include/eigen3/Eigen/src/Core/util/ReshapedHelper.h +51 -0
  928. casadi/include/eigen3/Eigen/src/Core/util/StaticAssert.h +221 -0
  929. casadi/include/eigen3/Eigen/src/Core/util/SymbolicIndex.h +293 -0
  930. casadi/include/eigen3/Eigen/src/Core/util/XprHelper.h +856 -0
  931. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
  932. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
  933. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
  934. casadi/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
  935. casadi/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
  936. casadi/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
  937. casadi/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
  938. casadi/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
  939. casadi/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h +657 -0
  940. casadi/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h +558 -0
  941. casadi/include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
  942. casadi/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
  943. casadi/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
  944. casadi/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
  945. casadi/include/eigen3/Eigen/src/Geometry/AlignedBox.h +486 -0
  946. casadi/include/eigen3/Eigen/src/Geometry/AngleAxis.h +247 -0
  947. casadi/include/eigen3/Eigen/src/Geometry/EulerAngles.h +114 -0
  948. casadi/include/eigen3/Eigen/src/Geometry/Homogeneous.h +501 -0
  949. casadi/include/eigen3/Eigen/src/Geometry/Hyperplane.h +282 -0
  950. casadi/include/eigen3/Eigen/src/Geometry/OrthoMethods.h +235 -0
  951. casadi/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h +232 -0
  952. casadi/include/eigen3/Eigen/src/Geometry/Quaternion.h +870 -0
  953. casadi/include/eigen3/Eigen/src/Geometry/Rotation2D.h +199 -0
  954. casadi/include/eigen3/Eigen/src/Geometry/RotationBase.h +206 -0
  955. casadi/include/eigen3/Eigen/src/Geometry/Scaling.h +188 -0
  956. casadi/include/eigen3/Eigen/src/Geometry/Transform.h +1563 -0
  957. casadi/include/eigen3/Eigen/src/Geometry/Translation.h +202 -0
  958. casadi/include/eigen3/Eigen/src/Geometry/Umeyama.h +166 -0
  959. casadi/include/eigen3/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
  960. casadi/include/eigen3/Eigen/src/Householder/BlockHouseholder.h +110 -0
  961. casadi/include/eigen3/Eigen/src/Householder/Householder.h +176 -0
  962. casadi/include/eigen3/Eigen/src/Householder/HouseholderSequence.h +545 -0
  963. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
  964. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
  965. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
  966. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
  967. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
  968. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
  969. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
  970. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
  971. casadi/include/eigen3/Eigen/src/Jacobi/Jacobi.h +483 -0
  972. casadi/include/eigen3/Eigen/src/KLUSupport/KLUSupport.h +358 -0
  973. casadi/include/eigen3/Eigen/src/LU/Determinant.h +117 -0
  974. casadi/include/eigen3/Eigen/src/LU/FullPivLU.h +877 -0
  975. casadi/include/eigen3/Eigen/src/LU/InverseImpl.h +432 -0
  976. casadi/include/eigen3/Eigen/src/LU/PartialPivLU.h +624 -0
  977. casadi/include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
  978. casadi/include/eigen3/Eigen/src/LU/arch/InverseSize4.h +351 -0
  979. casadi/include/eigen3/Eigen/src/MetisSupport/MetisSupport.h +137 -0
  980. casadi/include/eigen3/Eigen/src/OrderingMethods/Amd.h +435 -0
  981. casadi/include/eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
  982. casadi/include/eigen3/Eigen/src/OrderingMethods/Ordering.h +153 -0
  983. casadi/include/eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
  984. casadi/include/eigen3/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
  985. casadi/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
  986. casadi/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
  987. casadi/include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
  988. casadi/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
  989. casadi/include/eigen3/Eigen/src/QR/HouseholderQR.h +434 -0
  990. casadi/include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
  991. casadi/include/eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
  992. casadi/include/eigen3/Eigen/src/SVD/BDCSVD.h +1366 -0
  993. casadi/include/eigen3/Eigen/src/SVD/JacobiSVD.h +812 -0
  994. casadi/include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
  995. casadi/include/eigen3/Eigen/src/SVD/SVDBase.h +376 -0
  996. casadi/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
  997. casadi/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
  998. casadi/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
  999. casadi/include/eigen3/Eigen/src/SparseCore/AmbiVector.h +378 -0
  1000. casadi/include/eigen3/Eigen/src/SparseCore/CompressedStorage.h +274 -0
  1001. casadi/include/eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
  1002. casadi/include/eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
  1003. casadi/include/eigen3/Eigen/src/SparseCore/SparseAssign.h +270 -0
  1004. casadi/include/eigen3/Eigen/src/SparseCore/SparseBlock.h +571 -0
  1005. casadi/include/eigen3/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  1006. casadi/include/eigen3/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
  1007. casadi/include/eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
  1008. casadi/include/eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
  1009. casadi/include/eigen3/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
  1010. casadi/include/eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
  1011. casadi/include/eigen3/Eigen/src/SparseCore/SparseDot.h +98 -0
  1012. casadi/include/eigen3/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
  1013. casadi/include/eigen3/Eigen/src/SparseCore/SparseMap.h +305 -0
  1014. casadi/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
  1015. casadi/include/eigen3/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
  1016. casadi/include/eigen3/Eigen/src/SparseCore/SparsePermutation.h +178 -0
  1017. casadi/include/eigen3/Eigen/src/SparseCore/SparseProduct.h +181 -0
  1018. casadi/include/eigen3/Eigen/src/SparseCore/SparseRedux.h +49 -0
  1019. casadi/include/eigen3/Eigen/src/SparseCore/SparseRef.h +397 -0
  1020. casadi/include/eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
  1021. casadi/include/eigen3/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
  1022. casadi/include/eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
  1023. casadi/include/eigen3/Eigen/src/SparseCore/SparseTranspose.h +92 -0
  1024. casadi/include/eigen3/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
  1025. casadi/include/eigen3/Eigen/src/SparseCore/SparseUtil.h +186 -0
  1026. casadi/include/eigen3/Eigen/src/SparseCore/SparseVector.h +478 -0
  1027. casadi/include/eigen3/Eigen/src/SparseCore/SparseView.h +254 -0
  1028. casadi/include/eigen3/Eigen/src/SparseCore/TriangularSolver.h +315 -0
  1029. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU.h +923 -0
  1030. casadi/include/eigen3/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
  1031. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
  1032. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
  1033. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
  1034. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
  1035. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
  1036. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
  1037. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
  1038. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
  1039. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
  1040. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
  1041. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
  1042. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
  1043. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
  1044. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
  1045. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
  1046. casadi/include/eigen3/Eigen/src/SparseQR/SparseQR.h +758 -0
  1047. casadi/include/eigen3/Eigen/src/StlSupport/StdDeque.h +116 -0
  1048. casadi/include/eigen3/Eigen/src/StlSupport/StdList.h +106 -0
  1049. casadi/include/eigen3/Eigen/src/StlSupport/StdVector.h +131 -0
  1050. casadi/include/eigen3/Eigen/src/StlSupport/details.h +84 -0
  1051. casadi/include/eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
  1052. casadi/include/eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
  1053. casadi/include/eigen3/Eigen/src/misc/Image.h +82 -0
  1054. casadi/include/eigen3/Eigen/src/misc/Kernel.h +79 -0
  1055. casadi/include/eigen3/Eigen/src/misc/RealSvd2x2.h +55 -0
  1056. casadi/include/eigen3/Eigen/src/misc/blas.h +440 -0
  1057. casadi/include/eigen3/Eigen/src/misc/lapack.h +152 -0
  1058. casadi/include/eigen3/Eigen/src/misc/lapacke.h +16292 -0
  1059. casadi/include/eigen3/Eigen/src/misc/lapacke_mangling.h +17 -0
  1060. casadi/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
  1061. casadi/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
  1062. casadi/include/eigen3/Eigen/src/plugins/BlockMethods.h +1442 -0
  1063. casadi/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
  1064. casadi/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
  1065. casadi/include/eigen3/Eigen/src/plugins/IndexedViewMethods.h +262 -0
  1066. casadi/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
  1067. casadi/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
  1068. casadi/include/eigen3/Eigen/src/plugins/ReshapedMethods.h +149 -0
  1069. casadi/include/eigen3/signature_of_eigen3_matrix_library +1 -0
  1070. casadi/include/eigen3/unsupported/Eigen/AdolcForward +159 -0
  1071. casadi/include/eigen3/unsupported/Eigen/AlignedVector3 +234 -0
  1072. casadi/include/eigen3/unsupported/Eigen/ArpackSupport +30 -0
  1073. casadi/include/eigen3/unsupported/Eigen/AutoDiff +46 -0
  1074. casadi/include/eigen3/unsupported/Eigen/BVH +95 -0
  1075. casadi/include/eigen3/unsupported/Eigen/CXX11/Tensor +137 -0
  1076. casadi/include/eigen3/unsupported/Eigen/CXX11/TensorSymmetry +42 -0
  1077. casadi/include/eigen3/unsupported/Eigen/CXX11/ThreadPool +74 -0
  1078. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +554 -0
  1079. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +329 -0
  1080. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +247 -0
  1081. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +1176 -0
  1082. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +1559 -0
  1083. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +1093 -0
  1084. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +518 -0
  1085. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +377 -0
  1086. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +1023 -0
  1087. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +73 -0
  1088. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +6 -0
  1089. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +1413 -0
  1090. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +575 -0
  1091. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +1650 -0
  1092. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +1679 -0
  1093. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +456 -0
  1094. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +1132 -0
  1095. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +544 -0
  1096. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +214 -0
  1097. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +347 -0
  1098. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +137 -0
  1099. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +6 -0
  1100. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +104 -0
  1101. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +389 -0
  1102. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +1048 -0
  1103. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +409 -0
  1104. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +236 -0
  1105. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +490 -0
  1106. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +236 -0
  1107. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +983 -0
  1108. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +703 -0
  1109. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +388 -0
  1110. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +669 -0
  1111. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +379 -0
  1112. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +237 -0
  1113. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +191 -0
  1114. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +488 -0
  1115. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +302 -0
  1116. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +33 -0
  1117. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +99 -0
  1118. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +44 -0
  1119. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +79 -0
  1120. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +603 -0
  1121. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +738 -0
  1122. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +247 -0
  1123. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +82 -0
  1124. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +263 -0
  1125. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +216 -0
  1126. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +98 -0
  1127. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +327 -0
  1128. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +311 -0
  1129. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +1102 -0
  1130. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +708 -0
  1131. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +291 -0
  1132. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +322 -0
  1133. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +998 -0
  1134. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +6 -0
  1135. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +966 -0
  1136. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +582 -0
  1137. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +454 -0
  1138. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +465 -0
  1139. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +528 -0
  1140. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +513 -0
  1141. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +471 -0
  1142. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +161 -0
  1143. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +346 -0
  1144. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +303 -0
  1145. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +264 -0
  1146. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +249 -0
  1147. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +629 -0
  1148. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +293 -0
  1149. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +236 -0
  1150. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +338 -0
  1151. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +669 -0
  1152. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +67 -0
  1153. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +249 -0
  1154. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +486 -0
  1155. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +236 -0
  1156. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +23 -0
  1157. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +40 -0
  1158. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +301 -0
  1159. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +48 -0
  1160. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +20 -0
  1161. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +537 -0
  1162. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +88 -0
  1163. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h +261 -0
  1164. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +158 -0
  1165. casadi/include/eigen3/unsupported/Eigen/EulerAngles +43 -0
  1166. casadi/include/eigen3/unsupported/Eigen/FFT +419 -0
  1167. casadi/include/eigen3/unsupported/Eigen/IterativeSolvers +51 -0
  1168. casadi/include/eigen3/unsupported/Eigen/KroneckerProduct +36 -0
  1169. casadi/include/eigen3/unsupported/Eigen/LevenbergMarquardt +49 -0
  1170. casadi/include/eigen3/unsupported/Eigen/MPRealSupport +213 -0
  1171. casadi/include/eigen3/unsupported/Eigen/MatrixFunctions +504 -0
  1172. casadi/include/eigen3/unsupported/Eigen/MoreVectorization +24 -0
  1173. casadi/include/eigen3/unsupported/Eigen/NonLinearOptimization +140 -0
  1174. casadi/include/eigen3/unsupported/Eigen/NumericalDiff +56 -0
  1175. casadi/include/eigen3/unsupported/Eigen/OpenGLSupport +322 -0
  1176. casadi/include/eigen3/unsupported/Eigen/Polynomials +137 -0
  1177. casadi/include/eigen3/unsupported/Eigen/Skyline +39 -0
  1178. casadi/include/eigen3/unsupported/Eigen/SparseExtra +54 -0
  1179. casadi/include/eigen3/unsupported/Eigen/SpecialFunctions +103 -0
  1180. casadi/include/eigen3/unsupported/Eigen/Splines +35 -0
  1181. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +108 -0
  1182. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +730 -0
  1183. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +220 -0
  1184. casadi/include/eigen3/unsupported/Eigen/src/BVH/BVAlgorithms.h +293 -0
  1185. casadi/include/eigen3/unsupported/Eigen/src/BVH/KdBVH.h +223 -0
  1186. casadi/include/eigen3/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +790 -0
  1187. casadi/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerAngles.h +355 -0
  1188. casadi/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerSystem.h +305 -0
  1189. casadi/include/eigen3/unsupported/Eigen/src/FFT/ei_fftw_impl.h +261 -0
  1190. casadi/include/eigen3/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +449 -0
  1191. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +187 -0
  1192. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +511 -0
  1193. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/GMRES.h +335 -0
  1194. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IDRS.h +436 -0
  1195. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +90 -0
  1196. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IterationController.h +154 -0
  1197. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/MINRES.h +267 -0
  1198. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/Scaling.h +193 -0
  1199. casadi/include/eigen3/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +305 -0
  1200. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +84 -0
  1201. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +202 -0
  1202. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +160 -0
  1203. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +188 -0
  1204. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +396 -0
  1205. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +441 -0
  1206. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +569 -0
  1207. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +373 -0
  1208. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +705 -0
  1209. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +368 -0
  1210. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +117 -0
  1211. casadi/include/eigen3/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +95 -0
  1212. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +601 -0
  1213. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +657 -0
  1214. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h +66 -0
  1215. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h +70 -0
  1216. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +107 -0
  1217. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +79 -0
  1218. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +298 -0
  1219. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +91 -0
  1220. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +30 -0
  1221. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +99 -0
  1222. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +49 -0
  1223. casadi/include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +130 -0
  1224. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/Companion.h +280 -0
  1225. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +428 -0
  1226. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +143 -0
  1227. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +352 -0
  1228. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrix.h +862 -0
  1229. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +212 -0
  1230. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineProduct.h +295 -0
  1231. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineStorage.h +259 -0
  1232. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineUtil.h +89 -0
  1233. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +122 -0
  1234. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +1079 -0
  1235. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +404 -0
  1236. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/MarketIO.h +282 -0
  1237. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +247 -0
  1238. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/RandomSetter.h +349 -0
  1239. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +286 -0
  1240. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +68 -0
  1241. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +357 -0
  1242. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +66 -0
  1243. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +1959 -0
  1244. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +118 -0
  1245. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +67 -0
  1246. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +167 -0
  1247. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +58 -0
  1248. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +330 -0
  1249. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +58 -0
  1250. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +2045 -0
  1251. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +79 -0
  1252. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +46 -0
  1253. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +16 -0
  1254. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +46 -0
  1255. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +16 -0
  1256. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +369 -0
  1257. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +54 -0
  1258. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +34 -0
  1259. casadi/include/eigen3/unsupported/Eigen/src/Splines/Spline.h +507 -0
  1260. casadi/include/eigen3/unsupported/Eigen/src/Splines/SplineFitting.h +431 -0
  1261. casadi/include/eigen3/unsupported/Eigen/src/Splines/SplineFwd.h +93 -0
  1262. casadi/include/fatrop/auxiliary/Common.hpp +34 -0
  1263. casadi/include/fatrop/auxiliary/DynamicLib.hpp +34 -0
  1264. casadi/include/fatrop/auxiliary/FatropOptions.hpp +68 -0
  1265. casadi/include/fatrop/auxiliary/FatropVector.hpp +143 -0
  1266. casadi/include/fatrop/auxiliary/LinearAlgebra.hpp +88 -0
  1267. casadi/include/fatrop/auxiliary/VectorUtils.hpp +54 -0
  1268. casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +496 -0
  1269. casadi/include/fatrop/fatrop.hpp +39 -0
  1270. casadi/include/fatrop/function_evaluation/CasadiCodegen.hpp +104 -0
  1271. casadi/include/fatrop/function_evaluation/FunctionEvaluation.hpp +60 -0
  1272. casadi/include/fatrop/json/json.h +946 -0
  1273. casadi/include/fatrop/ocp/CasadiCApiUserdataWrap.hpp +87 -0
  1274. casadi/include/fatrop/ocp/DuInfEvaluator.hpp +38 -0
  1275. casadi/include/fatrop/ocp/FatropOCP.hpp +161 -0
  1276. casadi/include/fatrop/ocp/FatropOCPBuilder.hpp +52 -0
  1277. casadi/include/fatrop/ocp/FatropOCPResto.hpp +299 -0
  1278. casadi/include/fatrop/ocp/OCP.hpp +82 -0
  1279. casadi/include/fatrop/ocp/OCPAbstract.hpp +254 -0
  1280. casadi/include/fatrop/ocp/OCPAdapter.hpp +197 -0
  1281. casadi/include/fatrop/ocp/OCPCInterface.h +289 -0
  1282. casadi/include/fatrop/ocp/OCPDims.hpp +60 -0
  1283. casadi/include/fatrop/ocp/OCPInitializer.hpp +41 -0
  1284. casadi/include/fatrop/ocp/OCPKKT.hpp +69 -0
  1285. casadi/include/fatrop/ocp/OCPLSRiccati.hpp +198 -0
  1286. casadi/include/fatrop/ocp/OCPLSScaler.hpp +66 -0
  1287. casadi/include/fatrop/ocp/OCPLinearSolver.hpp +75 -0
  1288. casadi/include/fatrop/ocp/OCPNoScaling.hpp +42 -0
  1289. casadi/include/fatrop/ocp/OCPScalingMethod.hpp +42 -0
  1290. casadi/include/fatrop/ocp/StageOCP.hpp +592 -0
  1291. casadi/include/fatrop/ocp/StageOCPApplication.hpp +242 -0
  1292. casadi/include/fatrop/ocp/StageOCPExpressions.hpp +182 -0
  1293. casadi/include/fatrop/ocp/UStageEvalAbstract.hpp +168 -0
  1294. casadi/include/fatrop/ocp/UStageOCPImpl.hpp +152 -0
  1295. casadi/include/fatrop/quasi_newton/bfgs.hpp +159 -0
  1296. casadi/include/fatrop/solver/AlgBuilder.hpp +76 -0
  1297. casadi/include/fatrop/solver/AlgStrategy.hpp +33 -0
  1298. casadi/include/fatrop/solver/FatropAlg.hpp +121 -0
  1299. casadi/include/fatrop/solver/FatropData.hpp +188 -0
  1300. casadi/include/fatrop/solver/FatropOptions.hpp +95 -0
  1301. casadi/include/fatrop/solver/FatropPrinter.hpp +65 -0
  1302. casadi/include/fatrop/solver/FatropStats.hpp +63 -0
  1303. casadi/include/fatrop/solver/Filter.hpp +54 -0
  1304. casadi/include/fatrop/solver/IterationData.hpp +56 -0
  1305. casadi/include/fatrop/solver/LineSearch.hpp +86 -0
  1306. casadi/include/fatrop/solver/NLPL1.hpp +263 -0
  1307. casadi/include/fatrop/templates/NLPAlg.hpp +104 -0
  1308. casadi/include/ghc/filesystem.hpp +6083 -0
  1309. casadi/include/ghc/fs_fwd.hpp +38 -0
  1310. casadi/include/ghc/fs_impl.hpp +35 -0
  1311. casadi/include/ghc/fs_std.hpp +60 -0
  1312. casadi/include/ghc/fs_std_fwd.hpp +63 -0
  1313. casadi/include/ghc/fs_std_impl.hpp +46 -0
  1314. casadi/include/highs/HConfig.h +23 -0
  1315. casadi/include/highs/Highs.h +1703 -0
  1316. casadi/include/highs/filereaderlp/builder.hpp +25 -0
  1317. casadi/include/highs/filereaderlp/def.hpp +19 -0
  1318. casadi/include/highs/filereaderlp/model.hpp +68 -0
  1319. casadi/include/highs/filereaderlp/reader.hpp +10 -0
  1320. casadi/include/highs/interfaces/highs_c_api.h +2456 -0
  1321. casadi/include/highs/io/Filereader.h +45 -0
  1322. casadi/include/highs/io/FilereaderEms.h +30 -0
  1323. casadi/include/highs/io/FilereaderLp.h +51 -0
  1324. casadi/include/highs/io/FilereaderMps.h +27 -0
  1325. casadi/include/highs/io/HMPSIO.h +78 -0
  1326. casadi/include/highs/io/HMpsFF.h +238 -0
  1327. casadi/include/highs/io/HighsIO.h +114 -0
  1328. casadi/include/highs/io/LoadOptions.h +24 -0
  1329. casadi/include/highs/ipm/IpxSolution.h +32 -0
  1330. casadi/include/highs/ipm/IpxWrapper.h +70 -0
  1331. casadi/include/highs/ipm/basiclu/basiclu.h +161 -0
  1332. casadi/include/highs/ipm/basiclu/basiclu_factorize.h +247 -0
  1333. casadi/include/highs/ipm/basiclu/basiclu_get_factors.h +108 -0
  1334. casadi/include/highs/ipm/basiclu/basiclu_initialize.h +119 -0
  1335. casadi/include/highs/ipm/basiclu/basiclu_obj_factorize.h +34 -0
  1336. casadi/include/highs/ipm/basiclu/basiclu_obj_free.h +19 -0
  1337. casadi/include/highs/ipm/basiclu/basiclu_obj_get_factors.h +34 -0
  1338. casadi/include/highs/ipm/basiclu/basiclu_obj_initialize.h +46 -0
  1339. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_dense.h +29 -0
  1340. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_for_update.h +42 -0
  1341. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_sparse.h +32 -0
  1342. casadi/include/highs/ipm/basiclu/basiclu_obj_update.h +31 -0
  1343. casadi/include/highs/ipm/basiclu/basiclu_object.h +30 -0
  1344. casadi/include/highs/ipm/basiclu/basiclu_solve_dense.h +75 -0
  1345. casadi/include/highs/ipm/basiclu/basiclu_solve_for_update.h +169 -0
  1346. casadi/include/highs/ipm/basiclu/basiclu_solve_sparse.h +112 -0
  1347. casadi/include/highs/ipm/basiclu/basiclu_update.h +125 -0
  1348. casadi/include/highs/ipm/basiclu/lu_def.h +39 -0
  1349. casadi/include/highs/ipm/basiclu/lu_file.h +21 -0
  1350. casadi/include/highs/ipm/basiclu/lu_internal.h +220 -0
  1351. casadi/include/highs/ipm/basiclu/lu_list.h +168 -0
  1352. casadi/include/highs/ipm/ipx/basiclu_kernel.h +20 -0
  1353. casadi/include/highs/ipm/ipx/basiclu_wrapper.h +47 -0
  1354. casadi/include/highs/ipm/ipx/basis.h +351 -0
  1355. casadi/include/highs/ipm/ipx/conjugate_residuals.h +74 -0
  1356. casadi/include/highs/ipm/ipx/control.h +164 -0
  1357. casadi/include/highs/ipm/ipx/crossover.h +157 -0
  1358. casadi/include/highs/ipm/ipx/diagonal_precond.h +45 -0
  1359. casadi/include/highs/ipm/ipx/forrest_tomlin.h +102 -0
  1360. casadi/include/highs/ipm/ipx/guess_basis.h +21 -0
  1361. casadi/include/highs/ipm/ipx/indexed_vector.h +113 -0
  1362. casadi/include/highs/ipm/ipx/info.h +27 -0
  1363. casadi/include/highs/ipm/ipx/ipm.h +94 -0
  1364. casadi/include/highs/ipm/ipx/ipx_c.h +47 -0
  1365. casadi/include/highs/ipm/ipx/ipx_config.h +9 -0
  1366. casadi/include/highs/ipm/ipx/ipx_info.h +111 -0
  1367. casadi/include/highs/ipm/ipx/ipx_internal.h +88 -0
  1368. casadi/include/highs/ipm/ipx/ipx_parameters.h +76 -0
  1369. casadi/include/highs/ipm/ipx/ipx_status.h +57 -0
  1370. casadi/include/highs/ipm/ipx/iterate.h +328 -0
  1371. casadi/include/highs/ipm/ipx/kkt_solver.h +70 -0
  1372. casadi/include/highs/ipm/ipx/kkt_solver_basis.h +66 -0
  1373. casadi/include/highs/ipm/ipx/kkt_solver_diag.h +48 -0
  1374. casadi/include/highs/ipm/ipx/linear_operator.h +26 -0
  1375. casadi/include/highs/ipm/ipx/lp_solver.h +202 -0
  1376. casadi/include/highs/ipm/ipx/lu_factorization.h +79 -0
  1377. casadi/include/highs/ipm/ipx/lu_update.h +129 -0
  1378. casadi/include/highs/ipm/ipx/maxvolume.h +54 -0
  1379. casadi/include/highs/ipm/ipx/model.h +413 -0
  1380. casadi/include/highs/ipm/ipx/multistream.h +52 -0
  1381. casadi/include/highs/ipm/ipx/normal_matrix.h +44 -0
  1382. casadi/include/highs/ipm/ipx/power_method.h +44 -0
  1383. casadi/include/highs/ipm/ipx/sparse_matrix.h +195 -0
  1384. casadi/include/highs/ipm/ipx/sparse_utils.h +58 -0
  1385. casadi/include/highs/ipm/ipx/splitted_normal_matrix.h +63 -0
  1386. casadi/include/highs/ipm/ipx/starting_basis.h +39 -0
  1387. casadi/include/highs/ipm/ipx/symbolic_invert.h +29 -0
  1388. casadi/include/highs/ipm/ipx/timer.h +24 -0
  1389. casadi/include/highs/ipm/ipx/utils.h +39 -0
  1390. casadi/include/highs/lp_data/HConst.h +320 -0
  1391. casadi/include/highs/lp_data/HStruct.h +182 -0
  1392. casadi/include/highs/lp_data/HighsAnalysis.h +23 -0
  1393. casadi/include/highs/lp_data/HighsCallback.h +47 -0
  1394. casadi/include/highs/lp_data/HighsCallbackStruct.h +62 -0
  1395. casadi/include/highs/lp_data/HighsDebug.h +34 -0
  1396. casadi/include/highs/lp_data/HighsIis.h +62 -0
  1397. casadi/include/highs/lp_data/HighsInfo.h +329 -0
  1398. casadi/include/highs/lp_data/HighsInfoDebug.h +27 -0
  1399. casadi/include/highs/lp_data/HighsLp.h +100 -0
  1400. casadi/include/highs/lp_data/HighsLpSolverObject.h +45 -0
  1401. casadi/include/highs/lp_data/HighsLpUtils.h +298 -0
  1402. casadi/include/highs/lp_data/HighsModelUtils.h +112 -0
  1403. casadi/include/highs/lp_data/HighsOptions.h +1469 -0
  1404. casadi/include/highs/lp_data/HighsRanging.h +43 -0
  1405. casadi/include/highs/lp_data/HighsSolution.h +144 -0
  1406. casadi/include/highs/lp_data/HighsSolutionDebug.h +87 -0
  1407. casadi/include/highs/lp_data/HighsSolve.h +23 -0
  1408. casadi/include/highs/lp_data/HighsStatus.h +29 -0
  1409. casadi/include/highs/mip/HighsCliqueTable.h +318 -0
  1410. casadi/include/highs/mip/HighsConflictPool.h +109 -0
  1411. casadi/include/highs/mip/HighsCutGeneration.h +106 -0
  1412. casadi/include/highs/mip/HighsCutPool.h +168 -0
  1413. casadi/include/highs/mip/HighsDebugSol.h +132 -0
  1414. casadi/include/highs/mip/HighsDomain.h +653 -0
  1415. casadi/include/highs/mip/HighsDomainChange.h +48 -0
  1416. casadi/include/highs/mip/HighsDynamicRowMatrix.h +104 -0
  1417. casadi/include/highs/mip/HighsGFkSolve.h +438 -0
  1418. casadi/include/highs/mip/HighsImplications.h +170 -0
  1419. casadi/include/highs/mip/HighsLpAggregator.h +50 -0
  1420. casadi/include/highs/mip/HighsLpRelaxation.h +357 -0
  1421. casadi/include/highs/mip/HighsMipAnalysis.h +52 -0
  1422. casadi/include/highs/mip/HighsMipSolver.h +112 -0
  1423. casadi/include/highs/mip/HighsMipSolverData.h +297 -0
  1424. casadi/include/highs/mip/HighsModkSeparator.h +60 -0
  1425. casadi/include/highs/mip/HighsNodeQueue.h +311 -0
  1426. casadi/include/highs/mip/HighsObjectiveFunction.h +71 -0
  1427. casadi/include/highs/mip/HighsPathSeparator.h +39 -0
  1428. casadi/include/highs/mip/HighsPrimalHeuristics.h +70 -0
  1429. casadi/include/highs/mip/HighsPseudocost.h +360 -0
  1430. casadi/include/highs/mip/HighsRedcostFixing.h +42 -0
  1431. casadi/include/highs/mip/HighsSearch.h +241 -0
  1432. casadi/include/highs/mip/HighsSeparation.h +41 -0
  1433. casadi/include/highs/mip/HighsSeparator.h +52 -0
  1434. casadi/include/highs/mip/HighsTableauSeparator.h +34 -0
  1435. casadi/include/highs/mip/HighsTransformedLp.h +63 -0
  1436. casadi/include/highs/mip/MipTimer.h +471 -0
  1437. casadi/include/highs/model/HighsHessian.h +54 -0
  1438. casadi/include/highs/model/HighsHessianUtils.h +49 -0
  1439. casadi/include/highs/model/HighsModel.h +52 -0
  1440. casadi/include/highs/parallel/HighsBinarySemaphore.h +113 -0
  1441. casadi/include/highs/parallel/HighsCacheAlign.h +87 -0
  1442. casadi/include/highs/parallel/HighsCombinable.h +121 -0
  1443. casadi/include/highs/parallel/HighsMutex.h +129 -0
  1444. casadi/include/highs/parallel/HighsParallel.h +133 -0
  1445. casadi/include/highs/parallel/HighsRaceTimer.h +43 -0
  1446. casadi/include/highs/parallel/HighsSchedulerConstants.h +24 -0
  1447. casadi/include/highs/parallel/HighsSpinMutex.h +53 -0
  1448. casadi/include/highs/parallel/HighsSplitDeque.h +583 -0
  1449. casadi/include/highs/parallel/HighsTask.h +175 -0
  1450. casadi/include/highs/parallel/HighsTaskExecutor.h +222 -0
  1451. casadi/include/highs/pdlp/CupdlpWrapper.h +104 -0
  1452. casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +40 -0
  1453. casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +433 -0
  1454. casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +189 -0
  1455. casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +19 -0
  1456. casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +31 -0
  1457. casadi/include/highs/pdlp/cupdlp/cupdlp_scaling.h +26 -0
  1458. casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +98 -0
  1459. casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +37 -0
  1460. casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +1807 -0
  1461. casadi/include/highs/pdqsort/pdqsort.h +532 -0
  1462. casadi/include/highs/presolve/HPresolve.h +405 -0
  1463. casadi/include/highs/presolve/HPresolveAnalysis.h +51 -0
  1464. casadi/include/highs/presolve/HighsPostsolveStack.h +940 -0
  1465. casadi/include/highs/presolve/HighsSymmetry.h +281 -0
  1466. casadi/include/highs/presolve/ICrash.h +124 -0
  1467. casadi/include/highs/presolve/ICrashUtil.h +62 -0
  1468. casadi/include/highs/presolve/ICrashX.h +23 -0
  1469. casadi/include/highs/presolve/PresolveComponent.h +90 -0
  1470. casadi/include/highs/qpsolver/a_asm.hpp +70 -0
  1471. casadi/include/highs/qpsolver/a_quass.hpp +15 -0
  1472. casadi/include/highs/qpsolver/basis.hpp +152 -0
  1473. casadi/include/highs/qpsolver/crashsolution.hpp +13 -0
  1474. casadi/include/highs/qpsolver/dantzigpricing.hpp +73 -0
  1475. casadi/include/highs/qpsolver/devexpricing.hpp +101 -0
  1476. casadi/include/highs/qpsolver/eventhandler.hpp +23 -0
  1477. casadi/include/highs/qpsolver/factor.hpp +401 -0
  1478. casadi/include/highs/qpsolver/feasibility_bounded.hpp +107 -0
  1479. casadi/include/highs/qpsolver/feasibility_highs.hpp +294 -0
  1480. casadi/include/highs/qpsolver/gradient.hpp +39 -0
  1481. casadi/include/highs/qpsolver/instance.hpp +63 -0
  1482. casadi/include/highs/qpsolver/matrix.hpp +335 -0
  1483. casadi/include/highs/qpsolver/perturbation.hpp +8 -0
  1484. casadi/include/highs/qpsolver/pricing.hpp +15 -0
  1485. casadi/include/highs/qpsolver/qpconst.hpp +27 -0
  1486. casadi/include/highs/qpsolver/qpvector.hpp +235 -0
  1487. casadi/include/highs/qpsolver/quass.hpp +20 -0
  1488. casadi/include/highs/qpsolver/ratiotest.hpp +19 -0
  1489. casadi/include/highs/qpsolver/runtime.hpp +38 -0
  1490. casadi/include/highs/qpsolver/scaling.hpp +8 -0
  1491. casadi/include/highs/qpsolver/settings.hpp +69 -0
  1492. casadi/include/highs/qpsolver/snippets.hpp +29 -0
  1493. casadi/include/highs/qpsolver/statistics.hpp +23 -0
  1494. casadi/include/highs/qpsolver/steepestedgepricing.hpp +166 -0
  1495. casadi/include/highs/simplex/HApp.h +476 -0
  1496. casadi/include/highs/simplex/HEkk.h +416 -0
  1497. casadi/include/highs/simplex/HEkkDual.h +513 -0
  1498. casadi/include/highs/simplex/HEkkDualRHS.h +134 -0
  1499. casadi/include/highs/simplex/HEkkDualRow.h +201 -0
  1500. casadi/include/highs/simplex/HEkkPrimal.h +191 -0
  1501. casadi/include/highs/simplex/HSimplex.h +42 -0
  1502. casadi/include/highs/simplex/HSimplexDebug.h +48 -0
  1503. casadi/include/highs/simplex/HSimplexNla.h +158 -0
  1504. casadi/include/highs/simplex/HSimplexReport.h +21 -0
  1505. casadi/include/highs/simplex/HighsSimplexAnalysis.h +500 -0
  1506. casadi/include/highs/simplex/SimplexConst.h +273 -0
  1507. casadi/include/highs/simplex/SimplexStruct.h +261 -0
  1508. casadi/include/highs/simplex/SimplexTimer.h +409 -0
  1509. casadi/include/highs/test/DevKkt.h +143 -0
  1510. casadi/include/highs/test/KktCh2.h +79 -0
  1511. casadi/include/highs/util/FactorTimer.h +199 -0
  1512. casadi/include/highs/util/HFactor.h +587 -0
  1513. casadi/include/highs/util/HFactorConst.h +81 -0
  1514. casadi/include/highs/util/HFactorDebug.h +55 -0
  1515. casadi/include/highs/util/HSet.h +89 -0
  1516. casadi/include/highs/util/HVector.h +22 -0
  1517. casadi/include/highs/util/HVectorBase.h +102 -0
  1518. casadi/include/highs/util/HighsCDouble.h +319 -0
  1519. casadi/include/highs/util/HighsComponent.h +53 -0
  1520. casadi/include/highs/util/HighsDataStack.h +83 -0
  1521. casadi/include/highs/util/HighsDisjointSets.h +107 -0
  1522. casadi/include/highs/util/HighsHash.h +1274 -0
  1523. casadi/include/highs/util/HighsHashTree.h +1447 -0
  1524. casadi/include/highs/util/HighsInt.h +36 -0
  1525. casadi/include/highs/util/HighsIntegers.h +212 -0
  1526. casadi/include/highs/util/HighsLinearSumBounds.h +157 -0
  1527. casadi/include/highs/util/HighsMatrixPic.h +37 -0
  1528. casadi/include/highs/util/HighsMatrixSlice.h +561 -0
  1529. casadi/include/highs/util/HighsMatrixUtils.h +54 -0
  1530. casadi/include/highs/util/HighsMemoryAllocation.h +63 -0
  1531. casadi/include/highs/util/HighsRandom.h +242 -0
  1532. casadi/include/highs/util/HighsRbTree.h +452 -0
  1533. casadi/include/highs/util/HighsSort.h +131 -0
  1534. casadi/include/highs/util/HighsSparseMatrix.h +150 -0
  1535. casadi/include/highs/util/HighsSparseVectorSum.h +95 -0
  1536. casadi/include/highs/util/HighsSplay.h +135 -0
  1537. casadi/include/highs/util/HighsTimer.h +381 -0
  1538. casadi/include/highs/util/HighsUtils.h +217 -0
  1539. casadi/include/highs/util/stringutil.h +46 -0
  1540. casadi/include/highs/zstr/strict_fstream.hpp +237 -0
  1541. casadi/include/highs/zstr/zstr.hpp +472 -0
  1542. casadi/include/highs_export.h +43 -0
  1543. casadi/include/hpipm_aux_mem.h +52 -0
  1544. casadi/include/hpipm_aux_string.h +50 -0
  1545. casadi/include/hpipm_common.h +76 -0
  1546. casadi/include/hpipm_d_cast_qcqp.h +71 -0
  1547. casadi/include/hpipm_d_cond.h +135 -0
  1548. casadi/include/hpipm_d_cond_aux.h +92 -0
  1549. casadi/include/hpipm_d_cond_qcqp.h +129 -0
  1550. casadi/include/hpipm_d_core_qp_ipm.h +101 -0
  1551. casadi/include/hpipm_d_core_qp_ipm_aux.h +68 -0
  1552. casadi/include/hpipm_d_dense_qcqp.h +199 -0
  1553. casadi/include/hpipm_d_dense_qcqp_dim.h +98 -0
  1554. casadi/include/hpipm_d_dense_qcqp_ipm.h +193 -0
  1555. casadi/include/hpipm_d_dense_qcqp_res.h +108 -0
  1556. casadi/include/hpipm_d_dense_qcqp_sol.h +85 -0
  1557. casadi/include/hpipm_d_dense_qcqp_utils.h +82 -0
  1558. casadi/include/hpipm_d_dense_qp.h +207 -0
  1559. casadi/include/hpipm_d_dense_qp_dim.h +92 -0
  1560. casadi/include/hpipm_d_dense_qp_ipm.h +260 -0
  1561. casadi/include/hpipm_d_dense_qp_kkt.h +72 -0
  1562. casadi/include/hpipm_d_dense_qp_res.h +106 -0
  1563. casadi/include/hpipm_d_dense_qp_sol.h +94 -0
  1564. casadi/include/hpipm_d_dense_qp_utils.h +83 -0
  1565. casadi/include/hpipm_d_ocp_qcqp.h +322 -0
  1566. casadi/include/hpipm_d_ocp_qcqp_dim.h +130 -0
  1567. casadi/include/hpipm_d_ocp_qcqp_ipm.h +192 -0
  1568. casadi/include/hpipm_d_ocp_qcqp_red.h +118 -0
  1569. casadi/include/hpipm_d_ocp_qcqp_res.h +115 -0
  1570. casadi/include/hpipm_d_ocp_qcqp_sol.h +114 -0
  1571. casadi/include/hpipm_d_ocp_qcqp_utils.h +81 -0
  1572. casadi/include/hpipm_d_ocp_qp.h +306 -0
  1573. casadi/include/hpipm_d_ocp_qp_dim.h +142 -0
  1574. casadi/include/hpipm_d_ocp_qp_ipm.h +252 -0
  1575. casadi/include/hpipm_d_ocp_qp_kkt.h +66 -0
  1576. casadi/include/hpipm_d_ocp_qp_red.h +117 -0
  1577. casadi/include/hpipm_d_ocp_qp_res.h +113 -0
  1578. casadi/include/hpipm_d_ocp_qp_sol.h +128 -0
  1579. casadi/include/hpipm_d_ocp_qp_utils.h +82 -0
  1580. casadi/include/hpipm_d_part_cond.h +115 -0
  1581. casadi/include/hpipm_d_part_cond_qcqp.h +106 -0
  1582. casadi/include/hpipm_d_sim_erk.h +122 -0
  1583. casadi/include/hpipm_d_sim_rk.h +71 -0
  1584. casadi/include/hpipm_d_tree_ocp_qcqp.h +213 -0
  1585. casadi/include/hpipm_d_tree_ocp_qcqp_dim.h +117 -0
  1586. casadi/include/hpipm_d_tree_ocp_qcqp_ipm.h +191 -0
  1587. casadi/include/hpipm_d_tree_ocp_qcqp_res.h +109 -0
  1588. casadi/include/hpipm_d_tree_ocp_qcqp_sol.h +99 -0
  1589. casadi/include/hpipm_d_tree_ocp_qcqp_utils.h +84 -0
  1590. casadi/include/hpipm_d_tree_ocp_qp.h +195 -0
  1591. casadi/include/hpipm_d_tree_ocp_qp_dim.h +111 -0
  1592. casadi/include/hpipm_d_tree_ocp_qp_ipm.h +209 -0
  1593. casadi/include/hpipm_d_tree_ocp_qp_kkt.h +52 -0
  1594. casadi/include/hpipm_d_tree_ocp_qp_res.h +107 -0
  1595. casadi/include/hpipm_d_tree_ocp_qp_sol.h +100 -0
  1596. casadi/include/hpipm_d_tree_ocp_qp_utils.h +83 -0
  1597. casadi/include/hpipm_m_dense_qp.h +68 -0
  1598. casadi/include/hpipm_m_dense_qp_dim.h +68 -0
  1599. casadi/include/hpipm_m_ocp_qp.h +49 -0
  1600. casadi/include/hpipm_m_ocp_qp_ipm_hard.h +115 -0
  1601. casadi/include/hpipm_m_ocp_qp_kkt.h +45 -0
  1602. casadi/include/hpipm_s_cast_qcqp.h +72 -0
  1603. casadi/include/hpipm_s_cond.h +137 -0
  1604. casadi/include/hpipm_s_cond_aux.h +92 -0
  1605. casadi/include/hpipm_s_cond_qcqp.h +130 -0
  1606. casadi/include/hpipm_s_core_qp_ipm.h +101 -0
  1607. casadi/include/hpipm_s_core_qp_ipm_aux.h +68 -0
  1608. casadi/include/hpipm_s_dense_qcqp.h +200 -0
  1609. casadi/include/hpipm_s_dense_qcqp_dim.h +99 -0
  1610. casadi/include/hpipm_s_dense_qcqp_ipm.h +204 -0
  1611. casadi/include/hpipm_s_dense_qcqp_res.h +109 -0
  1612. casadi/include/hpipm_s_dense_qcqp_sol.h +86 -0
  1613. casadi/include/hpipm_s_dense_qcqp_utils.h +83 -0
  1614. casadi/include/hpipm_s_dense_qp.h +207 -0
  1615. casadi/include/hpipm_s_dense_qp_dim.h +94 -0
  1616. casadi/include/hpipm_s_dense_qp_ipm.h +260 -0
  1617. casadi/include/hpipm_s_dense_qp_kkt.h +72 -0
  1618. casadi/include/hpipm_s_dense_qp_res.h +107 -0
  1619. casadi/include/hpipm_s_dense_qp_sol.h +94 -0
  1620. casadi/include/hpipm_s_dense_qp_utils.h +84 -0
  1621. casadi/include/hpipm_s_ocp_qcqp.h +322 -0
  1622. casadi/include/hpipm_s_ocp_qcqp_dim.h +131 -0
  1623. casadi/include/hpipm_s_ocp_qcqp_ipm.h +193 -0
  1624. casadi/include/hpipm_s_ocp_qcqp_red.h +119 -0
  1625. casadi/include/hpipm_s_ocp_qcqp_res.h +116 -0
  1626. casadi/include/hpipm_s_ocp_qcqp_sol.h +115 -0
  1627. casadi/include/hpipm_s_ocp_qcqp_utils.h +82 -0
  1628. casadi/include/hpipm_s_ocp_qp.h +306 -0
  1629. casadi/include/hpipm_s_ocp_qp_dim.h +141 -0
  1630. casadi/include/hpipm_s_ocp_qp_ipm.h +252 -0
  1631. casadi/include/hpipm_s_ocp_qp_kkt.h +66 -0
  1632. casadi/include/hpipm_s_ocp_qp_red.h +118 -0
  1633. casadi/include/hpipm_s_ocp_qp_res.h +115 -0
  1634. casadi/include/hpipm_s_ocp_qp_sol.h +128 -0
  1635. casadi/include/hpipm_s_ocp_qp_utils.h +83 -0
  1636. casadi/include/hpipm_s_part_cond.h +115 -0
  1637. casadi/include/hpipm_s_part_cond_qcqp.h +107 -0
  1638. casadi/include/hpipm_s_sim_erk.h +121 -0
  1639. casadi/include/hpipm_s_sim_rk.h +72 -0
  1640. casadi/include/hpipm_s_tree_ocp_qcqp.h +213 -0
  1641. casadi/include/hpipm_s_tree_ocp_qcqp_dim.h +118 -0
  1642. casadi/include/hpipm_s_tree_ocp_qcqp_ipm.h +192 -0
  1643. casadi/include/hpipm_s_tree_ocp_qcqp_res.h +110 -0
  1644. casadi/include/hpipm_s_tree_ocp_qcqp_sol.h +97 -0
  1645. casadi/include/hpipm_s_tree_ocp_qcqp_utils.h +85 -0
  1646. casadi/include/hpipm_s_tree_ocp_qp.h +196 -0
  1647. casadi/include/hpipm_s_tree_ocp_qp_dim.h +111 -0
  1648. casadi/include/hpipm_s_tree_ocp_qp_ipm.h +208 -0
  1649. casadi/include/hpipm_s_tree_ocp_qp_kkt.h +54 -0
  1650. casadi/include/hpipm_s_tree_ocp_qp_res.h +108 -0
  1651. casadi/include/hpipm_s_tree_ocp_qp_sol.h +98 -0
  1652. casadi/include/hpipm_s_tree_ocp_qp_utils.h +84 -0
  1653. casadi/include/hpipm_scenario_tree.h +70 -0
  1654. casadi/include/hpipm_timing.h +67 -0
  1655. casadi/include/hpipm_tree.h +76 -0
  1656. casadi/include/licenses/FMI-Standard-2.0.2/LICENSE.txt +473 -0
  1657. casadi/include/licenses/FMI-Standard-3.0/LICENSE.txt +464 -0
  1658. casadi/include/licenses/alpaqa-external/LICENSE +165 -0
  1659. casadi/include/licenses/blasfeo-external/LICENSE.txt +26 -0
  1660. casadi/include/licenses/bonmin-external/Bonmin/LICENSE +87 -0
  1661. casadi/include/licenses/bonmin-external/LICENSE +3 -0
  1662. casadi/include/licenses/casadi/LICENSE/LICENSE.txt +165 -0
  1663. casadi/include/licenses/casadi-sundials/LICENSE +64 -0
  1664. casadi/include/licenses/casadi-sundials/cvodes/LICENSE +60 -0
  1665. casadi/include/licenses/casadi-sundials/idas/LICENSE +59 -0
  1666. casadi/include/licenses/casadi-sundials/kinsol/LICENSE +59 -0
  1667. casadi/include/licenses/casadi-sundials/sundials/LICENSE +67 -0
  1668. casadi/include/licenses/cbc-external/Cbc/LICENSE +239 -0
  1669. casadi/include/licenses/cbc-external/LICENSE +245 -0
  1670. casadi/include/licenses/cgl-external/Cgl/LICENSE +239 -0
  1671. casadi/include/licenses/cgl-external/LICENSE +245 -0
  1672. casadi/include/licenses/clp-external/Clp/LICENSE +239 -0
  1673. casadi/include/licenses/clp-external/LICENSE +245 -0
  1674. casadi/include/licenses/coinutils-external/CoinUtils/LICENSE +239 -0
  1675. casadi/include/licenses/coinutils-external/LICENSE +245 -0
  1676. casadi/include/licenses/daqp-external/LICENSE +21 -0
  1677. casadi/include/licenses/fatrop-external/LICENSE.txt +165 -0
  1678. casadi/include/licenses/fatrop-external/external/blasfeo/LICENSE.txt +26 -0
  1679. casadi/include/licenses/fatrop-external/external/pybind11/LICENSE +29 -0
  1680. casadi/include/licenses/ghc-external/LICENSE +19 -0
  1681. casadi/include/licenses/highs-external/LICENSE.txt +21 -0
  1682. casadi/include/licenses/highs-external/extern/filereaderlp/LICENSE +19 -0
  1683. casadi/include/licenses/hpipm-external/LICENSE.txt +26 -0
  1684. casadi/include/licenses/ipopt-external/LICENSE +260 -0
  1685. casadi/include/licenses/libz-external/LICENSE +22 -0
  1686. casadi/include/licenses/libz-external/contrib/dotzlib/LICENSE_1_0.txt +23 -0
  1687. casadi/include/licenses/libzip-external/LICENSE +31 -0
  1688. casadi/include/licenses/metis-external/LICENSE +87 -0
  1689. casadi/include/licenses/metis-external/metis-4.0/LICENSE +18 -0
  1690. casadi/include/licenses/mockups-external/LICENSE +21 -0
  1691. casadi/include/licenses/mumps-external/LICENSE +87 -0
  1692. casadi/include/licenses/mumps-external/MUMPS/LICENSE +50 -0
  1693. casadi/include/licenses/openblas-external/LICENSE +29 -0
  1694. casadi/include/licenses/openblas-external/ctest/LICENSE +23 -0
  1695. casadi/include/licenses/openblas-external/lapack-netlib/LAPACKE/LICENSE +26 -0
  1696. casadi/include/licenses/openblas-external/lapack-netlib/LICENSE +48 -0
  1697. casadi/include/licenses/openblas-external/reference/LICENSE +23 -0
  1698. casadi/include/licenses/openblas-external/relapack/LICENSE +22 -0
  1699. casadi/include/licenses/openblas-external/test/LICENSE +23 -0
  1700. casadi/include/licenses/osi-external/LICENSE +245 -0
  1701. casadi/include/licenses/osi-external/Osi/LICENSE +239 -0
  1702. casadi/include/licenses/osqp-external/LICENSE +201 -0
  1703. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/amd/LICENSE +36 -0
  1704. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/qdldl_sources/LICENSE +201 -0
  1705. casadi/include/licenses/proxqp-external/LICENSE +25 -0
  1706. casadi/include/licenses/proxqp-external/bindings/python/external/pybind11/LICENSE +29 -0
  1707. casadi/include/licenses/proxqp-external/cmake-module/LICENSE +4 -0
  1708. casadi/include/licenses/proxqp-external/cmake-module/doxygen/MathJax/LICENSE +202 -0
  1709. casadi/include/licenses/proxqp-external/external/cereal/LICENSE +24 -0
  1710. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/LICENSE +21 -0
  1711. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/rapidjson/LICENSE +13 -0
  1712. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/rapidjson/msinttypes/LICENSE +29 -0
  1713. casadi/include/licenses/qpOASES/LICENSE.txt +503 -0
  1714. casadi/include/licenses/sleqp-external/LICENSE +165 -0
  1715. casadi/include/licenses/superscs-external/LICENSE.txt +24 -0
  1716. casadi/include/licenses/tinyxml2-9.0.0/LICENSE.txt +18 -0
  1717. casadi/include/licenses/trlib-external/LICENSE +21 -0
  1718. casadi/include/openblas/cblas.h +411 -0
  1719. casadi/include/openblas/f77blas.h +796 -0
  1720. casadi/include/openblas/lapack.h +22997 -0
  1721. casadi/include/openblas/lapacke.h +12665 -0
  1722. casadi/include/openblas/lapacke_config.h +119 -0
  1723. casadi/include/openblas/lapacke_example_aux.h +9 -0
  1724. casadi/include/openblas/lapacke_mangling.h +17 -0
  1725. casadi/include/openblas/lapacke_utils.h +582 -0
  1726. casadi/include/openblas/openblas/lapacke_mangling.h +17 -0
  1727. casadi/include/openblas/openblas_config.h +139 -0
  1728. casadi/include/osqp/auxil.h +181 -0
  1729. casadi/include/osqp/constants.h +128 -0
  1730. casadi/include/osqp/cs.h +180 -0
  1731. casadi/include/osqp/ctrlc.h +56 -0
  1732. casadi/include/osqp/error.h +38 -0
  1733. casadi/include/osqp/glob_opts.h +167 -0
  1734. casadi/include/osqp/lin_alg.h +216 -0
  1735. casadi/include/osqp/lin_sys.h +54 -0
  1736. casadi/include/osqp/osqp.h +430 -0
  1737. casadi/include/osqp/osqp_configure.h +49 -0
  1738. casadi/include/osqp/polish.h +25 -0
  1739. casadi/include/osqp/proj.h +37 -0
  1740. casadi/include/osqp/scaling.h +44 -0
  1741. casadi/include/osqp/types.h +326 -0
  1742. casadi/include/osqp/util.h +222 -0
  1743. casadi/include/osqp/version.h +9 -0
  1744. casadi/include/proxsuite/config.hpp +68 -0
  1745. casadi/include/proxsuite/deprecated.hpp +56 -0
  1746. casadi/include/proxsuite/fwd.hpp +52 -0
  1747. casadi/include/proxsuite/helpers/common.hpp +70 -0
  1748. casadi/include/proxsuite/helpers/instruction-set.hpp +275 -0
  1749. casadi/include/proxsuite/helpers/optional.hpp +46 -0
  1750. casadi/include/proxsuite/helpers/tl-optional.hpp +2472 -0
  1751. casadi/include/proxsuite/helpers/version.hpp +39 -0
  1752. casadi/include/proxsuite/linalg/dense/core.hpp +863 -0
  1753. casadi/include/proxsuite/linalg/dense/factorize.hpp +375 -0
  1754. casadi/include/proxsuite/linalg/dense/ldlt.hpp +817 -0
  1755. casadi/include/proxsuite/linalg/dense/modify.hpp +333 -0
  1756. casadi/include/proxsuite/linalg/dense/solve.hpp +38 -0
  1757. casadi/include/proxsuite/linalg/dense/update.hpp +330 -0
  1758. casadi/include/proxsuite/linalg/sparse/core.hpp +531 -0
  1759. casadi/include/proxsuite/linalg/sparse/factorize.hpp +1303 -0
  1760. casadi/include/proxsuite/linalg/sparse/rowmod.hpp +443 -0
  1761. casadi/include/proxsuite/linalg/sparse/update.hpp +348 -0
  1762. casadi/include/proxsuite/linalg/veg/internal/assert_impl.hpp +20 -0
  1763. casadi/include/proxsuite/linalg/veg/internal/collection_algo.hpp +93 -0
  1764. casadi/include/proxsuite/linalg/veg/internal/dbg.hpp +15 -0
  1765. casadi/include/proxsuite/linalg/veg/internal/delete_special_members.hpp +77 -0
  1766. casadi/include/proxsuite/linalg/veg/internal/dyn_index.hpp +292 -0
  1767. casadi/include/proxsuite/linalg/veg/internal/epilogue.hpp +31 -0
  1768. casadi/include/proxsuite/linalg/veg/internal/external/hedley.ext.hpp +2074 -0
  1769. casadi/include/proxsuite/linalg/veg/internal/external/unhedley.ext.hpp +148 -0
  1770. casadi/include/proxsuite/linalg/veg/internal/fix_index.hpp +339 -0
  1771. casadi/include/proxsuite/linalg/veg/internal/has_asan.hpp +17 -0
  1772. casadi/include/proxsuite/linalg/veg/internal/integer_seq.hpp +248 -0
  1773. casadi/include/proxsuite/linalg/veg/internal/macros.hpp +1312 -0
  1774. casadi/include/proxsuite/linalg/veg/internal/narrow.hpp +46 -0
  1775. casadi/include/proxsuite/linalg/veg/internal/preprocessor.hpp +434 -0
  1776. casadi/include/proxsuite/linalg/veg/internal/prologue.hpp +157 -0
  1777. casadi/include/proxsuite/linalg/veg/internal/std.hpp +13 -0
  1778. casadi/include/proxsuite/linalg/veg/internal/terminate.hpp +22 -0
  1779. casadi/include/proxsuite/linalg/veg/internal/typedefs.hpp +58 -0
  1780. casadi/include/proxsuite/linalg/veg/memory/address.hpp +97 -0
  1781. casadi/include/proxsuite/linalg/veg/memory/alloc.hpp +352 -0
  1782. casadi/include/proxsuite/linalg/veg/memory/dynamic_stack.hpp +504 -0
  1783. casadi/include/proxsuite/linalg/veg/memory/placement.hpp +202 -0
  1784. casadi/include/proxsuite/linalg/veg/memory/stack_alloc.hpp +239 -0
  1785. casadi/include/proxsuite/linalg/veg/ref.hpp +148 -0
  1786. casadi/include/proxsuite/linalg/veg/slice.hpp +240 -0
  1787. casadi/include/proxsuite/linalg/veg/tuple.hpp +876 -0
  1788. casadi/include/proxsuite/linalg/veg/type_traits/alloc.hpp +169 -0
  1789. casadi/include/proxsuite/linalg/veg/type_traits/assignable.hpp +53 -0
  1790. casadi/include/proxsuite/linalg/veg/type_traits/constructible.hpp +217 -0
  1791. casadi/include/proxsuite/linalg/veg/type_traits/core.hpp +298 -0
  1792. casadi/include/proxsuite/linalg/veg/type_traits/invocable.hpp +47 -0
  1793. casadi/include/proxsuite/linalg/veg/type_traits/primitives.hpp +43 -0
  1794. casadi/include/proxsuite/linalg/veg/type_traits/tags.hpp +47 -0
  1795. casadi/include/proxsuite/linalg/veg/util/assert.hpp +48 -0
  1796. casadi/include/proxsuite/linalg/veg/util/dbg.hpp +6 -0
  1797. casadi/include/proxsuite/linalg/veg/util/defer.hpp +57 -0
  1798. casadi/include/proxsuite/linalg/veg/util/dynstack_alloc.hpp +19 -0
  1799. casadi/include/proxsuite/linalg/veg/util/get.hpp +153 -0
  1800. casadi/include/proxsuite/linalg/veg/util/index.hpp +6 -0
  1801. casadi/include/proxsuite/linalg/veg/util/unreachable.hpp +41 -0
  1802. casadi/include/proxsuite/linalg/veg/vec.hpp +1034 -0
  1803. casadi/include/proxsuite/proxqp/dense/dense.hpp +10 -0
  1804. casadi/include/proxsuite/proxqp/dense/fwd.hpp +55 -0
  1805. casadi/include/proxsuite/proxqp/dense/helpers.hpp +520 -0
  1806. casadi/include/proxsuite/proxqp/dense/linesearch.hpp +517 -0
  1807. casadi/include/proxsuite/proxqp/dense/model.hpp +147 -0
  1808. casadi/include/proxsuite/proxqp/dense/preconditioner/identity.hpp +113 -0
  1809. casadi/include/proxsuite/proxqp/dense/preconditioner/ruiz.hpp +571 -0
  1810. casadi/include/proxsuite/proxqp/dense/solver.hpp +1330 -0
  1811. casadi/include/proxsuite/proxqp/dense/utils.hpp +415 -0
  1812. casadi/include/proxsuite/proxqp/dense/views.hpp +1466 -0
  1813. casadi/include/proxsuite/proxqp/dense/workspace.hpp +264 -0
  1814. casadi/include/proxsuite/proxqp/dense/wrapper.hpp +491 -0
  1815. casadi/include/proxsuite/proxqp/results.hpp +212 -0
  1816. casadi/include/proxsuite/proxqp/settings.hpp +302 -0
  1817. casadi/include/proxsuite/proxqp/sparse/fwd.hpp +58 -0
  1818. casadi/include/proxsuite/proxqp/sparse/helpers.hpp +309 -0
  1819. casadi/include/proxsuite/proxqp/sparse/model.hpp +228 -0
  1820. casadi/include/proxsuite/proxqp/sparse/preconditioner/identity.hpp +64 -0
  1821. casadi/include/proxsuite/proxqp/sparse/preconditioner/ruiz.hpp +569 -0
  1822. casadi/include/proxsuite/proxqp/sparse/solver.hpp +1441 -0
  1823. casadi/include/proxsuite/proxqp/sparse/sparse.hpp +10 -0
  1824. casadi/include/proxsuite/proxqp/sparse/utils.hpp +815 -0
  1825. casadi/include/proxsuite/proxqp/sparse/views.hpp +63 -0
  1826. casadi/include/proxsuite/proxqp/sparse/workspace.hpp +790 -0
  1827. casadi/include/proxsuite/proxqp/sparse/wrapper.hpp +772 -0
  1828. casadi/include/proxsuite/proxqp/status.hpp +46 -0
  1829. casadi/include/proxsuite/proxqp/timings.hpp +101 -0
  1830. casadi/include/proxsuite/proxqp/utils/prints.hpp +47 -0
  1831. casadi/include/proxsuite/proxqp/utils/random_qp_problems.hpp +669 -0
  1832. casadi/include/proxsuite/serialization/archive.hpp +231 -0
  1833. casadi/include/proxsuite/serialization/eigen.hpp +107 -0
  1834. casadi/include/proxsuite/serialization/model.hpp +34 -0
  1835. casadi/include/proxsuite/serialization/results.hpp +74 -0
  1836. casadi/include/proxsuite/serialization/settings.hpp +60 -0
  1837. casadi/include/proxsuite/serialization/wrapper.hpp +24 -0
  1838. casadi/include/proxsuite/warning.hpp +35 -0
  1839. casadi/include/qdldl/qdldl.h +169 -0
  1840. casadi/include/qdldl/qdldl_types.h +23 -0
  1841. casadi/include/s_blas.h +78 -0
  1842. casadi/include/s_blas_64.h +73 -0
  1843. casadi/include/simde/arm/neon/aba.h +208 -0
  1844. casadi/include/simde/arm/neon/abd.h +384 -0
  1845. casadi/include/simde/arm/neon/abdl.h +147 -0
  1846. casadi/include/simde/arm/neon/abs.h +408 -0
  1847. casadi/include/simde/arm/neon/add.h +681 -0
  1848. casadi/include/simde/arm/neon/addl.h +127 -0
  1849. casadi/include/simde/arm/neon/addl_high.h +127 -0
  1850. casadi/include/simde/arm/neon/addlv.h +317 -0
  1851. casadi/include/simde/arm/neon/addv.h +447 -0
  1852. casadi/include/simde/arm/neon/addw.h +222 -0
  1853. casadi/include/simde/arm/neon/addw_high.h +193 -0
  1854. casadi/include/simde/arm/neon/and.h +552 -0
  1855. casadi/include/simde/arm/neon/bic.h +472 -0
  1856. casadi/include/simde/arm/neon/bsl.h +448 -0
  1857. casadi/include/simde/arm/neon/cagt.h +168 -0
  1858. casadi/include/simde/arm/neon/ceq.h +711 -0
  1859. casadi/include/simde/arm/neon/ceqz.h +335 -0
  1860. casadi/include/simde/arm/neon/cge.h +677 -0
  1861. casadi/include/simde/arm/neon/cgez.h +378 -0
  1862. casadi/include/simde/arm/neon/cgt.h +686 -0
  1863. casadi/include/simde/arm/neon/cgtz.h +380 -0
  1864. casadi/include/simde/arm/neon/cle.h +677 -0
  1865. casadi/include/simde/arm/neon/clez.h +378 -0
  1866. casadi/include/simde/arm/neon/cls.h +148 -0
  1867. casadi/include/simde/arm/neon/clt.h +679 -0
  1868. casadi/include/simde/arm/neon/cltz.h +263 -0
  1869. casadi/include/simde/arm/neon/clz.h +423 -0
  1870. casadi/include/simde/arm/neon/cnt.h +145 -0
  1871. casadi/include/simde/arm/neon/combine.h +343 -0
  1872. casadi/include/simde/arm/neon/create.h +186 -0
  1873. casadi/include/simde/arm/neon/cvt.h +492 -0
  1874. casadi/include/simde/arm/neon/dot.h +171 -0
  1875. casadi/include/simde/arm/neon/dot_lane.h +196 -0
  1876. casadi/include/simde/arm/neon/dup_lane.h +702 -0
  1877. casadi/include/simde/arm/neon/dup_n.h +534 -0
  1878. casadi/include/simde/arm/neon/eor.h +552 -0
  1879. casadi/include/simde/arm/neon/ext.h +887 -0
  1880. casadi/include/simde/arm/neon/get_high.h +260 -0
  1881. casadi/include/simde/arm/neon/get_lane.h +499 -0
  1882. casadi/include/simde/arm/neon/get_low.h +276 -0
  1883. casadi/include/simde/arm/neon/hadd.h +287 -0
  1884. casadi/include/simde/arm/neon/hsub.h +287 -0
  1885. casadi/include/simde/arm/neon/ld1.h +399 -0
  1886. casadi/include/simde/arm/neon/ld3.h +609 -0
  1887. casadi/include/simde/arm/neon/ld4.h +448 -0
  1888. casadi/include/simde/arm/neon/max.h +614 -0
  1889. casadi/include/simde/arm/neon/maxnm.h +215 -0
  1890. casadi/include/simde/arm/neon/maxv.h +400 -0
  1891. casadi/include/simde/arm/neon/min.h +660 -0
  1892. casadi/include/simde/arm/neon/minnm.h +215 -0
  1893. casadi/include/simde/arm/neon/minv.h +424 -0
  1894. casadi/include/simde/arm/neon/mla.h +530 -0
  1895. casadi/include/simde/arm/neon/mla_n.h +333 -0
  1896. casadi/include/simde/arm/neon/mlal.h +156 -0
  1897. casadi/include/simde/arm/neon/mlal_high.h +156 -0
  1898. casadi/include/simde/arm/neon/mlal_n.h +128 -0
  1899. casadi/include/simde/arm/neon/mls.h +264 -0
  1900. casadi/include/simde/arm/neon/mlsl.h +124 -0
  1901. casadi/include/simde/arm/neon/mlsl_high.h +124 -0
  1902. casadi/include/simde/arm/neon/mlsl_n.h +96 -0
  1903. casadi/include/simde/arm/neon/movl.h +208 -0
  1904. casadi/include/simde/arm/neon/movl_high.h +126 -0
  1905. casadi/include/simde/arm/neon/movn.h +195 -0
  1906. casadi/include/simde/arm/neon/movn_high.h +125 -0
  1907. casadi/include/simde/arm/neon/mul.h +594 -0
  1908. casadi/include/simde/arm/neon/mul_lane.h +472 -0
  1909. casadi/include/simde/arm/neon/mul_n.h +383 -0
  1910. casadi/include/simde/arm/neon/mull.h +236 -0
  1911. casadi/include/simde/arm/neon/mull_high.h +125 -0
  1912. casadi/include/simde/arm/neon/mull_n.h +158 -0
  1913. casadi/include/simde/arm/neon/mvn.h +426 -0
  1914. casadi/include/simde/arm/neon/neg.h +393 -0
  1915. casadi/include/simde/arm/neon/orn.h +505 -0
  1916. casadi/include/simde/arm/neon/orr.h +552 -0
  1917. casadi/include/simde/arm/neon/padal.h +211 -0
  1918. casadi/include/simde/arm/neon/padd.h +293 -0
  1919. casadi/include/simde/arm/neon/paddl.h +239 -0
  1920. casadi/include/simde/arm/neon/pmax.h +253 -0
  1921. casadi/include/simde/arm/neon/pmin.h +260 -0
  1922. casadi/include/simde/arm/neon/qabs.h +281 -0
  1923. casadi/include/simde/arm/neon/qadd.h +553 -0
  1924. casadi/include/simde/arm/neon/qdmulh.h +125 -0
  1925. casadi/include/simde/arm/neon/qdmull.h +125 -0
  1926. casadi/include/simde/arm/neon/qmovn.h +273 -0
  1927. casadi/include/simde/arm/neon/qmovn_high.h +127 -0
  1928. casadi/include/simde/arm/neon/qmovun.h +159 -0
  1929. casadi/include/simde/arm/neon/qneg.h +301 -0
  1930. casadi/include/simde/arm/neon/qrdmulh.h +165 -0
  1931. casadi/include/simde/arm/neon/qrdmulh_n.h +136 -0
  1932. casadi/include/simde/arm/neon/qshl.h +732 -0
  1933. casadi/include/simde/arm/neon/qsub.h +549 -0
  1934. casadi/include/simde/arm/neon/qtbl.h +455 -0
  1935. casadi/include/simde/arm/neon/qtbx.h +470 -0
  1936. casadi/include/simde/arm/neon/rbit.h +165 -0
  1937. casadi/include/simde/arm/neon/reinterpret.h +3101 -0
  1938. casadi/include/simde/arm/neon/rev16.h +137 -0
  1939. casadi/include/simde/arm/neon/rev32.h +235 -0
  1940. casadi/include/simde/arm/neon/rev64.h +358 -0
  1941. casadi/include/simde/arm/neon/rhadd.h +406 -0
  1942. casadi/include/simde/arm/neon/rnd.h +143 -0
  1943. casadi/include/simde/arm/neon/rndi.h +135 -0
  1944. casadi/include/simde/arm/neon/rndm.h +143 -0
  1945. casadi/include/simde/arm/neon/rndn.h +135 -0
  1946. casadi/include/simde/arm/neon/rndp.h +143 -0
  1947. casadi/include/simde/arm/neon/rshl.h +903 -0
  1948. casadi/include/simde/arm/neon/rshr_n.h +471 -0
  1949. casadi/include/simde/arm/neon/rsra_n.h +209 -0
  1950. casadi/include/simde/arm/neon/set_lane.h +422 -0
  1951. casadi/include/simde/arm/neon/shl.h +805 -0
  1952. casadi/include/simde/arm/neon/shl_n.h +560 -0
  1953. casadi/include/simde/arm/neon/shr_n.h +612 -0
  1954. casadi/include/simde/arm/neon/sra_n.h +202 -0
  1955. casadi/include/simde/arm/neon/st1.h +353 -0
  1956. casadi/include/simde/arm/neon/st1_lane.h +363 -0
  1957. casadi/include/simde/arm/neon/st3.h +426 -0
  1958. casadi/include/simde/arm/neon/st4.h +445 -0
  1959. casadi/include/simde/arm/neon/sub.h +659 -0
  1960. casadi/include/simde/arm/neon/subl.h +127 -0
  1961. casadi/include/simde/arm/neon/subw.h +221 -0
  1962. casadi/include/simde/arm/neon/subw_high.h +222 -0
  1963. casadi/include/simde/arm/neon/tbl.h +224 -0
  1964. casadi/include/simde/arm/neon/tbx.h +247 -0
  1965. casadi/include/simde/arm/neon/trn.h +252 -0
  1966. casadi/include/simde/arm/neon/trn1.h +500 -0
  1967. casadi/include/simde/arm/neon/trn2.h +499 -0
  1968. casadi/include/simde/arm/neon/tst.h +540 -0
  1969. casadi/include/simde/arm/neon/types.h +683 -0
  1970. casadi/include/simde/arm/neon/uqadd.h +325 -0
  1971. casadi/include/simde/arm/neon/uzp.h +252 -0
  1972. casadi/include/simde/arm/neon/uzp1.h +643 -0
  1973. casadi/include/simde/arm/neon/uzp2.h +647 -0
  1974. casadi/include/simde/arm/neon/zip.h +252 -0
  1975. casadi/include/simde/arm/neon/zip1.h +625 -0
  1976. casadi/include/simde/arm/neon/zip2.h +625 -0
  1977. casadi/include/simde/arm/neon.h +166 -0
  1978. casadi/include/simde/check.h +276 -0
  1979. casadi/include/simde/debug-trap.h +85 -0
  1980. casadi/include/simde/hedley.h +1971 -0
  1981. casadi/include/simde/simde-align.h +449 -0
  1982. casadi/include/simde/simde-arch.h +532 -0
  1983. casadi/include/simde/simde-common.h +890 -0
  1984. casadi/include/simde/simde-complex.h +148 -0
  1985. casadi/include/simde/simde-constify.h +397 -0
  1986. casadi/include/simde/simde-detect-clang.h +109 -0
  1987. casadi/include/simde/simde-diagnostic.h +428 -0
  1988. casadi/include/simde/simde-features.h +522 -0
  1989. casadi/include/simde/simde-math.h +1805 -0
  1990. casadi/include/simde/x86/avx.h +6193 -0
  1991. casadi/include/simde/x86/avx2.h +5660 -0
  1992. casadi/include/simde/x86/avx512/2intersect.h +250 -0
  1993. casadi/include/simde/x86/avx512/abs.h +562 -0
  1994. casadi/include/simde/x86/avx512/add.h +641 -0
  1995. casadi/include/simde/x86/avx512/adds.h +390 -0
  1996. casadi/include/simde/x86/avx512/and.h +305 -0
  1997. casadi/include/simde/x86/avx512/andnot.h +193 -0
  1998. casadi/include/simde/x86/avx512/avg.h +258 -0
  1999. casadi/include/simde/x86/avx512/blend.h +293 -0
  2000. casadi/include/simde/x86/avx512/broadcast.h +897 -0
  2001. casadi/include/simde/x86/avx512/cast.h +324 -0
  2002. casadi/include/simde/x86/avx512/cmp.h +587 -0
  2003. casadi/include/simde/x86/avx512/cmpeq.h +179 -0
  2004. casadi/include/simde/x86/avx512/cmpge.h +104 -0
  2005. casadi/include/simde/x86/avx512/cmpgt.h +189 -0
  2006. casadi/include/simde/x86/avx512/cmple.h +103 -0
  2007. casadi/include/simde/x86/avx512/cmplt.h +123 -0
  2008. casadi/include/simde/x86/avx512/copysign.h +86 -0
  2009. casadi/include/simde/x86/avx512/cvt.h +122 -0
  2010. casadi/include/simde/x86/avx512/cvts.h +723 -0
  2011. casadi/include/simde/x86/avx512/div.h +162 -0
  2012. casadi/include/simde/x86/avx512/extract.h +198 -0
  2013. casadi/include/simde/x86/avx512/fmadd.h +136 -0
  2014. casadi/include/simde/x86/avx512/fmsub.h +108 -0
  2015. casadi/include/simde/x86/avx512/fnmadd.h +108 -0
  2016. casadi/include/simde/x86/avx512/fnmsub.h +108 -0
  2017. casadi/include/simde/x86/avx512/insert.h +193 -0
  2018. casadi/include/simde/x86/avx512/kshift.h +152 -0
  2019. casadi/include/simde/x86/avx512/load.h +67 -0
  2020. casadi/include/simde/x86/avx512/loadu.h +113 -0
  2021. casadi/include/simde/x86/avx512/lzcnt.h +209 -0
  2022. casadi/include/simde/x86/avx512/madd.h +155 -0
  2023. casadi/include/simde/x86/avx512/maddubs.h +159 -0
  2024. casadi/include/simde/x86/avx512/max.h +587 -0
  2025. casadi/include/simde/x86/avx512/min.h +587 -0
  2026. casadi/include/simde/x86/avx512/mov.h +859 -0
  2027. casadi/include/simde/x86/avx512/mov_mask.h +372 -0
  2028. casadi/include/simde/x86/avx512/movm.h +460 -0
  2029. casadi/include/simde/x86/avx512/mul.h +279 -0
  2030. casadi/include/simde/x86/avx512/mulhi.h +65 -0
  2031. casadi/include/simde/x86/avx512/mulhrs.h +65 -0
  2032. casadi/include/simde/x86/avx512/mullo.h +117 -0
  2033. casadi/include/simde/x86/avx512/negate.h +88 -0
  2034. casadi/include/simde/x86/avx512/or.h +252 -0
  2035. casadi/include/simde/x86/avx512/packs.h +122 -0
  2036. casadi/include/simde/x86/avx512/packus.h +122 -0
  2037. casadi/include/simde/x86/avx512/permutex2var.h +1645 -0
  2038. casadi/include/simde/x86/avx512/permutexvar.h +1180 -0
  2039. casadi/include/simde/x86/avx512/sad.h +77 -0
  2040. casadi/include/simde/x86/avx512/set.h +477 -0
  2041. casadi/include/simde/x86/avx512/set1.h +331 -0
  2042. casadi/include/simde/x86/avx512/set4.h +140 -0
  2043. casadi/include/simde/x86/avx512/setone.h +66 -0
  2044. casadi/include/simde/x86/avx512/setr.h +144 -0
  2045. casadi/include/simde/x86/avx512/setr4.h +140 -0
  2046. casadi/include/simde/x86/avx512/setzero.h +90 -0
  2047. casadi/include/simde/x86/avx512/shuffle.h +176 -0
  2048. casadi/include/simde/x86/avx512/sll.h +247 -0
  2049. casadi/include/simde/x86/avx512/slli.h +179 -0
  2050. casadi/include/simde/x86/avx512/sllv.h +68 -0
  2051. casadi/include/simde/x86/avx512/sqrt.h +127 -0
  2052. casadi/include/simde/x86/avx512/sra.h +81 -0
  2053. casadi/include/simde/x86/avx512/srai.h +70 -0
  2054. casadi/include/simde/x86/avx512/srav.h +67 -0
  2055. casadi/include/simde/x86/avx512/srl.h +216 -0
  2056. casadi/include/simde/x86/avx512/srli.h +180 -0
  2057. casadi/include/simde/x86/avx512/srlv.h +282 -0
  2058. casadi/include/simde/x86/avx512/store.h +93 -0
  2059. casadi/include/simde/x86/avx512/storeu.h +93 -0
  2060. casadi/include/simde/x86/avx512/sub.h +351 -0
  2061. casadi/include/simde/x86/avx512/subs.h +222 -0
  2062. casadi/include/simde/x86/avx512/test.h +193 -0
  2063. casadi/include/simde/x86/avx512/types.h +380 -0
  2064. casadi/include/simde/x86/avx512/unpackhi.h +380 -0
  2065. casadi/include/simde/x86/avx512/unpacklo.h +104 -0
  2066. casadi/include/simde/x86/avx512/xor.h +263 -0
  2067. casadi/include/simde/x86/avx512/xorsign.h +72 -0
  2068. casadi/include/simde/x86/avx512.h +108 -0
  2069. casadi/include/simde/x86/clmul.h +414 -0
  2070. casadi/include/simde/x86/fma.h +724 -0
  2071. casadi/include/simde/x86/gfni.h +802 -0
  2072. casadi/include/simde/x86/mmx.h +2399 -0
  2073. casadi/include/simde/x86/sse.h +4471 -0
  2074. casadi/include/simde/x86/sse2.h +7389 -0
  2075. casadi/include/simde/x86/sse3.h +499 -0
  2076. casadi/include/simde/x86/sse4.1.h +2216 -0
  2077. casadi/include/simde/x86/sse4.2.h +347 -0
  2078. casadi/include/simde/x86/ssse3.h +1032 -0
  2079. casadi/include/simde/x86/svml.h +12139 -0
  2080. casadi/include/simde/x86/xop.h +3644 -0
  2081. casadi/include/sleqp/defs.h +58 -0
  2082. casadi/include/sleqp/export.h +43 -0
  2083. casadi/include/sleqp/pub_cmp.h +18 -0
  2084. casadi/include/sleqp/pub_dyn.h +140 -0
  2085. casadi/include/sleqp/pub_error.h +50 -0
  2086. casadi/include/sleqp/pub_func.h +257 -0
  2087. casadi/include/sleqp/pub_hess_struct.h +105 -0
  2088. casadi/include/sleqp/pub_iterate.h +88 -0
  2089. casadi/include/sleqp/pub_log.h +88 -0
  2090. casadi/include/sleqp/pub_lsq.h +158 -0
  2091. casadi/include/sleqp/pub_mem.h +52 -0
  2092. casadi/include/sleqp/pub_problem.h +213 -0
  2093. casadi/include/sleqp/pub_scale.h +150 -0
  2094. casadi/include/sleqp/pub_settings.h +162 -0
  2095. casadi/include/sleqp/pub_solver.h +155 -0
  2096. casadi/include/sleqp/pub_types.h +230 -0
  2097. casadi/include/sleqp/pub_working_set.h +135 -0
  2098. casadi/include/sleqp/sparse/pub_mat.h +153 -0
  2099. casadi/include/sleqp/sparse/pub_vec.h +336 -0
  2100. casadi/include/sleqp.h +38 -0
  2101. casadi/include/spral.h +13 -0
  2102. casadi/include/spral_lsmr.h +57 -0
  2103. casadi/include/spral_matrix_util.h +40 -0
  2104. casadi/include/spral_random.h +26 -0
  2105. casadi/include/spral_random_matrix.h +27 -0
  2106. casadi/include/spral_rutherford_boeing.h +51 -0
  2107. casadi/include/spral_scaling.h +139 -0
  2108. casadi/include/spral_ssids.h +121 -0
  2109. casadi/include/spral_ssmfe.h +268 -0
  2110. casadi/include/superscs/cones.h +185 -0
  2111. casadi/include/superscs/constants.h +144 -0
  2112. casadi/include/superscs/cs.h +109 -0
  2113. casadi/include/superscs/ctrlc.h +77 -0
  2114. casadi/include/superscs/directions.h +125 -0
  2115. casadi/include/superscs/glbopts.h +240 -0
  2116. casadi/include/superscs/linAlg.h +437 -0
  2117. casadi/include/superscs/linSys.h +205 -0
  2118. casadi/include/superscs/linsys/amatrix.h +77 -0
  2119. casadi/include/superscs/linsys/common.h +49 -0
  2120. casadi/include/superscs/normalize.h +138 -0
  2121. casadi/include/superscs/scs.h +656 -0
  2122. casadi/include/superscs/scs_blas.h +79 -0
  2123. casadi/include/superscs/scs_parser.h +187 -0
  2124. casadi/include/superscs/unit_test_util.h +210 -0
  2125. casadi/include/superscs/util.h +354 -0
  2126. casadi/include/trlib/trlib_eigen_inverse.h +118 -0
  2127. casadi/include/trlib/trlib_krylov.h +493 -0
  2128. casadi/include/trlib/trlib_leftmost.h +181 -0
  2129. casadi/include/trlib/trlib_private.h +109 -0
  2130. casadi/include/trlib/trlib_quadratic_zero.h +57 -0
  2131. casadi/include/trlib/trlib_tri_factor.h +409 -0
  2132. casadi/include/trlib/trlib_types.h +36 -0
  2133. casadi/include/trlib.h +44 -0
  2134. casadi/include/zconf.h +545 -0
  2135. casadi/include/zip.h +528 -0
  2136. casadi/include/zipconf.h +48 -0
  2137. casadi/include/zlib.h +1938 -0
  2138. casadi/libCbc.la +35 -0
  2139. casadi/libCbc.so +0 -0
  2140. casadi/libCbc.so.3 +0 -0
  2141. casadi/libCbc.so.3.10.11 +0 -0
  2142. casadi/libCbcSolver.la +35 -0
  2143. casadi/libCbcSolver.so +0 -0
  2144. casadi/libCbcSolver.so.3 +0 -0
  2145. casadi/libCbcSolver.so.3.10.11 +0 -0
  2146. casadi/libCgl.la +35 -0
  2147. casadi/libCgl.so +0 -0
  2148. casadi/libCgl.so.1 +0 -0
  2149. casadi/libCgl.so.1.10.8 +0 -0
  2150. casadi/libClp.la +35 -0
  2151. casadi/libClp.so +0 -0
  2152. casadi/libClp.so.1 +0 -0
  2153. casadi/libClp.so.1.14.9 +0 -0
  2154. casadi/libClpSolver.la +35 -0
  2155. casadi/libClpSolver.so +0 -0
  2156. casadi/libClpSolver.so.1 +0 -0
  2157. casadi/libClpSolver.so.1.14.9 +0 -0
  2158. casadi/libCoinUtils.la +35 -0
  2159. casadi/libCoinUtils.so +0 -0
  2160. casadi/libCoinUtils.so.3 +0 -0
  2161. casadi/libCoinUtils.so.3.11.10 +0 -0
  2162. casadi/libOsi.la +35 -0
  2163. casadi/libOsi.so +0 -0
  2164. casadi/libOsi.so.1 +0 -0
  2165. casadi/libOsi.so.1.13.9 +0 -0
  2166. casadi/libOsiCbc.la +35 -0
  2167. casadi/libOsiCbc.so +0 -0
  2168. casadi/libOsiCbc.so.3 +0 -0
  2169. casadi/libOsiCbc.so.3.10.11 +0 -0
  2170. casadi/libOsiClp.la +35 -0
  2171. casadi/libOsiClp.so +0 -0
  2172. casadi/libOsiClp.so.1 +0 -0
  2173. casadi/libOsiClp.so.1.14.9 +0 -0
  2174. casadi/libOsiCommonTests.la +35 -0
  2175. casadi/libOsiCommonTests.so +0 -0
  2176. casadi/libOsiCommonTests.so.1 +0 -0
  2177. casadi/libOsiCommonTests.so.1.13.9 +0 -0
  2178. casadi/libalpaqa-dl-loader.so +0 -0
  2179. casadi/libalpaqa-dl-loader.so.1.0.0 +0 -0
  2180. casadi/libalpaqa.so +0 -0
  2181. casadi/libalpaqa.so.1.0.0 +0 -0
  2182. casadi/libblasfeo.so +0 -0
  2183. casadi/libbonmin.la +35 -0
  2184. casadi/libbonmin.so +0 -0
  2185. casadi/libbonmin.so.4 +0 -0
  2186. casadi/libbonmin.so.4.8.9 +0 -0
  2187. casadi/libcasadi-tp-openblas.so +0 -0
  2188. casadi/libcasadi-tp-openblas.so.0 +0 -0
  2189. casadi/libcasadi-tp-openblas.so.0.3 +0 -0
  2190. casadi/libcasadi.so +0 -0
  2191. casadi/libcasadi.so.3.7 +0 -0
  2192. casadi/libcasadi_archiver_libzip.so +0 -0
  2193. casadi/libcasadi_archiver_libzip.so.3.7 +0 -0
  2194. casadi/libcasadi_conic_cbc.so +0 -0
  2195. casadi/libcasadi_conic_cbc.so.3.7 +0 -0
  2196. casadi/libcasadi_conic_clp.so +0 -0
  2197. casadi/libcasadi_conic_clp.so.3.7 +0 -0
  2198. casadi/libcasadi_conic_cplex.so +0 -0
  2199. casadi/libcasadi_conic_cplex.so.3.7 +0 -0
  2200. casadi/libcasadi_conic_daqp.so +0 -0
  2201. casadi/libcasadi_conic_daqp.so.3.7 +0 -0
  2202. casadi/libcasadi_conic_fatrop.so +0 -0
  2203. casadi/libcasadi_conic_fatrop.so.3.7 +0 -0
  2204. casadi/libcasadi_conic_gurobi.so +0 -0
  2205. casadi/libcasadi_conic_gurobi.so.3.7 +0 -0
  2206. casadi/libcasadi_conic_highs.so +0 -0
  2207. casadi/libcasadi_conic_highs.so.3.7 +0 -0
  2208. casadi/libcasadi_conic_hpipm.so +0 -0
  2209. casadi/libcasadi_conic_hpipm.so.3.7 +0 -0
  2210. casadi/libcasadi_conic_ipqp.so +0 -0
  2211. casadi/libcasadi_conic_ipqp.so.3.7 +0 -0
  2212. casadi/libcasadi_conic_nlpsol.so +0 -0
  2213. casadi/libcasadi_conic_nlpsol.so.3.7 +0 -0
  2214. casadi/libcasadi_conic_osqp.so +0 -0
  2215. casadi/libcasadi_conic_osqp.so.3.7 +0 -0
  2216. casadi/libcasadi_conic_proxqp.so +0 -0
  2217. casadi/libcasadi_conic_proxqp.so.3.7 +0 -0
  2218. casadi/libcasadi_conic_qpoases.so +0 -0
  2219. casadi/libcasadi_conic_qpoases.so.3.7 +0 -0
  2220. casadi/libcasadi_conic_qrqp.so +0 -0
  2221. casadi/libcasadi_conic_qrqp.so.3.7 +0 -0
  2222. casadi/libcasadi_conic_superscs.so +0 -0
  2223. casadi/libcasadi_conic_superscs.so.3.7 +0 -0
  2224. casadi/libcasadi_filesystem_ghc.so +0 -0
  2225. casadi/libcasadi_filesystem_ghc.so.3.7 +0 -0
  2226. casadi/libcasadi_importer_shell.so +0 -0
  2227. casadi/libcasadi_importer_shell.so.3.7 +0 -0
  2228. casadi/libcasadi_integrator_collocation.so +0 -0
  2229. casadi/libcasadi_integrator_collocation.so.3.7 +0 -0
  2230. casadi/libcasadi_integrator_cvodes.so +0 -0
  2231. casadi/libcasadi_integrator_cvodes.so.3.7 +0 -0
  2232. casadi/libcasadi_integrator_idas.so +0 -0
  2233. casadi/libcasadi_integrator_idas.so.3.7 +0 -0
  2234. casadi/libcasadi_integrator_rk.so +0 -0
  2235. casadi/libcasadi_integrator_rk.so.3.7 +0 -0
  2236. casadi/libcasadi_interpolant_bspline.so +0 -0
  2237. casadi/libcasadi_interpolant_bspline.so.3.7 +0 -0
  2238. casadi/libcasadi_interpolant_linear.so +0 -0
  2239. casadi/libcasadi_interpolant_linear.so.3.7 +0 -0
  2240. casadi/libcasadi_linsol_csparse.so +0 -0
  2241. casadi/libcasadi_linsol_csparse.so.3.7 +0 -0
  2242. casadi/libcasadi_linsol_csparsecholesky.so +0 -0
  2243. casadi/libcasadi_linsol_csparsecholesky.so.3.7 +0 -0
  2244. casadi/libcasadi_linsol_lapacklu.so +0 -0
  2245. casadi/libcasadi_linsol_lapacklu.so.3.7 +0 -0
  2246. casadi/libcasadi_linsol_lapackqr.so +0 -0
  2247. casadi/libcasadi_linsol_lapackqr.so.3.7 +0 -0
  2248. casadi/libcasadi_linsol_ldl.so +0 -0
  2249. casadi/libcasadi_linsol_ldl.so.3.7 +0 -0
  2250. casadi/libcasadi_linsol_lsqr.so +0 -0
  2251. casadi/libcasadi_linsol_lsqr.so.3.7 +0 -0
  2252. casadi/libcasadi_linsol_ma27.so +0 -0
  2253. casadi/libcasadi_linsol_ma27.so.3.7 +0 -0
  2254. casadi/libcasadi_linsol_mumps.so +0 -0
  2255. casadi/libcasadi_linsol_mumps.so.3.7 +0 -0
  2256. casadi/libcasadi_linsol_qr.so +0 -0
  2257. casadi/libcasadi_linsol_qr.so.3.7 +0 -0
  2258. casadi/libcasadi_linsol_symbolicqr.so +0 -0
  2259. casadi/libcasadi_linsol_symbolicqr.so.3.7 +0 -0
  2260. casadi/libcasadi_linsol_tridiag.so +0 -0
  2261. casadi/libcasadi_linsol_tridiag.so.3.7 +0 -0
  2262. casadi/libcasadi_nlpsol_alpaqa.so +0 -0
  2263. casadi/libcasadi_nlpsol_alpaqa.so.3.7 +0 -0
  2264. casadi/libcasadi_nlpsol_ampl.so +0 -0
  2265. casadi/libcasadi_nlpsol_ampl.so.3.7 +0 -0
  2266. casadi/libcasadi_nlpsol_blocksqp.so +0 -0
  2267. casadi/libcasadi_nlpsol_blocksqp.so.3.7 +0 -0
  2268. casadi/libcasadi_nlpsol_bonmin.so +0 -0
  2269. casadi/libcasadi_nlpsol_bonmin.so.3.7 +0 -0
  2270. casadi/libcasadi_nlpsol_fatrop.so +0 -0
  2271. casadi/libcasadi_nlpsol_fatrop.so.3.7 +0 -0
  2272. casadi/libcasadi_nlpsol_feasiblesqpmethod.so +0 -0
  2273. casadi/libcasadi_nlpsol_feasiblesqpmethod.so.3.7 +0 -0
  2274. casadi/libcasadi_nlpsol_ipopt.so +0 -0
  2275. casadi/libcasadi_nlpsol_ipopt.so.3.7 +0 -0
  2276. casadi/libcasadi_nlpsol_knitro.so +0 -0
  2277. casadi/libcasadi_nlpsol_knitro.so.3.7 +0 -0
  2278. casadi/libcasadi_nlpsol_madnlp.so +0 -0
  2279. casadi/libcasadi_nlpsol_madnlp.so.3.7 +0 -0
  2280. casadi/libcasadi_nlpsol_qrsqp.so +0 -0
  2281. casadi/libcasadi_nlpsol_qrsqp.so.3.7 +0 -0
  2282. casadi/libcasadi_nlpsol_scpgen.so +0 -0
  2283. casadi/libcasadi_nlpsol_scpgen.so.3.7 +0 -0
  2284. casadi/libcasadi_nlpsol_sleqp.so +0 -0
  2285. casadi/libcasadi_nlpsol_sleqp.so.3.7 +0 -0
  2286. casadi/libcasadi_nlpsol_snopt.so +0 -0
  2287. casadi/libcasadi_nlpsol_snopt.so.3.7 +0 -0
  2288. casadi/libcasadi_nlpsol_sqpmethod.so +0 -0
  2289. casadi/libcasadi_nlpsol_sqpmethod.so.3.7 +0 -0
  2290. casadi/libcasadi_nlpsol_worhp.so +0 -0
  2291. casadi/libcasadi_nlpsol_worhp.so.3.7 +0 -0
  2292. casadi/libcasadi_rootfinder_fast_newton.so +0 -0
  2293. casadi/libcasadi_rootfinder_fast_newton.so.3.7 +0 -0
  2294. casadi/libcasadi_rootfinder_kinsol.so +0 -0
  2295. casadi/libcasadi_rootfinder_kinsol.so.3.7 +0 -0
  2296. casadi/libcasadi_rootfinder_newton.so +0 -0
  2297. casadi/libcasadi_rootfinder_newton.so.3.7 +0 -0
  2298. casadi/libcasadi_rootfinder_nlpsol.so +0 -0
  2299. casadi/libcasadi_rootfinder_nlpsol.so.3.7 +0 -0
  2300. casadi/libcasadi_sundials_common.so +0 -0
  2301. casadi/libcasadi_sundials_common.so.3.7 +0 -0
  2302. casadi/libcasadi_xmlfile_tinyxml.so +0 -0
  2303. casadi/libcasadi_xmlfile_tinyxml.so.3.7 +0 -0
  2304. casadi/libcoinmetis.la +41 -0
  2305. casadi/libcoinmetis.so +0 -0
  2306. casadi/libcoinmetis.so.2 +0 -0
  2307. casadi/libcoinmetis.so.2.0.0 +0 -0
  2308. casadi/libcoinmumps.la +41 -0
  2309. casadi/libcoinmumps.so +0 -0
  2310. casadi/libcoinmumps.so.3 +0 -0
  2311. casadi/libcoinmumps.so.3.0.1 +0 -0
  2312. casadi/libcplex_adaptor.so +0 -0
  2313. casadi/libdaqp.so +0 -0
  2314. casadi/libdaqpstat.a +0 -0
  2315. casadi/libfatrop.so +0 -0
  2316. casadi/libgfortran-040039e1.so.5.0.0 +0 -0
  2317. casadi/libgurobi_adaptor.so +0 -0
  2318. casadi/libhighs.so +0 -0
  2319. casadi/libhighs.so.1 +0 -0
  2320. casadi/libhighs.so.1.10.0 +0 -0
  2321. casadi/libhpipm.so +0 -0
  2322. casadi/libindirect.a +0 -0
  2323. casadi/libipopt.la +41 -0
  2324. casadi/libipopt.so +0 -0
  2325. casadi/libipopt.so.3 +0 -0
  2326. casadi/libipopt.so.3.14.11 +0 -0
  2327. casadi/liblinsys.a +0 -0
  2328. casadi/libmatlab_ipc.so +0 -0
  2329. casadi/libosqp.a +0 -0
  2330. casadi/libosqp.so +0 -0
  2331. casadi/libqdldl.a +0 -0
  2332. casadi/libqdldl.so +0 -0
  2333. casadi/libquadmath-96973f99.so.0.0.0 +0 -0
  2334. casadi/libsipopt.la +41 -0
  2335. casadi/libsipopt.so +0 -0
  2336. casadi/libsipopt.so.3 +0 -0
  2337. casadi/libsipopt.so.3.14.11 +0 -0
  2338. casadi/libsleqp.so +0 -0
  2339. casadi/libsleqp.so.1.0.1 +0 -0
  2340. casadi/libspral.a +0 -0
  2341. casadi/libsuperscs.a +0 -0
  2342. casadi/libtrlib.so +0 -0
  2343. casadi/libtrlib.so.0.4 +0 -0
  2344. casadi/libz.a +0 -0
  2345. casadi/libz.so +0 -0
  2346. casadi/libz.so.1 +0 -0
  2347. casadi/libz.so.1.3.1 +0 -0
  2348. casadi/libzip.a +0 -0
  2349. casadi/pkgconfig/blas.pc +11 -0
  2350. casadi/pkgconfig/bonmin.pc +12 -0
  2351. casadi/pkgconfig/casadi.pc +12 -0
  2352. casadi/pkgconfig/cbc.pc +12 -0
  2353. casadi/pkgconfig/cgl.pc +12 -0
  2354. casadi/pkgconfig/clp.pc +12 -0
  2355. casadi/pkgconfig/coinmetis.pc +13 -0
  2356. casadi/pkgconfig/coinmumps.pc +15 -0
  2357. casadi/pkgconfig/coinutils.pc +12 -0
  2358. casadi/pkgconfig/highs.pc +12 -0
  2359. casadi/pkgconfig/ipopt.pc +15 -0
  2360. casadi/pkgconfig/lapack.pc +11 -0
  2361. casadi/pkgconfig/libzip.pc +14 -0
  2362. casadi/pkgconfig/openblas.pc +11 -0
  2363. casadi/pkgconfig/osi-cbc.pc +12 -0
  2364. casadi/pkgconfig/osi-clp.pc +12 -0
  2365. casadi/pkgconfig/osi-unittests.pc +12 -0
  2366. casadi/pkgconfig/osi.pc +12 -0
  2367. casadi/pkgconfig/sleqp.pc +10 -0
  2368. casadi/tools/__init__.py +54 -0
  2369. casadi/tools/bounds.py +107 -0
  2370. casadi/tools/graph/__init__.py +35 -0
  2371. casadi/tools/graph/graph.py +747 -0
  2372. casadi/tools/in_out.py +89 -0
  2373. casadi/tools/structure3.py +1441 -0
  2374. casadi-3.7.2.dist-info/METADATA +45 -0
  2375. casadi-3.7.2.dist-info/RECORD +2377 -0
  2376. casadi-3.7.2.dist-info/WHEEL +4 -0
  2377. dummy.txt +1 -0
@@ -0,0 +1,2216 @@
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
+ * 2017-2020 Evan Nemerson <evan@nemerson.com>
25
+ */
26
+
27
+ #include "sse.h"
28
+ #if !defined(SIMDE_X86_SSE4_1_H)
29
+ #define SIMDE_X86_SSE4_1_H
30
+
31
+ #include "ssse3.h"
32
+
33
+ HEDLEY_DIAGNOSTIC_PUSH
34
+ SIMDE_DISABLE_UNWANTED_DIAGNOSTICS
35
+ SIMDE_BEGIN_DECLS_
36
+
37
+ #if !defined(SIMDE_X86_SSE4_1_NATIVE) && defined(SIMDE_ENABLE_NATIVE_ALIASES)
38
+ # define SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES
39
+ #endif
40
+
41
+ SIMDE_FUNCTION_ATTRIBUTES
42
+ simde__m128i
43
+ simde_mm_blend_epi16 (simde__m128i a, simde__m128i b, const int imm8)
44
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 255) {
45
+ simde__m128i_private
46
+ r_,
47
+ a_ = simde__m128i_to_private(a),
48
+ b_ = simde__m128i_to_private(b);
49
+
50
+ SIMDE_VECTORIZE
51
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
52
+ r_.u16[i] = ((imm8 >> i) & 1) ? b_.u16[i] : a_.u16[i];
53
+ }
54
+
55
+ return simde__m128i_from_private(r_);
56
+ }
57
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
58
+ # define simde_mm_blend_epi16(a, b, imm8) _mm_blend_epi16(a, b, imm8)
59
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
60
+ # define simde_mm_blend_epi16(a, b, imm8) \
61
+ (__extension__ ({ \
62
+ const uint16_t _mask[8] = { \
63
+ ((imm8) & (1 << 0)) ? 0xFFFF : 0x0000, \
64
+ ((imm8) & (1 << 1)) ? 0xFFFF : 0x0000, \
65
+ ((imm8) & (1 << 2)) ? 0xFFFF : 0x0000, \
66
+ ((imm8) & (1 << 3)) ? 0xFFFF : 0x0000, \
67
+ ((imm8) & (1 << 4)) ? 0xFFFF : 0x0000, \
68
+ ((imm8) & (1 << 5)) ? 0xFFFF : 0x0000, \
69
+ ((imm8) & (1 << 6)) ? 0xFFFF : 0x0000, \
70
+ ((imm8) & (1 << 7)) ? 0xFFFF : 0x0000 \
71
+ }; \
72
+ uint16x8_t _mask_vec = vld1q_u16(_mask); \
73
+ simde__m128i_from_neon_u16(vbslq_u16(_mask_vec, simde__m128i_to_neon_u16(b), simde__m128i_to_neon_u16(a))); \
74
+ }))
75
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
76
+ # define simde_mm_blend_epi16(a, b, imm8) \
77
+ (__extension__ ({ \
78
+ const SIMDE_POWER_ALTIVEC_VECTOR(unsigned short) _mask = { \
79
+ ((imm8) & (1 << 0)) ? 0xFFFF : 0x0000, \
80
+ ((imm8) & (1 << 1)) ? 0xFFFF : 0x0000, \
81
+ ((imm8) & (1 << 2)) ? 0xFFFF : 0x0000, \
82
+ ((imm8) & (1 << 3)) ? 0xFFFF : 0x0000, \
83
+ ((imm8) & (1 << 4)) ? 0xFFFF : 0x0000, \
84
+ ((imm8) & (1 << 5)) ? 0xFFFF : 0x0000, \
85
+ ((imm8) & (1 << 6)) ? 0xFFFF : 0x0000, \
86
+ ((imm8) & (1 << 7)) ? 0xFFFF : 0x0000 \
87
+ }; \
88
+ simde__m128i_from_altivec_u16(vec_sel(simde__m128i_to_altivec_u16(a), simde__m128i_to_altivec_u16(b), _mask)); \
89
+ }))
90
+ #endif
91
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
92
+ #undef _mm_blend_epi16
93
+ #define _mm_blend_epi16(a, b, imm8) simde_mm_blend_epi16(a, b, imm8)
94
+ #endif
95
+
96
+ SIMDE_FUNCTION_ATTRIBUTES
97
+ simde__m128d
98
+ simde_mm_blend_pd (simde__m128d a, simde__m128d b, const int imm8)
99
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 3) {
100
+ simde__m128d_private
101
+ r_,
102
+ a_ = simde__m128d_to_private(a),
103
+ b_ = simde__m128d_to_private(b);
104
+
105
+ SIMDE_VECTORIZE
106
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
107
+ r_.f64[i] = ((imm8 >> i) & 1) ? b_.f64[i] : a_.f64[i];
108
+ }
109
+ return simde__m128d_from_private(r_);
110
+ }
111
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
112
+ # define simde_mm_blend_pd(a, b, imm8) _mm_blend_pd(a, b, imm8)
113
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
114
+ # define simde_mm_blend_pd(a, b, imm8) \
115
+ (__extension__ ({ \
116
+ const uint64_t _mask[2] = { \
117
+ ((imm8) & (1 << 0)) ? UINT64_MAX : 0, \
118
+ ((imm8) & (1 << 1)) ? UINT64_MAX : 0 \
119
+ }; \
120
+ uint64x2_t _mask_vec = vld1q_u64(_mask); \
121
+ simde__m128d_from_neon_u64(vbslq_u64(_mask_vec, simde__m128d_to_neon_u64(b), simde__m128d_to_neon_u64(a))); \
122
+ }))
123
+ #elif defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
124
+ # define simde_mm_blend_pd(a, b, imm8) \
125
+ (__extension__ ({ \
126
+ const SIMDE_POWER_ALTIVEC_VECTOR(unsigned long long) _mask = { \
127
+ ((imm8) & (1 << 0)) ? UINT64_MAX : 0, \
128
+ ((imm8) & (1 << 1)) ? UINT64_MAX : 0 \
129
+ }; \
130
+ simde__m128d_from_altivec_f64(vec_sel(simde__m128d_to_altivec_f64(a), simde__m128d_to_altivec_f64(b), _mask)); \
131
+ }))
132
+ #endif
133
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
134
+ #undef _mm_blend_pd
135
+ #define _mm_blend_pd(a, b, imm8) simde_mm_blend_pd(a, b, imm8)
136
+ #endif
137
+
138
+ SIMDE_FUNCTION_ATTRIBUTES
139
+ simde__m128
140
+ simde_mm_blend_ps (simde__m128 a, simde__m128 b, const int imm8)
141
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 15) {
142
+ simde__m128_private
143
+ r_,
144
+ a_ = simde__m128_to_private(a),
145
+ b_ = simde__m128_to_private(b);
146
+
147
+ SIMDE_VECTORIZE
148
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
149
+ r_.f32[i] = ((imm8 >> i) & 1) ? b_.f32[i] : a_.f32[i];
150
+ }
151
+ return simde__m128_from_private(r_);
152
+ }
153
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
154
+ # define simde_mm_blend_ps(a, b, imm8) _mm_blend_ps(a, b, imm8)
155
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
156
+ # define simde_mm_blend_ps(a, b, imm8) \
157
+ (__extension__ ({ \
158
+ const uint32_t _mask[4] = { \
159
+ ((imm8) & (1 << 0)) ? UINT32_MAX : 0, \
160
+ ((imm8) & (1 << 1)) ? UINT32_MAX : 0, \
161
+ ((imm8) & (1 << 2)) ? UINT32_MAX : 0, \
162
+ ((imm8) & (1 << 3)) ? UINT32_MAX : 0 \
163
+ }; \
164
+ uint32x4_t _mask_vec = vld1q_u32(_mask); \
165
+ simde__m128_from_neon_f32(vbslq_f32(_mask_vec, simde__m128_to_neon_f32(b), simde__m128_to_neon_f32(a))); \
166
+ }))
167
+ #elif defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
168
+ # define simde_mm_blend_ps(a, b, imm8) \
169
+ (__extension__ ({ \
170
+ const SIMDE_POWER_ALTIVEC_VECTOR(unsigned int) _mask = { \
171
+ ((imm8) & (1 << 0)) ? UINT32_MAX : 0, \
172
+ ((imm8) & (1 << 1)) ? UINT32_MAX : 0, \
173
+ ((imm8) & (1 << 2)) ? UINT32_MAX : 0, \
174
+ ((imm8) & (1 << 3)) ? UINT32_MAX : 0 \
175
+ }; \
176
+ simde__m128_from_altivec_f32(vec_sel(simde__m128_to_altivec_f32(a), simde__m128_to_altivec_f32(b), _mask)); \
177
+ }))
178
+ #endif
179
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
180
+ #undef _mm_blend_ps
181
+ #define _mm_blend_ps(a, b, imm8) simde_mm_blend_ps(a, b, imm8)
182
+ #endif
183
+
184
+ SIMDE_FUNCTION_ATTRIBUTES
185
+ simde__m128i
186
+ simde_mm_blendv_epi8 (simde__m128i a, simde__m128i b, simde__m128i mask) {
187
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
188
+ return _mm_blendv_epi8(a, b, mask);
189
+ #else
190
+ simde__m128i_private
191
+ r_,
192
+ a_ = simde__m128i_to_private(a),
193
+ b_ = simde__m128i_to_private(b),
194
+ mask_ = simde__m128i_to_private(mask);
195
+
196
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
197
+ /* Use a signed shift right to create a mask with the sign bit */
198
+ mask_.neon_i8 = vshrq_n_s8(mask_.neon_i8, 7);
199
+ r_.neon_i8 = vbslq_s8(mask_.neon_u8, b_.neon_i8, a_.neon_i8);
200
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
201
+ v128_t m = wasm_i8x16_shr(mask_.wasm_v128, 7);
202
+ r_.wasm_v128 = wasm_v128_or(wasm_v128_and(b_.wasm_v128, m), wasm_v128_andnot(a_.wasm_v128, m));
203
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
204
+ r_.altivec_i8 = vec_sel(a_.altivec_i8, b_.altivec_i8, vec_cmplt(mask_.altivec_i8, vec_splat_s8(0)));
205
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
206
+ /* https://software.intel.com/en-us/forums/intel-c-compiler/topic/850087 */
207
+ #if defined(HEDLEY_INTEL_VERSION_CHECK)
208
+ __typeof__(mask_.i8) z = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
209
+ mask_.i8 = HEDLEY_STATIC_CAST(__typeof__(mask_.i8), mask_.i8 < z);
210
+ #else
211
+ mask_.i8 >>= (CHAR_BIT * sizeof(mask_.i8[0])) - 1;
212
+ #endif
213
+
214
+ r_.i8 = (mask_.i8 & b_.i8) | (~mask_.i8 & a_.i8);
215
+ #else
216
+ SIMDE_VECTORIZE
217
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
218
+ int8_t m = mask_.i8[i] >> 7;
219
+ r_.i8[i] = (m & b_.i8[i]) | (~m & a_.i8[i]);
220
+ }
221
+ #endif
222
+
223
+ return simde__m128i_from_private(r_);
224
+ #endif
225
+ }
226
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
227
+ #undef _mm_blendv_epi8
228
+ #define _mm_blendv_epi8(a, b, mask) simde_mm_blendv_epi8(a, b, mask)
229
+ #endif
230
+
231
+ SIMDE_FUNCTION_ATTRIBUTES
232
+ simde__m128i
233
+ simde_x_mm_blendv_epi16 (simde__m128i a, simde__m128i b, simde__m128i mask) {
234
+ #if defined(SIMDE_X86_SSE2_NATIVE)
235
+ mask = simde_mm_srai_epi16(mask, 15);
236
+ return simde_mm_or_si128(simde_mm_and_si128(mask, b), simde_mm_andnot_si128(mask, a));
237
+ #else
238
+ simde__m128i_private
239
+ r_,
240
+ a_ = simde__m128i_to_private(a),
241
+ b_ = simde__m128i_to_private(b),
242
+ mask_ = simde__m128i_to_private(mask);
243
+
244
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
245
+ mask_ = simde__m128i_to_private(simde_mm_cmplt_epi16(mask, simde_mm_setzero_si128()));
246
+ r_.neon_i16 = vbslq_s16(mask_.neon_u16, b_.neon_i16, a_.neon_i16);
247
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
248
+ r_.altivec_i16 = vec_sel(a_.altivec_i16, b_.altivec_i16, vec_cmplt(mask_.altivec_i16, vec_splat_s16(0)));
249
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
250
+ #if defined(HEDLEY_INTEL_VERSION_CHECK)
251
+ __typeof__(mask_.i16) z = { 0, 0, 0, 0, 0, 0, 0, 0 };
252
+ mask_.i16 = mask_.i16 < z;
253
+ #else
254
+ mask_.i16 >>= (CHAR_BIT * sizeof(mask_.i16[0])) - 1;
255
+ #endif
256
+
257
+ r_.i16 = (mask_.i16 & b_.i16) | (~mask_.i16 & a_.i16);
258
+ #else
259
+ SIMDE_VECTORIZE
260
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
261
+ int16_t m = mask_.i16[i] >> 15;
262
+ r_.i16[i] = (m & b_.i16[i]) | (~m & a_.i16[i]);
263
+ }
264
+ #endif
265
+
266
+ return simde__m128i_from_private(r_);
267
+ #endif
268
+ }
269
+
270
+ SIMDE_FUNCTION_ATTRIBUTES
271
+ simde__m128i
272
+ simde_x_mm_blendv_epi32 (simde__m128i a, simde__m128i b, simde__m128i mask) {
273
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
274
+ return _mm_castps_si128(_mm_blendv_ps(_mm_castsi128_ps(a), _mm_castsi128_ps(b), _mm_castsi128_ps(mask)));
275
+ #else
276
+ simde__m128i_private
277
+ r_,
278
+ a_ = simde__m128i_to_private(a),
279
+ b_ = simde__m128i_to_private(b),
280
+ mask_ = simde__m128i_to_private(mask);
281
+
282
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
283
+ mask_ = simde__m128i_to_private(simde_mm_cmplt_epi32(mask, simde_mm_setzero_si128()));
284
+ r_.neon_i32 = vbslq_s32(mask_.neon_u32, b_.neon_i32, a_.neon_i32);
285
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
286
+ v128_t m = wasm_i32x4_shr(mask_.wasm_v128, 31);
287
+ r_.wasm_v128 = wasm_v128_or(wasm_v128_and(b_.wasm_v128, m), wasm_v128_andnot(a_.wasm_v128, m));
288
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
289
+ r_.altivec_i32 = vec_sel(a_.altivec_i32, b_.altivec_i32, vec_cmplt(mask_.altivec_i32, vec_splat_s32(0)));
290
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
291
+ #if defined(HEDLEY_INTEL_VERSION_CHECK)
292
+ __typeof__(mask_.i32) z = { 0, 0, 0, 0 };
293
+ mask_.i32 = HEDLEY_STATIC_CAST(__typeof__(mask_.i32), mask_.i32 < z);
294
+ #else
295
+ mask_.i32 >>= (CHAR_BIT * sizeof(mask_.i32[0])) - 1;
296
+ #endif
297
+
298
+ r_.i32 = (mask_.i32 & b_.i32) | (~mask_.i32 & a_.i32);
299
+ #else
300
+ SIMDE_VECTORIZE
301
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
302
+ int32_t m = mask_.i32[i] >> 31;
303
+ r_.i32[i] = (m & b_.i32[i]) | (~m & a_.i32[i]);
304
+ }
305
+ #endif
306
+
307
+ return simde__m128i_from_private(r_);
308
+ #endif
309
+ }
310
+
311
+ SIMDE_FUNCTION_ATTRIBUTES
312
+ simde__m128i
313
+ simde_x_mm_blendv_epi64 (simde__m128i a, simde__m128i b, simde__m128i mask) {
314
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
315
+ return _mm_castpd_si128(_mm_blendv_pd(_mm_castsi128_pd(a), _mm_castsi128_pd(b), _mm_castsi128_pd(mask)));
316
+ #else
317
+ simde__m128i_private
318
+ r_,
319
+ a_ = simde__m128i_to_private(a),
320
+ b_ = simde__m128i_to_private(b),
321
+ mask_ = simde__m128i_to_private(mask);
322
+
323
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
324
+ mask_.u64 = vcltq_s64(mask_.i64, vdupq_n_s64(UINT64_C(0)));
325
+ r_.neon_i64 = vbslq_s64(mask_.neon_u64, b_.neon_i64, a_.neon_i64);
326
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
327
+ v128_t m = wasm_i64x2_shr(mask_.wasm_v128, 63);
328
+ r_.wasm_v128 = wasm_v128_or(wasm_v128_and(b_.wasm_v128, m), wasm_v128_andnot(a_.wasm_v128, m));
329
+ #elif defined(SIMDE_POWER_ALTIVEC_P8_NATIVE)
330
+ /* Using int due to clang bug #46770 */
331
+ SIMDE_POWER_ALTIVEC_VECTOR(signed long long) selector = vec_sra(mask_.altivec_i64, vec_splats(HEDLEY_STATIC_CAST(unsigned long long, 63)));
332
+ r_.altivec_i32 = vec_sel(a_.altivec_i32, b_.altivec_i32, HEDLEY_REINTERPRET_CAST(SIMDE_POWER_ALTIVEC_VECTOR(unsigned int), selector));
333
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
334
+ #if defined(HEDLEY_INTEL_VERSION_CHECK)
335
+ __typeof__(mask_.i64) z = { 0, 0 };
336
+ mask_.i64 = HEDLEY_STATIC_CAST(__typeof__(mask_.i64), mask_.i64 < z);
337
+ #else
338
+ mask_.i64 >>= (CHAR_BIT * sizeof(mask_.i64[0])) - 1;
339
+ #endif
340
+
341
+ r_.i64 = (mask_.i64 & b_.i64) | (~mask_.i64 & a_.i64);
342
+ #else
343
+ SIMDE_VECTORIZE
344
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
345
+ int64_t m = mask_.i64[i] >> 63;
346
+ r_.i64[i] = (m & b_.i64[i]) | (~m & a_.i64[i]);
347
+ }
348
+ #endif
349
+
350
+ return simde__m128i_from_private(r_);
351
+ #endif
352
+ }
353
+
354
+ SIMDE_FUNCTION_ATTRIBUTES
355
+ simde__m128d
356
+ simde_mm_blendv_pd (simde__m128d a, simde__m128d b, simde__m128d mask) {
357
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
358
+ return _mm_blendv_pd(a, b, mask);
359
+ #else
360
+ return simde_mm_castsi128_pd(simde_x_mm_blendv_epi64(simde_mm_castpd_si128(a), simde_mm_castpd_si128(b), simde_mm_castpd_si128(mask)));
361
+ #endif
362
+ }
363
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
364
+ #undef _mm_blendv_pd
365
+ #define _mm_blendv_pd(a, b, mask) simde_mm_blendv_pd(a, b, mask)
366
+ #endif
367
+
368
+ SIMDE_FUNCTION_ATTRIBUTES
369
+ simde__m128
370
+ simde_mm_blendv_ps (simde__m128 a, simde__m128 b, simde__m128 mask) {
371
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
372
+ return _mm_blendv_ps(a, b, mask);
373
+ #else
374
+ return simde_mm_castsi128_ps(simde_x_mm_blendv_epi32(simde_mm_castps_si128(a), simde_mm_castps_si128(b), simde_mm_castps_si128(mask)));
375
+ #endif
376
+ }
377
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
378
+ #undef _mm_blendv_ps
379
+ #define _mm_blendv_ps(a, b, mask) simde_mm_blendv_ps(a, b, mask)
380
+ #endif
381
+
382
+ SIMDE_FUNCTION_ATTRIBUTES
383
+ simde__m128d
384
+ simde_mm_round_pd (simde__m128d a, int rounding)
385
+ SIMDE_REQUIRE_CONSTANT_RANGE(rounding, 0, 15) {
386
+ simde__m128d_private
387
+ r_,
388
+ a_ = simde__m128d_to_private(a);
389
+
390
+ /* For architectures which lack a current direction SIMD instruction. */
391
+ #if defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
392
+ if ((rounding & 7) == SIMDE_MM_FROUND_CUR_DIRECTION)
393
+ rounding = HEDLEY_STATIC_CAST(int, SIMDE_MM_GET_ROUNDING_MODE()) << 13;
394
+ #endif
395
+
396
+ switch (rounding & ~SIMDE_MM_FROUND_NO_EXC) {
397
+ case SIMDE_MM_FROUND_CUR_DIRECTION:
398
+ #if defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
399
+ r_.altivec_f64 = HEDLEY_REINTERPRET_CAST(SIMDE_POWER_ALTIVEC_VECTOR(double), vec_round(a_.altivec_f64));
400
+ #elif defined(SIMDE_ARM_NEON_A64V8_NATIVE)
401
+ r_.neon_f64 = vrndiq_f64(a_.neon_f64);
402
+ #elif defined(simde_math_nearbyint)
403
+ SIMDE_VECTORIZE
404
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
405
+ r_.f64[i] = simde_math_nearbyint(a_.f64[i]);
406
+ }
407
+ #else
408
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_undefined_pd());
409
+ #endif
410
+ break;
411
+
412
+ case SIMDE_MM_FROUND_TO_NEAREST_INT:
413
+ #if defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
414
+ r_.altivec_f64 = HEDLEY_REINTERPRET_CAST(SIMDE_POWER_ALTIVEC_VECTOR(double), vec_round(a_.altivec_f64));
415
+ #elif defined(SIMDE_ARM_NEON_A64V8_NATIVE)
416
+ r_.neon_f64 = vrndaq_f64(a_.neon_f64);
417
+ #elif defined(simde_math_roundeven)
418
+ SIMDE_VECTORIZE
419
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
420
+ r_.f64[i] = simde_math_roundeven(a_.f64[i]);
421
+ }
422
+ #else
423
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_undefined_pd());
424
+ #endif
425
+ break;
426
+
427
+ case SIMDE_MM_FROUND_TO_NEG_INF:
428
+ #if defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
429
+ r_.altivec_f64 = HEDLEY_REINTERPRET_CAST(SIMDE_POWER_ALTIVEC_VECTOR(double), vec_floor(a_.altivec_f64));
430
+ #elif defined(SIMDE_ARM_NEON_A64V8_NATIVE)
431
+ r_.neon_f64 = vrndmq_f64(a_.neon_f64);
432
+ #else
433
+ SIMDE_VECTORIZE
434
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
435
+ r_.f64[i] = simde_math_floor(a_.f64[i]);
436
+ }
437
+ #endif
438
+ break;
439
+
440
+ case SIMDE_MM_FROUND_TO_POS_INF:
441
+ #if defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
442
+ r_.altivec_f64 = HEDLEY_REINTERPRET_CAST(SIMDE_POWER_ALTIVEC_VECTOR(double), vec_ceil(a_.altivec_f64));
443
+ #elif defined(SIMDE_ARM_NEON_A64V8_NATIVE)
444
+ r_.neon_f64 = vrndpq_f64(a_.neon_f64);
445
+ #elif defined(simde_math_ceil)
446
+ SIMDE_VECTORIZE
447
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
448
+ r_.f64[i] = simde_math_ceil(a_.f64[i]);
449
+ }
450
+ #else
451
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_undefined_pd());
452
+ #endif
453
+ break;
454
+
455
+ case SIMDE_MM_FROUND_TO_ZERO:
456
+ #if defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
457
+ r_.altivec_f64 = HEDLEY_REINTERPRET_CAST(SIMDE_POWER_ALTIVEC_VECTOR(double), vec_trunc(a_.altivec_f64));
458
+ #elif defined(SIMDE_ARM_NEON_A64V8_NATIVE)
459
+ r_.neon_f64 = vrndq_f64(a_.neon_f64);
460
+ #else
461
+ SIMDE_VECTORIZE
462
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
463
+ r_.f64[i] = simde_math_trunc(a_.f64[i]);
464
+ }
465
+ #endif
466
+ break;
467
+
468
+ default:
469
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_undefined_pd());
470
+ }
471
+
472
+ return simde__m128d_from_private(r_);
473
+ }
474
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
475
+ #define simde_mm_round_pd(a, rounding) _mm_round_pd(a, rounding)
476
+ #endif
477
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
478
+ #undef _mm_round_pd
479
+ #define _mm_round_pd(a, rounding) simde_mm_round_pd(a, rounding)
480
+ #endif
481
+
482
+ SIMDE_FUNCTION_ATTRIBUTES
483
+ simde__m128d
484
+ simde_mm_ceil_pd (simde__m128d a) {
485
+ return simde_mm_round_pd(a, SIMDE_MM_FROUND_TO_POS_INF);
486
+ }
487
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
488
+ #undef _mm_ceil_pd
489
+ #define _mm_ceil_pd(a) simde_mm_ceil_pd(a)
490
+ #endif
491
+
492
+ SIMDE_FUNCTION_ATTRIBUTES
493
+ simde__m128
494
+ simde_mm_ceil_ps (simde__m128 a) {
495
+ return simde_mm_round_ps(a, SIMDE_MM_FROUND_TO_POS_INF);
496
+ }
497
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
498
+ #undef _mm_ceil_ps
499
+ #define _mm_ceil_ps(a) simde_mm_ceil_ps(a)
500
+ #endif
501
+
502
+ SIMDE_FUNCTION_ATTRIBUTES
503
+ simde__m128d
504
+ simde_mm_ceil_sd (simde__m128d a, simde__m128d b) {
505
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
506
+ return _mm_ceil_sd(a, b);
507
+ #else
508
+ simde__m128d_private
509
+ r_,
510
+ a_ = simde__m128d_to_private(a),
511
+ b_ = simde__m128d_to_private(b);
512
+
513
+ #if defined(simde_math_ceilf)
514
+ r_ = simde__m128d_to_private(simde_mm_set_pd(a_.f64[1], simde_math_ceil(b_.f64[0])));
515
+ #else
516
+ HEDLEY_UNREACHABLE();
517
+ #endif
518
+
519
+ return simde__m128d_from_private(r_);
520
+ #endif
521
+ }
522
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
523
+ #undef _mm_ceil_sd
524
+ #define _mm_ceil_sd(a, b) simde_mm_ceil_sd(a, b)
525
+ #endif
526
+
527
+ SIMDE_FUNCTION_ATTRIBUTES
528
+ simde__m128
529
+ simde_mm_ceil_ss (simde__m128 a, simde__m128 b) {
530
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
531
+ return _mm_ceil_ss(a, b);
532
+ #elif (SIMDE_NATURAL_VECTOR_SIZE > 0)
533
+ return simde_mm_move_ss(a, simde_mm_ceil_ps(b));
534
+ #else
535
+ simde__m128_private
536
+ r_,
537
+ a_ = simde__m128_to_private(a),
538
+ b_ = simde__m128_to_private(b);
539
+
540
+ #if defined(simde_math_ceilf)
541
+ r_ = simde__m128_to_private(simde_mm_set_ps(a_.f32[3], a_.f32[2], a_.f32[1], simde_math_ceilf(b_.f32[0])));
542
+ #else
543
+ HEDLEY_UNREACHABLE();
544
+ #endif
545
+
546
+ return simde__m128_from_private(r_);
547
+ #endif
548
+ }
549
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
550
+ #undef _mm_ceil_ss
551
+ #define _mm_ceil_ss(a, b) simde_mm_ceil_ss(a, b)
552
+ #endif
553
+
554
+ SIMDE_FUNCTION_ATTRIBUTES
555
+ simde__m128i
556
+ simde_mm_cmpeq_epi64 (simde__m128i a, simde__m128i b) {
557
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
558
+ return _mm_cmpeq_epi64(a, b);
559
+ #else
560
+ simde__m128i_private
561
+ r_,
562
+ a_ = simde__m128i_to_private(a),
563
+ b_ = simde__m128i_to_private(b);
564
+
565
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
566
+ r_.neon_u64 = vceqq_u64(a_.neon_u64, b_.neon_u64);
567
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
568
+ /* (a == b) -> (a_lo == b_lo) && (a_hi == b_hi) */
569
+ uint32x4_t cmp = vceqq_u32(a_.neon_u32, b_.neon_u32);
570
+ uint32x4_t swapped = vrev64q_u32(cmp);
571
+ r_.neon_u32 = vandq_u32(cmp, swapped);
572
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
573
+ r_.i64 = HEDLEY_STATIC_CAST(__typeof__(r_.i64), a_.i64 == b_.i64);
574
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
575
+ r_.altivec_i64 = HEDLEY_REINTERPRET_CAST(SIMDE_POWER_ALTIVEC_VECTOR(signed long long), vec_cmpeq(a_.altivec_i64, b_.altivec_i64));
576
+ #else
577
+ SIMDE_VECTORIZE
578
+ for (size_t i = 0 ; i < (sizeof(r_.u64) / sizeof(r_.u64[0])) ; i++) {
579
+ r_.u64[i] = (a_.u64[i] == b_.u64[i]) ? ~UINT64_C(0) : UINT64_C(0);
580
+ }
581
+ #endif
582
+
583
+ return simde__m128i_from_private(r_);
584
+ #endif
585
+ }
586
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
587
+ #undef _mm_cmpeq_epi64
588
+ #define _mm_cmpeq_epi64(a, b) simde_mm_cmpeq_epi64(a, b)
589
+ #endif
590
+
591
+ SIMDE_FUNCTION_ATTRIBUTES
592
+ simde__m128i
593
+ simde_mm_cvtepi8_epi16 (simde__m128i a) {
594
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
595
+ return _mm_cvtepi8_epi16(a);
596
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
597
+ return _mm_srai_epi16(_mm_unpacklo_epi8(a, a), 8);
598
+ #else
599
+ simde__m128i_private
600
+ r_,
601
+ a_ = simde__m128i_to_private(a);
602
+
603
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
604
+ int8x16_t s8x16 = a_.neon_i8; /* xxxx xxxx xxxx DCBA */
605
+ int16x8_t s16x8 = vmovl_s8(vget_low_s8(s8x16)); /* 0x0x 0x0x 0D0C 0B0A */
606
+ r_.neon_i16 = s16x8;
607
+ #elif defined(SIMDE_SHUFFLE_VECTOR_) && defined(SIMDE_VECTOR_SCALAR) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
608
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), SIMDE_SHUFFLE_VECTOR_(8, 16, a_.i8, a_.i8,
609
+ -1, 0, -1, 1, -1, 2, -1, 3,
610
+ -1, 4, -1, 5, -1, 6, -1, 7));
611
+ r_.i16 >>= 8;
612
+ #elif defined(SIMDE_CONVERT_VECTOR_)
613
+ SIMDE_CONVERT_VECTOR_(r_.i16, a_.m64_private[0].i8);
614
+ #else
615
+ SIMDE_VECTORIZE
616
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
617
+ r_.i16[i] = a_.i8[i];
618
+ }
619
+ #endif
620
+
621
+ return simde__m128i_from_private(r_);
622
+ #endif
623
+ }
624
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
625
+ #undef _mm_cvtepi8_epi16
626
+ #define _mm_cvtepi8_epi16(a) simde_mm_cvtepi8_epi16(a)
627
+ #endif
628
+
629
+ SIMDE_FUNCTION_ATTRIBUTES
630
+ simde__m128i
631
+ simde_mm_cvtepi8_epi32 (simde__m128i a) {
632
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
633
+ return _mm_cvtepi8_epi32(a);
634
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
635
+ __m128i tmp = _mm_unpacklo_epi8(a, a);
636
+ tmp = _mm_unpacklo_epi16(tmp, tmp);
637
+ return _mm_srai_epi32(tmp, 24);
638
+ #else
639
+ simde__m128i_private
640
+ r_,
641
+ a_ = simde__m128i_to_private(a);
642
+
643
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
644
+ int8x16_t s8x16 = a_.neon_i8; /* xxxx xxxx xxxx DCBA */
645
+ int16x8_t s16x8 = vmovl_s8(vget_low_s8(s8x16)); /* 0x0x 0x0x 0D0C 0B0A */
646
+ int32x4_t s32x4 = vmovl_s16(vget_low_s16(s16x8)); /* 000D 000C 000B 000A */
647
+ r_.neon_i32 = s32x4;
648
+ #elif defined(SIMDE_SHUFFLE_VECTOR_) && defined(SIMDE_VECTOR_SCALAR) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
649
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), SIMDE_SHUFFLE_VECTOR_(8, 16, a_.i8, a_.i8,
650
+ -1, -1, -1, 0, -1, -1, -1, 1,
651
+ -1, -1, -1, 2, -1, -1, -1, 3));
652
+ r_.i32 >>= 24;
653
+ #else
654
+ SIMDE_VECTORIZE
655
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
656
+ r_.i32[i] = a_.i8[i];
657
+ }
658
+ #endif
659
+
660
+ return simde__m128i_from_private(r_);
661
+ #endif
662
+ }
663
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
664
+ #undef _mm_cvtepi8_epi32
665
+ #define _mm_cvtepi8_epi32(a) simde_mm_cvtepi8_epi32(a)
666
+ #endif
667
+
668
+ SIMDE_FUNCTION_ATTRIBUTES
669
+ simde__m128i
670
+ simde_mm_cvtepi8_epi64 (simde__m128i a) {
671
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
672
+ return _mm_cvtepi8_epi64(a);
673
+ #else
674
+ simde__m128i_private
675
+ r_,
676
+ a_ = simde__m128i_to_private(a);
677
+
678
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
679
+ int8x16_t s8x16 = a_.neon_i8; /* xxxx xxxx xxxx xxBA */
680
+ int16x8_t s16x8 = vmovl_s8(vget_low_s8(s8x16)); /* 0x0x 0x0x 0x0x 0B0A */
681
+ int32x4_t s32x4 = vmovl_s16(vget_low_s16(s16x8)); /* 000x 000x 000B 000A */
682
+ int64x2_t s64x2 = vmovl_s32(vget_low_s32(s32x4)); /* 0000 000B 0000 000A */
683
+ r_.neon_i64 = s64x2;
684
+ #elif (!defined(SIMDE_ARCH_X86) && !defined(SIMDE_ARCH_AMD64)) && defined(SIMDE_SHUFFLE_VECTOR_) && defined(SIMDE_VECTOR_SCALAR) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
685
+ /* Disabled on x86 due to lack of 64-bit arithmetic shift until
686
+ * until AVX-512 (at which point we would be using the native
687
+ * _mm_cvtepi_epi64 anyways). */
688
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), SIMDE_SHUFFLE_VECTOR_(8, 16, a_.i8, a_.i8,
689
+ -1, -1, -1, -1, -1, -1, -1, 0,
690
+ -1, -1, -1, -1, -1, -1, -1, 1));
691
+ r_.i64 >>= 56;
692
+ #else
693
+ SIMDE_VECTORIZE
694
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
695
+ r_.i64[i] = a_.i8[i];
696
+ }
697
+ #endif
698
+
699
+ return simde__m128i_from_private(r_);
700
+ #endif
701
+ }
702
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
703
+ #undef _mm_cvtepi8_epi64
704
+ #define _mm_cvtepi8_epi64(a) simde_mm_cvtepi8_epi64(a)
705
+ #endif
706
+
707
+ SIMDE_FUNCTION_ATTRIBUTES
708
+ simde__m128i
709
+ simde_mm_cvtepu8_epi16 (simde__m128i a) {
710
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
711
+ return _mm_cvtepu8_epi16(a);
712
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
713
+ return _mm_unpacklo_epi8(a, _mm_setzero_si128());
714
+ #else
715
+ simde__m128i_private
716
+ r_,
717
+ a_ = simde__m128i_to_private(a);
718
+
719
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
720
+ uint8x16_t u8x16 = a_.neon_u8; /* xxxx xxxx xxxx DCBA */
721
+ uint16x8_t u16x8 = vmovl_u8(vget_low_u8(u8x16)); /* 0x0x 0x0x 0D0C 0B0A */
722
+ r_.neon_u16 = u16x8;
723
+ #elif defined(SIMDE_SHUFFLE_VECTOR_) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
724
+ __typeof__(r_.i8) z = { 0, };
725
+ r_.i16 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i16), SIMDE_SHUFFLE_VECTOR_(8, 16, a_.i8, z,
726
+ 0, 16, 1, 17, 2, 18, 3, 19,
727
+ 4, 20, 5, 21, 6, 22, 7, 23));
728
+ #elif defined(SIMDE_CONVERT_VECTOR_) && !defined(SIMDE_BUG_CLANG_45541) && (!defined(SIMDE_ARCH_POWER) || !defined(__clang__))
729
+ SIMDE_CONVERT_VECTOR_(r_.i16, a_.m64_private[0].u8);
730
+ #else
731
+ SIMDE_VECTORIZE
732
+ for (size_t i = 0 ; i < (sizeof(r_.i16) / sizeof(r_.i16[0])) ; i++) {
733
+ r_.i16[i] = a_.u8[i];
734
+ }
735
+ #endif
736
+
737
+ return simde__m128i_from_private(r_);
738
+ #endif
739
+ }
740
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
741
+ #undef _mm_cvtepu8_epi16
742
+ #define _mm_cvtepu8_epi16(a) simde_mm_cvtepu8_epi16(a)
743
+ #endif
744
+
745
+ SIMDE_FUNCTION_ATTRIBUTES
746
+ simde__m128i
747
+ simde_mm_cvtepu8_epi32 (simde__m128i a) {
748
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
749
+ return _mm_cvtepu8_epi32(a);
750
+ #elif defined(SIMDE_X86_SSSE3_NATIVE)
751
+ __m128i s = _mm_set_epi8(
752
+ 0x80, 0x80, 0x80, 0x03, 0x80, 0x80, 0x80, 0x02,
753
+ 0x80, 0x80, 0x80, 0x01, 0x80, 0x80, 0x80, 0x00);
754
+ return _mm_shuffle_epi8(a, s);
755
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
756
+ __m128i z = _mm_setzero_si128();
757
+ return _mm_unpacklo_epi16(_mm_unpacklo_epi8(a, z), z);
758
+ #else
759
+ simde__m128i_private
760
+ r_,
761
+ a_ = simde__m128i_to_private(a);
762
+
763
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
764
+ uint8x16_t u8x16 = a_.neon_u8; /* xxxx xxxx xxxx DCBA */
765
+ uint16x8_t u16x8 = vmovl_u8(vget_low_u8(u8x16)); /* 0x0x 0x0x 0D0C 0B0A */
766
+ uint32x4_t u32x4 = vmovl_u16(vget_low_u16(u16x8)); /* 000D 000C 000B 000A */
767
+ r_.neon_u32 = u32x4;
768
+ #elif defined(SIMDE_SHUFFLE_VECTOR_) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
769
+ __typeof__(r_.i8) z = { 0, };
770
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), SIMDE_SHUFFLE_VECTOR_(8, 16, a_.i8, z,
771
+ 0, 17, 18, 19, 1, 21, 22, 23,
772
+ 2, 25, 26, 27, 3, 29, 30, 31));
773
+ #else
774
+ SIMDE_VECTORIZE
775
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
776
+ r_.i32[i] = a_.u8[i];
777
+ }
778
+ #endif
779
+
780
+ return simde__m128i_from_private(r_);
781
+ #endif
782
+ }
783
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
784
+ #undef _mm_cvtepu8_epi32
785
+ #define _mm_cvtepu8_epi32(a) simde_mm_cvtepu8_epi32(a)
786
+ #endif
787
+
788
+ SIMDE_FUNCTION_ATTRIBUTES
789
+ simde__m128i
790
+ simde_mm_cvtepu8_epi64 (simde__m128i a) {
791
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
792
+ return _mm_cvtepu8_epi64(a);
793
+ #elif defined(SIMDE_X86_SSSE3_NATIVE)
794
+ __m128i s = _mm_set_epi8(
795
+ 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x01,
796
+ 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00);
797
+ return _mm_shuffle_epi8(a, s);
798
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
799
+ __m128i z = _mm_setzero_si128();
800
+ return _mm_unpacklo_epi32(_mm_unpacklo_epi16(_mm_unpacklo_epi8(a, z), z), z);
801
+ #else
802
+ simde__m128i_private
803
+ r_,
804
+ a_ = simde__m128i_to_private(a);
805
+
806
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
807
+ uint8x16_t u8x16 = a_.neon_u8; /* xxxx xxxx xxxx xxBA */
808
+ uint16x8_t u16x8 = vmovl_u8(vget_low_u8(u8x16)); /* 0x0x 0x0x 0x0x 0B0A */
809
+ uint32x4_t u32x4 = vmovl_u16(vget_low_u16(u16x8)); /* 000x 000x 000B 000A */
810
+ uint64x2_t u64x2 = vmovl_u32(vget_low_u32(u32x4)); /* 0000 000B 0000 000A */
811
+ r_.neon_u64 = u64x2;
812
+ #elif defined(SIMDE_SHUFFLE_VECTOR_) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
813
+ __typeof__(r_.i8) z = { 0, };
814
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), SIMDE_SHUFFLE_VECTOR_(8, 16, a_.i8, z,
815
+ 0, 17, 18, 19, 20, 21, 22, 23,
816
+ 1, 25, 26, 27, 28, 29, 30, 31));
817
+ #else
818
+ SIMDE_VECTORIZE
819
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
820
+ r_.i64[i] = a_.u8[i];
821
+ }
822
+ #endif
823
+
824
+ return simde__m128i_from_private(r_);
825
+ #endif
826
+ }
827
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
828
+ #undef _mm_cvtepu8_epi64
829
+ #define _mm_cvtepu8_epi64(a) simde_mm_cvtepu8_epi64(a)
830
+ #endif
831
+
832
+ SIMDE_FUNCTION_ATTRIBUTES
833
+ simde__m128i
834
+ simde_mm_cvtepi16_epi32 (simde__m128i a) {
835
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
836
+ return _mm_cvtepi16_epi32(a);
837
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
838
+ return _mm_srai_epi32(_mm_unpacklo_epi16(a, a), 16);
839
+ #else
840
+ simde__m128i_private
841
+ r_,
842
+ a_ = simde__m128i_to_private(a);
843
+
844
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
845
+ r_.neon_i32 = vmovl_s16(vget_low_s16(a_.neon_i16));
846
+ #elif !defined(SIMDE_ARCH_X86) && defined(SIMDE_SHUFFLE_VECTOR_) && defined(SIMDE_VECTOR_SCALAR) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
847
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), SIMDE_SHUFFLE_VECTOR_(16, 16, a_.i16, a_.i16, 8, 0, 10, 1, 12, 2, 14, 3));
848
+ r_.i32 >>= 16;
849
+ #else
850
+ SIMDE_VECTORIZE
851
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
852
+ r_.i32[i] = a_.i16[i];
853
+ }
854
+ #endif
855
+
856
+ return simde__m128i_from_private(r_);
857
+ #endif
858
+ }
859
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
860
+ #undef _mm_cvtepi16_epi32
861
+ #define _mm_cvtepi16_epi32(a) simde_mm_cvtepi16_epi32(a)
862
+ #endif
863
+
864
+ SIMDE_FUNCTION_ATTRIBUTES
865
+ simde__m128i
866
+ simde_mm_cvtepu16_epi32 (simde__m128i a) {
867
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
868
+ return _mm_cvtepu16_epi32(a);
869
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
870
+ return _mm_unpacklo_epi16(a, _mm_setzero_si128());
871
+ #else
872
+ simde__m128i_private
873
+ r_,
874
+ a_ = simde__m128i_to_private(a);
875
+
876
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
877
+ r_.neon_u32 = vmovl_u16(vget_low_u16(a_.neon_u16));
878
+ #elif defined(SIMDE_SHUFFLE_VECTOR_) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
879
+ __typeof__(r_.u16) z = { 0, };
880
+ r_.i32 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i32), SIMDE_SHUFFLE_VECTOR_(16, 16, a_.u16, z,
881
+ 0, 9, 1, 11, 2, 13, 3, 15));
882
+ #elif defined(SIMDE_CONVERT_VECTOR_) && !defined(SIMDE_BUG_CLANG_45541) && (!defined(SIMDE_ARCH_POWER) || !defined(__clang__))
883
+ SIMDE_CONVERT_VECTOR_(r_.i32, a_.m64_private[0].u16);
884
+ #else
885
+ SIMDE_VECTORIZE
886
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
887
+ r_.i32[i] = a_.u16[i];
888
+ }
889
+ #endif
890
+
891
+ return simde__m128i_from_private(r_);
892
+ #endif
893
+ }
894
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
895
+ #undef _mm_cvtepu16_epi32
896
+ #define _mm_cvtepu16_epi32(a) simde_mm_cvtepu16_epi32(a)
897
+ #endif
898
+
899
+ SIMDE_FUNCTION_ATTRIBUTES
900
+ simde__m128i
901
+ simde_mm_cvtepu16_epi64 (simde__m128i a) {
902
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
903
+ return _mm_cvtepu16_epi64(a);
904
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
905
+ __m128i z = _mm_setzero_si128();
906
+ return _mm_unpacklo_epi32(_mm_unpacklo_epi16(a, z), z);
907
+ #else
908
+ simde__m128i_private
909
+ r_,
910
+ a_ = simde__m128i_to_private(a);
911
+
912
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
913
+ uint16x8_t u16x8 = a_.neon_u16; /* xxxx xxxx xxxx 0B0A */
914
+ uint32x4_t u32x4 = vmovl_u16(vget_low_u16(u16x8)); /* 000x 000x 000B 000A */
915
+ uint64x2_t u64x2 = vmovl_u32(vget_low_u32(u32x4)); /* 0000 000B 0000 000A */
916
+ r_.neon_u64 = u64x2;
917
+ #elif defined(SIMDE_SHUFFLE_VECTOR_) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
918
+ __typeof__(r_.u16) z = { 0, };
919
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), SIMDE_SHUFFLE_VECTOR_(16, 16, a_.u16, z,
920
+ 0, 9, 10, 11,
921
+ 1, 13, 14, 15));
922
+ #else
923
+ SIMDE_VECTORIZE
924
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
925
+ r_.i64[i] = a_.u16[i];
926
+ }
927
+ #endif
928
+
929
+ return simde__m128i_from_private(r_);
930
+ #endif
931
+ }
932
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
933
+ #undef _mm_cvtepu16_epi64
934
+ #define _mm_cvtepu16_epi64(a) simde_mm_cvtepu16_epi64(a)
935
+ #endif
936
+
937
+ SIMDE_FUNCTION_ATTRIBUTES
938
+ simde__m128i
939
+ simde_mm_cvtepi16_epi64 (simde__m128i a) {
940
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
941
+ return _mm_cvtepi16_epi64(a);
942
+ #else
943
+ simde__m128i_private
944
+ r_,
945
+ a_ = simde__m128i_to_private(a);
946
+
947
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
948
+ int16x8_t s16x8 = a_.neon_i16; /* xxxx xxxx xxxx 0B0A */
949
+ int32x4_t s32x4 = vmovl_s16(vget_low_s16(s16x8)); /* 000x 000x 000B 000A */
950
+ int64x2_t s64x2 = vmovl_s32(vget_low_s32(s32x4)); /* 0000 000B 0000 000A */
951
+ r_.neon_i64 = s64x2;
952
+ #elif (!defined(SIMDE_ARCH_X86) && !defined(SIMDE_ARCH_AMD64)) && defined(SIMDE_SHUFFLE_VECTOR_) && defined(SIMDE_VECTOR_SCALAR) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
953
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), SIMDE_SHUFFLE_VECTOR_(16, 16, a_.i16, a_.i16,
954
+ 8, 9, 10, 0,
955
+ 12, 13, 14, 1));
956
+ r_.i64 >>= 48;
957
+ #else
958
+ SIMDE_VECTORIZE
959
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
960
+ r_.i64[i] = a_.i16[i];
961
+ }
962
+ #endif
963
+
964
+ return simde__m128i_from_private(r_);
965
+ #endif
966
+ }
967
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
968
+ #undef _mm_cvtepi16_epi64
969
+ #define _mm_cvtepi16_epi64(a) simde_mm_cvtepi16_epi64(a)
970
+ #endif
971
+
972
+ SIMDE_FUNCTION_ATTRIBUTES
973
+ simde__m128i
974
+ simde_mm_cvtepi32_epi64 (simde__m128i a) {
975
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
976
+ return _mm_cvtepi32_epi64(a);
977
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
978
+ __m128i tmp = _mm_shuffle_epi32(a, 0x50);
979
+ tmp = _mm_srai_epi32(tmp, 31);
980
+ tmp = _mm_shuffle_epi32(tmp, 0xed);
981
+ return _mm_unpacklo_epi32(a, tmp);
982
+ #else
983
+ simde__m128i_private
984
+ r_,
985
+ a_ = simde__m128i_to_private(a);
986
+
987
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
988
+ r_.neon_i64 = vmovl_s32(vget_low_s32(a_.neon_i32));
989
+ #elif !defined(SIMDE_ARCH_X86) && defined(SIMDE_SHUFFLE_VECTOR_) && defined(SIMDE_VECTOR_SCALAR) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
990
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), SIMDE_SHUFFLE_VECTOR_(32, 16, a_.i32, a_.i32, -1, 0, -1, 1));
991
+ r_.i64 >>= 32;
992
+ #elif defined(SIMDE_CONVERT_VECTOR_)
993
+ SIMDE_CONVERT_VECTOR_(r_.i64, a_.m64_private[0].i32);
994
+ #else
995
+ SIMDE_VECTORIZE
996
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
997
+ r_.i64[i] = a_.i32[i];
998
+ }
999
+ #endif
1000
+
1001
+ return simde__m128i_from_private(r_);
1002
+ #endif
1003
+ }
1004
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1005
+ #undef _mm_cvtepi32_epi64
1006
+ #define _mm_cvtepi32_epi64(a) simde_mm_cvtepi32_epi64(a)
1007
+ #endif
1008
+
1009
+ SIMDE_FUNCTION_ATTRIBUTES
1010
+ simde__m128i
1011
+ simde_mm_cvtepu32_epi64 (simde__m128i a) {
1012
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1013
+ return _mm_cvtepu32_epi64(a);
1014
+ #elif defined(SIMDE_X86_SSE2_NATIVE)
1015
+ return _mm_unpacklo_epi32(a, _mm_setzero_si128());
1016
+ #else
1017
+ simde__m128i_private
1018
+ r_,
1019
+ a_ = simde__m128i_to_private(a);
1020
+
1021
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1022
+ r_.neon_u64 = vmovl_u32(vget_low_u32(a_.neon_u32));
1023
+ #elif defined(SIMDE_VECTOR_SCALAR) && defined(SIMDE_SHUFFLE_VECTOR_) && (SIMDE_ENDIAN_ORDER == SIMDE_ENDIAN_LITTLE)
1024
+ __typeof__(r_.u32) z = { 0, };
1025
+ r_.i64 = HEDLEY_REINTERPRET_CAST(__typeof__(r_.i64), SIMDE_SHUFFLE_VECTOR_(32, 16, a_.u32, z, 0, 4, 1, 6));
1026
+ #elif defined(SIMDE_CONVERT_VECTOR_)
1027
+ SIMDE_CONVERT_VECTOR_(r_.i64, a_.m64_private[0].u32);
1028
+ #else
1029
+ SIMDE_VECTORIZE
1030
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
1031
+ r_.i64[i] = a_.u32[i];
1032
+ }
1033
+ #endif
1034
+
1035
+ return simde__m128i_from_private(r_);
1036
+ #endif
1037
+ }
1038
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1039
+ #undef _mm_cvtepu32_epi64
1040
+ #define _mm_cvtepu32_epi64(a) simde_mm_cvtepu32_epi64(a)
1041
+ #endif
1042
+
1043
+ SIMDE_FUNCTION_ATTRIBUTES
1044
+ simde__m128d
1045
+ simde_mm_dp_pd (simde__m128d a, simde__m128d b, const int imm8)
1046
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 255) {
1047
+ simde__m128d_private
1048
+ r_,
1049
+ a_ = simde__m128d_to_private(a),
1050
+ b_ = simde__m128d_to_private(b);
1051
+
1052
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
1053
+ r_.neon_f64 = vmulq_f64(a_.neon_f64, b_.neon_f64);
1054
+
1055
+ switch (imm8) {
1056
+ case 0xff:
1057
+ r_.neon_f64 = vaddq_f64(r_.neon_f64, vextq_f64(r_.neon_f64, r_.neon_f64, 1));
1058
+ break;
1059
+ case 0x13:
1060
+ r_.neon_f64 = vdupq_lane_f64(vget_low_f64(r_.neon_f64), 0);
1061
+ break;
1062
+ default:
1063
+ { /* imm8 is a compile-time constant, so this all becomes just a load */
1064
+ uint64_t mask_data[] = {
1065
+ (imm8 & (1 << 4)) ? ~UINT64_C(0) : UINT64_C(0),
1066
+ (imm8 & (1 << 5)) ? ~UINT64_C(0) : UINT64_C(0),
1067
+ };
1068
+ r_.neon_f64 = vreinterpretq_f64_u64(vandq_u64(vld1q_u64(mask_data), vreinterpretq_u64_f64(r_.neon_f64)));
1069
+ }
1070
+
1071
+ r_.neon_f64 = vdupq_n_f64(vaddvq_f64(r_.neon_f64));
1072
+
1073
+ {
1074
+ uint64_t mask_data[] = {
1075
+ (imm8 & 1) ? ~UINT64_C(0) : UINT64_C(0),
1076
+ (imm8 & 2) ? ~UINT64_C(0) : UINT64_C(0)
1077
+ };
1078
+ r_.neon_f64 = vreinterpretq_f64_u64(vandq_u64(vld1q_u64(mask_data), vreinterpretq_u64_f64(r_.neon_f64)));
1079
+ }
1080
+ break;
1081
+ }
1082
+ #else
1083
+ simde_float64 sum = SIMDE_FLOAT64_C(0.0);
1084
+
1085
+ SIMDE_VECTORIZE_REDUCTION(+:sum)
1086
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
1087
+ sum += ((imm8 >> (i + 4)) & 1) ? (a_.f64[i] * b_.f64[i]) : 0.0;
1088
+ }
1089
+
1090
+ SIMDE_VECTORIZE
1091
+ for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
1092
+ r_.f64[i] = ((imm8 >> i) & 1) ? sum : 0.0;
1093
+ }
1094
+ #endif
1095
+
1096
+ return simde__m128d_from_private(r_);
1097
+ }
1098
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1099
+ # define simde_mm_dp_pd(a, b, imm8) _mm_dp_pd(a, b, imm8)
1100
+ #endif
1101
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1102
+ #undef _mm_dp_pd
1103
+ #define _mm_dp_pd(a, b, imm8) simde_mm_dp_pd(a, b, imm8)
1104
+ #endif
1105
+
1106
+ SIMDE_FUNCTION_ATTRIBUTES
1107
+ simde__m128
1108
+ simde_mm_dp_ps (simde__m128 a, simde__m128 b, const int imm8)
1109
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 255) {
1110
+ simde__m128_private
1111
+ r_,
1112
+ a_ = simde__m128_to_private(a),
1113
+ b_ = simde__m128_to_private(b);
1114
+
1115
+ #if defined(SIMDE_ARM_NEON_A64V8_NATIVE)
1116
+ r_.neon_f32 = vmulq_f32(a_.neon_f32, b_.neon_f32);
1117
+
1118
+ switch (imm8) {
1119
+ case 0xff:
1120
+ r_.neon_f32 = vdupq_n_f32(vaddvq_f32(r_.neon_f32));
1121
+ break;
1122
+ case 0x7f:
1123
+ r_.neon_f32 = vsetq_lane_f32(0, r_.neon_f32, 3);
1124
+ r_.neon_f32 = vdupq_n_f32(vaddvq_f32(r_.neon_f32));
1125
+ break;
1126
+ default:
1127
+ {
1128
+ {
1129
+ uint32_t mask_data[] = {
1130
+ (imm8 & (1 << 4)) ? ~UINT32_C(0) : UINT32_C(0),
1131
+ (imm8 & (1 << 5)) ? ~UINT32_C(0) : UINT32_C(0),
1132
+ (imm8 & (1 << 6)) ? ~UINT32_C(0) : UINT32_C(0),
1133
+ (imm8 & (1 << 7)) ? ~UINT32_C(0) : UINT32_C(0)
1134
+ };
1135
+ r_.neon_f32 = vreinterpretq_f32_u32(vandq_u32(vld1q_u32(mask_data), vreinterpretq_u32_f32(r_.neon_f32)));
1136
+ }
1137
+
1138
+ r_.neon_f32 = vdupq_n_f32(vaddvq_f32(r_.neon_f32));
1139
+
1140
+ {
1141
+ uint32_t mask_data[] = {
1142
+ (imm8 & 1) ? ~UINT32_C(0) : UINT32_C(0),
1143
+ (imm8 & 2) ? ~UINT32_C(0) : UINT32_C(0),
1144
+ (imm8 & 4) ? ~UINT32_C(0) : UINT32_C(0),
1145
+ (imm8 & 8) ? ~UINT32_C(0) : UINT32_C(0)
1146
+ };
1147
+ r_.neon_f32 = vreinterpretq_f32_u32(vandq_u32(vld1q_u32(mask_data), vreinterpretq_u32_f32(r_.neon_f32)));
1148
+ }
1149
+ }
1150
+ break;
1151
+ }
1152
+ #else
1153
+ simde_float32 sum = SIMDE_FLOAT32_C(0.0);
1154
+
1155
+ SIMDE_VECTORIZE_REDUCTION(+:sum)
1156
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
1157
+ sum += ((imm8 >> (i + 4)) & 1) ? (a_.f32[i] * b_.f32[i]) : SIMDE_FLOAT32_C(0.0);
1158
+ }
1159
+
1160
+ SIMDE_VECTORIZE
1161
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
1162
+ r_.f32[i] = ((imm8 >> i) & 1) ? sum : SIMDE_FLOAT32_C(0.0);
1163
+ }
1164
+ #endif
1165
+
1166
+ return simde__m128_from_private(r_);
1167
+ }
1168
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1169
+ # define simde_mm_dp_ps(a, b, imm8) _mm_dp_ps(a, b, imm8)
1170
+ #endif
1171
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1172
+ #undef _mm_dp_ps
1173
+ #define _mm_dp_ps(a, b, imm8) simde_mm_dp_ps(a, b, imm8)
1174
+ #endif
1175
+
1176
+ #if defined(simde_mm_extract_epi8)
1177
+ # undef simde_mm_extract_epi8
1178
+ #endif
1179
+ SIMDE_FUNCTION_ATTRIBUTES
1180
+ int8_t
1181
+ simde_mm_extract_epi8 (simde__m128i a, const int imm8)
1182
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 15) {
1183
+ simde__m128i_private
1184
+ a_ = simde__m128i_to_private(a);
1185
+
1186
+ #if defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1187
+ #if defined(SIMDE_BUG_GCC_95227)
1188
+ (void) a_;
1189
+ (void) imm8;
1190
+ #endif
1191
+ return vec_extract(a_.altivec_i8, imm8);
1192
+ #else
1193
+ return a_.i8[imm8 & 15];
1194
+ #endif
1195
+ }
1196
+ #if defined(SIMDE_X86_SSE4_1_NATIVE) && !defined(SIMDE_BUG_GCC_BAD_MM_EXTRACT_EPI8)
1197
+ # define simde_mm_extract_epi8(a, imm8) HEDLEY_STATIC_CAST(int8_t, _mm_extract_epi8(a, imm8))
1198
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1199
+ # define simde_mm_extract_epi8(a, imm8) vgetq_lane_s8(simde__m128i_to_private(a).neon_i8, imm8)
1200
+ #endif
1201
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1202
+ #undef _mm_extract_epi8
1203
+ #define _mm_extract_epi8(a, imm8) HEDLEY_STATIC_CAST(int, simde_mm_extract_epi8(a, imm8))
1204
+ #endif
1205
+
1206
+ #if defined(simde_mm_extract_epi32)
1207
+ # undef simde_mm_extract_epi32
1208
+ #endif
1209
+ SIMDE_FUNCTION_ATTRIBUTES
1210
+ int32_t
1211
+ simde_mm_extract_epi32 (simde__m128i a, const int imm8)
1212
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 3) {
1213
+ simde__m128i_private
1214
+ a_ = simde__m128i_to_private(a);
1215
+
1216
+ #if defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1217
+ #if defined(SIMDE_BUG_GCC_95227)
1218
+ (void) a_;
1219
+ (void) imm8;
1220
+ #endif
1221
+ return vec_extract(a_.altivec_i32, imm8);
1222
+ #else
1223
+ return a_.i32[imm8 & 3];
1224
+ #endif
1225
+ }
1226
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1227
+ # define simde_mm_extract_epi32(a, imm8) _mm_extract_epi32(a, imm8)
1228
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1229
+ # define simde_mm_extract_epi32(a, imm8) vgetq_lane_s32(simde__m128i_to_private(a).neon_i32, imm8)
1230
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1231
+ # define simde_mm_extract_epi32(a, imm8) HEDLEY_STATIC_CAST(int32_t, vec_extract(simde__m128i_to_private(a).altivec_i32, imm8))
1232
+ #endif
1233
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1234
+ #undef _mm_extract_epi32
1235
+ #define _mm_extract_epi32(a, imm8) simde_mm_extract_epi32(a, imm8)
1236
+ #endif
1237
+
1238
+ #if defined(simde_mm_extract_epi64)
1239
+ # undef simde_mm_extract_epi64
1240
+ #endif
1241
+ SIMDE_FUNCTION_ATTRIBUTES
1242
+ int64_t
1243
+ simde_mm_extract_epi64 (simde__m128i a, const int imm8)
1244
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 1) {
1245
+ simde__m128i_private
1246
+ a_ = simde__m128i_to_private(a);
1247
+
1248
+ #if defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
1249
+ #if defined(SIMDE_BUG_GCC_95227)
1250
+ (void) a_;
1251
+ (void) imm8;
1252
+ #endif
1253
+ return vec_extract(a_.altivec_i64, imm8);
1254
+ #else
1255
+ return a_.i64[imm8 & 1];
1256
+ #endif
1257
+ }
1258
+ #if defined(SIMDE_X86_SSE4_1_NATIVE) && defined(SIMDE_ARCH_AMD64)
1259
+ # define simde_mm_extract_epi64(a, imm8) _mm_extract_epi64(a, imm8)
1260
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1261
+ # define simde_mm_extract_epi64(a, imm8) vgetq_lane_s64(simde__m128i_to_private(a).neon_i64, imm8)
1262
+ #elif defined(SIMDE_POWER_ALTIVEC_P7_NATIVE)
1263
+ # define simde_mm_extract_epi64(a, imm8) HEDLEY_STATIC_CAST(int64_t, vec_extract(simde__m128i_to_private(a).altivec_i64, imm8))
1264
+ #endif
1265
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1266
+ #undef _mm_extract_epi64
1267
+ #define _mm_extract_epi64(a, imm8) simde_mm_extract_epi64(a, imm8)
1268
+ #endif
1269
+
1270
+ #if defined(simde_mm_extract_ps)
1271
+ # undef simde_mm_extract_ps
1272
+ #endif
1273
+ SIMDE_FUNCTION_ATTRIBUTES
1274
+ int32_t
1275
+ simde_mm_extract_ps (simde__m128 a, const int imm8)
1276
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 3) {
1277
+ simde__m128_private
1278
+ a_ = simde__m128_to_private(a);
1279
+
1280
+ return a_.i32[imm8 & 3];
1281
+ }
1282
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1283
+ #define simde_mm_extract_ps(a, imm8) _mm_extract_ps(a, imm8)
1284
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1285
+ #define simde_mm_extract_ps(a, imm8) vgetq_lane_s32(simde__m128_to_private(a).neon_i32, imm8)
1286
+ #endif
1287
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1288
+ #undef _mm_extract_ps
1289
+ #define _mm_extract_ps(a, imm8) simde_mm_extract_ps(a, imm8)
1290
+ #endif
1291
+
1292
+ SIMDE_FUNCTION_ATTRIBUTES
1293
+ simde__m128d
1294
+ simde_mm_floor_pd (simde__m128d a) {
1295
+ return simde_mm_round_pd(a, SIMDE_MM_FROUND_TO_NEG_INF);
1296
+ }
1297
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1298
+ #undef _mm_floor_pd
1299
+ #define _mm_floor_pd(a) simde_mm_floor_pd(a)
1300
+ #endif
1301
+
1302
+ SIMDE_FUNCTION_ATTRIBUTES
1303
+ simde__m128
1304
+ simde_mm_floor_ps (simde__m128 a) {
1305
+ return simde_mm_round_ps(a, SIMDE_MM_FROUND_TO_NEG_INF);
1306
+ }
1307
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1308
+ #undef _mm_floor_ps
1309
+ #define _mm_floor_ps(a) simde_mm_floor_ps(a)
1310
+ #endif
1311
+
1312
+ SIMDE_FUNCTION_ATTRIBUTES
1313
+ simde__m128d
1314
+ simde_mm_floor_sd (simde__m128d a, simde__m128d b) {
1315
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1316
+ return _mm_floor_sd(a, b);
1317
+ #else
1318
+ simde__m128d_private
1319
+ r_,
1320
+ a_ = simde__m128d_to_private(a),
1321
+ b_ = simde__m128d_to_private(b);
1322
+
1323
+ #if defined(simde_math_floor)
1324
+ r_.f64[0] = simde_math_floor(b_.f64[0]);
1325
+ r_.f64[1] = a_.f64[1];
1326
+ #else
1327
+ HEDLEY_UNREACHABLE();
1328
+ #endif
1329
+
1330
+ return simde__m128d_from_private(r_);
1331
+ #endif
1332
+ }
1333
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1334
+ #undef _mm_floor_sd
1335
+ #define _mm_floor_sd(a, b) simde_mm_floor_sd(a, b)
1336
+ #endif
1337
+
1338
+ SIMDE_FUNCTION_ATTRIBUTES
1339
+ simde__m128
1340
+ simde_mm_floor_ss (simde__m128 a, simde__m128 b) {
1341
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1342
+ return _mm_floor_ss(a, b);
1343
+ #elif (SIMDE_NATURAL_VECTOR_SIZE > 0)
1344
+ return simde_mm_move_ss(a, simde_mm_floor_ps(b));
1345
+ #else
1346
+ simde__m128_private
1347
+ r_,
1348
+ a_ = simde__m128_to_private(a),
1349
+ b_ = simde__m128_to_private(b);
1350
+
1351
+ #if defined(simde_math_floorf)
1352
+ r_.f32[0] = simde_math_floorf(b_.f32[0]);
1353
+ for (size_t i = 1 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
1354
+ r_.f32[i] = a_.f32[i];
1355
+ }
1356
+ #else
1357
+ HEDLEY_UNREACHABLE();
1358
+ #endif
1359
+
1360
+ return simde__m128_from_private(r_);
1361
+ #endif
1362
+ }
1363
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1364
+ #undef _mm_floor_ss
1365
+ #define _mm_floor_ss(a, b) simde_mm_floor_ss(a, b)
1366
+ #endif
1367
+
1368
+ SIMDE_FUNCTION_ATTRIBUTES
1369
+ simde__m128i
1370
+ simde_mm_insert_epi8 (simde__m128i a, int i, const int imm8)
1371
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 15) {
1372
+ simde__m128i_private
1373
+ r_ = simde__m128i_to_private(a);
1374
+
1375
+ r_.i8[imm8] = HEDLEY_STATIC_CAST(int8_t, i);
1376
+
1377
+ return simde__m128i_from_private(r_);
1378
+ }
1379
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1380
+ /* clang-3.8 returns an incompatible type, so we need the cast. MSVC
1381
+ * can't handle the cast ("error C2440: 'type cast': cannot convert
1382
+ * from '__m128i' to '__m128i'"). */
1383
+ #if defined(__clang__)
1384
+ #define simde_mm_insert_epi8(a, i, imm8) HEDLEY_STATIC_CAST(__m128i, _mm_insert_epi8(a, i, imm8))
1385
+ #else
1386
+ #define simde_mm_insert_epi8(a, i, imm8) _mm_insert_epi8(a, i, imm8)
1387
+ #endif
1388
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1389
+ # define simde_mm_insert_epi8(a, i, imm8) simde__m128i_from_neon_i8(vsetq_lane_s8(i, simde__m128i_to_private(a).i8, imm8))
1390
+ #endif
1391
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1392
+ #undef _mm_insert_epi8
1393
+ #define _mm_insert_epi8(a, i, imm8) simde_mm_insert_epi8(a, i, imm8)
1394
+ #endif
1395
+
1396
+ SIMDE_FUNCTION_ATTRIBUTES
1397
+ simde__m128i
1398
+ simde_mm_insert_epi32 (simde__m128i a, int i, const int imm8)
1399
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 3) {
1400
+ simde__m128i_private
1401
+ r_ = simde__m128i_to_private(a);
1402
+
1403
+ r_.i32[imm8] = HEDLEY_STATIC_CAST(int32_t, i);
1404
+
1405
+ return simde__m128i_from_private(r_);
1406
+ }
1407
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1408
+ #if defined(__clang__)
1409
+ #define simde_mm_insert_epi32(a, i, imm8) HEDLEY_STATIC_CAST(__m128i, _mm_insert_epi32(a, i, imm8))
1410
+ #else
1411
+ #define simde_mm_insert_epi32(a, i, imm8) _mm_insert_epi32(a, i, imm8)
1412
+ #endif
1413
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1414
+ # define simde_mm_insert_epi32(a, i, imm8) simde__m128i_from_neon_i32(vsetq_lane_s32(i, simde__m128i_to_private(a).i32, imm8))
1415
+ #endif
1416
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1417
+ #undef _mm_insert_epi32
1418
+ #define _mm_insert_epi32(a, i, imm8) simde_mm_insert_epi32(a, i, imm8)
1419
+ #endif
1420
+
1421
+ SIMDE_FUNCTION_ATTRIBUTES
1422
+ simde__m128i
1423
+ simde_mm_insert_epi64 (simde__m128i a, int64_t i, const int imm8)
1424
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 1) {
1425
+ #if defined(SIMDE_BUG_GCC_94482)
1426
+ simde__m128i_private
1427
+ a_ = simde__m128i_to_private(a);
1428
+
1429
+ switch(imm8) {
1430
+ case 0:
1431
+ return simde_mm_set_epi64x(a_.i64[1], i);
1432
+ break;
1433
+ case 1:
1434
+ return simde_mm_set_epi64x(i, a_.i64[0]);
1435
+ break;
1436
+ default:
1437
+ HEDLEY_UNREACHABLE();
1438
+ break;
1439
+ }
1440
+ #else
1441
+ simde__m128i_private
1442
+ r_ = simde__m128i_to_private(a);
1443
+
1444
+ r_.i64[imm8] = i;
1445
+ return simde__m128i_from_private(r_);
1446
+ #endif
1447
+ }
1448
+ #if defined(SIMDE_X86_SSE4_1_NATIVE) && defined(SIMDE_ARCH_AMD64)
1449
+ # define simde_mm_insert_epi64(a, i, imm8) _mm_insert_epi64(a, i, imm8)
1450
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1451
+ # define simde_mm_insert_epi64(a, i, imm8) simde__m128i_from_neon_i64(vsetq_lane_s64(i, simde__m128i_to_private(a).i64, imm8))
1452
+ #endif
1453
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1454
+ #undef _mm_insert_epi64
1455
+ #define _mm_insert_epi64(a, i, imm8) simde_mm_insert_epi64(a, i, imm8)
1456
+ #endif
1457
+
1458
+ SIMDE_FUNCTION_ATTRIBUTES
1459
+ simde__m128
1460
+ simde_mm_insert_ps (simde__m128 a, simde__m128 b, const int imm8)
1461
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 255) {
1462
+ simde__m128_private
1463
+ r_,
1464
+ a_ = simde__m128_to_private(a),
1465
+ b_ = simde__m128_to_private(b);
1466
+
1467
+ a_.f32[0] = b_.f32[(imm8 >> 6) & 3];
1468
+ a_.f32[(imm8 >> 4) & 3] = a_.f32[0];
1469
+
1470
+ SIMDE_VECTORIZE
1471
+ for (size_t i = 0 ; i < (sizeof(r_.f32) / sizeof(r_.f32[0])) ; i++) {
1472
+ r_.f32[i] = (imm8 >> i) ? SIMDE_FLOAT32_C(0.0) : a_.f32[i];
1473
+ }
1474
+
1475
+ return simde__m128_from_private(r_);
1476
+ }
1477
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1478
+ # define simde_mm_insert_ps(a, b, imm8) _mm_insert_ps(a, b, imm8)
1479
+ #endif
1480
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1481
+ #undef _mm_insert_ps
1482
+ #define _mm_insert_ps(a, b, imm8) simde_mm_insert_ps(a, b, imm8)
1483
+ #endif
1484
+
1485
+ SIMDE_FUNCTION_ATTRIBUTES
1486
+ simde__m128i
1487
+ simde_mm_max_epi8 (simde__m128i a, simde__m128i b) {
1488
+ #if defined(SIMDE_X86_SSE4_1_NATIVE) && !defined(__PGI)
1489
+ return _mm_max_epi8(a, b);
1490
+ #else
1491
+ simde__m128i_private
1492
+ r_,
1493
+ a_ = simde__m128i_to_private(a),
1494
+ b_ = simde__m128i_to_private(b);
1495
+
1496
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1497
+ r_.neon_i8 = vmaxq_s8(a_.neon_i8, b_.neon_i8);
1498
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1499
+ r_.wasm_v128 = wasm_i8x16_max(a_.wasm_v128, b_.wasm_v128);
1500
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1501
+ r_.altivec_i8 = vec_max(a_.altivec_i8, b_.altivec_i8);
1502
+ #else
1503
+ SIMDE_VECTORIZE
1504
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
1505
+ r_.i8[i] = a_.i8[i] > b_.i8[i] ? a_.i8[i] : b_.i8[i];
1506
+ }
1507
+ #endif
1508
+
1509
+ return simde__m128i_from_private(r_);
1510
+ #endif
1511
+ }
1512
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1513
+ #undef _mm_max_epi8
1514
+ #define _mm_max_epi8(a, b) simde_mm_max_epi8(a, b)
1515
+ #endif
1516
+
1517
+ SIMDE_FUNCTION_ATTRIBUTES
1518
+ simde__m128i
1519
+ simde_mm_max_epi32 (simde__m128i a, simde__m128i b) {
1520
+ #if defined(SIMDE_X86_SSE4_1_NATIVE) && !defined(__PGI)
1521
+ return _mm_max_epi32(a, b);
1522
+ #else
1523
+ simde__m128i_private
1524
+ r_,
1525
+ a_ = simde__m128i_to_private(a),
1526
+ b_ = simde__m128i_to_private(b);
1527
+
1528
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1529
+ r_.neon_i32 = vmaxq_s32(a_.neon_i32, b_.neon_i32);
1530
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1531
+ r_.wasm_v128 = wasm_i32x4_max(a_.wasm_v128, b_.wasm_v128);
1532
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1533
+ r_.altivec_i32 = vec_max(a_.altivec_i32, b_.altivec_i32);
1534
+ #else
1535
+ SIMDE_VECTORIZE
1536
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
1537
+ r_.i32[i] = a_.i32[i] > b_.i32[i] ? a_.i32[i] : b_.i32[i];
1538
+ }
1539
+ #endif
1540
+
1541
+ return simde__m128i_from_private(r_);
1542
+ #endif
1543
+ }
1544
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1545
+ #undef _mm_max_epi32
1546
+ #define _mm_max_epi32(a, b) simde_mm_max_epi32(a, b)
1547
+ #endif
1548
+
1549
+ SIMDE_FUNCTION_ATTRIBUTES
1550
+ simde__m128i
1551
+ simde_mm_max_epu16 (simde__m128i a, simde__m128i b) {
1552
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1553
+ return _mm_max_epu16(a, b);
1554
+ #else
1555
+ simde__m128i_private
1556
+ r_,
1557
+ a_ = simde__m128i_to_private(a),
1558
+ b_ = simde__m128i_to_private(b);
1559
+
1560
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1561
+ r_.neon_u16 = vmaxq_u16(a_.neon_u16, b_.neon_u16);
1562
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1563
+ r_.wasm_v128 = wasm_u16x8_max(a_.wasm_v128, b_.wasm_v128);
1564
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1565
+ r_.altivec_u16 = vec_max(a_.altivec_u16, b_.altivec_u16);
1566
+ #else
1567
+ SIMDE_VECTORIZE
1568
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
1569
+ r_.u16[i] = a_.u16[i] > b_.u16[i] ? a_.u16[i] : b_.u16[i];
1570
+ }
1571
+ #endif
1572
+
1573
+ return simde__m128i_from_private(r_);
1574
+ #endif
1575
+ }
1576
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1577
+ #undef _mm_max_epu16
1578
+ #define _mm_max_epu16(a, b) simde_mm_max_epu16(a, b)
1579
+ #endif
1580
+
1581
+ SIMDE_FUNCTION_ATTRIBUTES
1582
+ simde__m128i
1583
+ simde_mm_max_epu32 (simde__m128i a, simde__m128i b) {
1584
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1585
+ return _mm_max_epu32(a, b);
1586
+ #else
1587
+ simde__m128i_private
1588
+ r_,
1589
+ a_ = simde__m128i_to_private(a),
1590
+ b_ = simde__m128i_to_private(b);
1591
+
1592
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1593
+ r_.neon_u32 = vmaxq_u32(a_.neon_u32, b_.neon_u32);
1594
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1595
+ r_.wasm_v128 = wasm_u32x4_max(a_.wasm_v128, b_.wasm_v128);
1596
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1597
+ r_.altivec_u32 = vec_max(a_.altivec_u32, b_.altivec_u32);
1598
+ #else
1599
+ SIMDE_VECTORIZE
1600
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
1601
+ r_.u32[i] = a_.u32[i] > b_.u32[i] ? a_.u32[i] : b_.u32[i];
1602
+ }
1603
+ #endif
1604
+
1605
+ return simde__m128i_from_private(r_);
1606
+ #endif
1607
+ }
1608
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1609
+ #undef _mm_max_epu32
1610
+ #define _mm_max_epu32(a, b) simde_mm_max_epu32(a, b)
1611
+ #endif
1612
+
1613
+ SIMDE_FUNCTION_ATTRIBUTES
1614
+ simde__m128i
1615
+ simde_mm_min_epi8 (simde__m128i a, simde__m128i b) {
1616
+ #if defined(SIMDE_X86_SSE4_1_NATIVE) && !defined(__PGI)
1617
+ return _mm_min_epi8(a, b);
1618
+ #else
1619
+ simde__m128i_private
1620
+ r_,
1621
+ a_ = simde__m128i_to_private(a),
1622
+ b_ = simde__m128i_to_private(b);
1623
+
1624
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1625
+ r_.neon_i8 = vminq_s8(a_.neon_i8, b_.neon_i8);
1626
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1627
+ r_.wasm_v128 = wasm_i8x16_min(a_.wasm_v128, b_.wasm_v128);
1628
+ #else
1629
+ SIMDE_VECTORIZE
1630
+ for (size_t i = 0 ; i < (sizeof(r_.i8) / sizeof(r_.i8[0])) ; i++) {
1631
+ r_.i8[i] = a_.i8[i] < b_.i8[i] ? a_.i8[i] : b_.i8[i];
1632
+ }
1633
+ #endif
1634
+
1635
+ return simde__m128i_from_private(r_);
1636
+ #endif
1637
+ }
1638
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1639
+ #undef _mm_min_epi8
1640
+ #define _mm_min_epi8(a, b) simde_mm_min_epi8(a, b)
1641
+ #endif
1642
+
1643
+ SIMDE_FUNCTION_ATTRIBUTES
1644
+ simde__m128i
1645
+ simde_mm_min_epi32 (simde__m128i a, simde__m128i b) {
1646
+ #if defined(SIMDE_X86_SSE4_1_NATIVE) && !defined(__PGI)
1647
+ return _mm_min_epi32(a, b);
1648
+ #else
1649
+ simde__m128i_private
1650
+ r_,
1651
+ a_ = simde__m128i_to_private(a),
1652
+ b_ = simde__m128i_to_private(b);
1653
+
1654
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1655
+ r_.neon_i32 = vminq_s32(a_.neon_i32, b_.neon_i32);
1656
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1657
+ r_.wasm_v128 = wasm_i32x4_min(a_.wasm_v128, b_.wasm_v128);
1658
+ #else
1659
+ SIMDE_VECTORIZE
1660
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
1661
+ r_.i32[i] = a_.i32[i] < b_.i32[i] ? a_.i32[i] : b_.i32[i];
1662
+ }
1663
+ #endif
1664
+
1665
+ return simde__m128i_from_private(r_);
1666
+ #endif
1667
+ }
1668
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1669
+ #undef _mm_min_epi32
1670
+ #define _mm_min_epi32(a, b) simde_mm_min_epi32(a, b)
1671
+ #endif
1672
+
1673
+ SIMDE_FUNCTION_ATTRIBUTES
1674
+ simde__m128i
1675
+ simde_mm_min_epu16 (simde__m128i a, simde__m128i b) {
1676
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1677
+ return _mm_min_epu16(a, b);
1678
+ #else
1679
+ simde__m128i_private
1680
+ r_,
1681
+ a_ = simde__m128i_to_private(a),
1682
+ b_ = simde__m128i_to_private(b);
1683
+
1684
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1685
+ r_.neon_u16 = vminq_u16(a_.neon_u16, b_.neon_u16);
1686
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1687
+ r_.wasm_v128 = wasm_u16x8_min(a_.wasm_v128, b_.wasm_v128);
1688
+ #else
1689
+ SIMDE_VECTORIZE
1690
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
1691
+ r_.u16[i] = a_.u16[i] < b_.u16[i] ? a_.u16[i] : b_.u16[i];
1692
+ }
1693
+ #endif
1694
+
1695
+ return simde__m128i_from_private(r_);
1696
+ #endif
1697
+ }
1698
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1699
+ #undef _mm_min_epu16
1700
+ #define _mm_min_epu16(a, b) simde_mm_min_epu16(a, b)
1701
+ #endif
1702
+
1703
+ SIMDE_FUNCTION_ATTRIBUTES
1704
+ simde__m128i
1705
+ simde_mm_min_epu32 (simde__m128i a, simde__m128i b) {
1706
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1707
+ return _mm_min_epu32(a, b);
1708
+ #else
1709
+ simde__m128i_private
1710
+ r_,
1711
+ a_ = simde__m128i_to_private(a),
1712
+ b_ = simde__m128i_to_private(b);
1713
+
1714
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1715
+ r_.neon_u32 = vminq_u32(a_.neon_u32, b_.neon_u32);
1716
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1717
+ r_.wasm_v128 = wasm_u32x4_min(a_.wasm_v128, b_.wasm_v128);
1718
+ #else
1719
+ SIMDE_VECTORIZE
1720
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
1721
+ r_.u32[i] = a_.u32[i] < b_.u32[i] ? a_.u32[i] : b_.u32[i];
1722
+ }
1723
+ #endif
1724
+
1725
+ return simde__m128i_from_private(r_);
1726
+ #endif
1727
+ }
1728
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1729
+ #undef _mm_min_epu32
1730
+ #define _mm_min_epu32(a, b) simde_mm_min_epu32(a, b)
1731
+ #endif
1732
+
1733
+ SIMDE_FUNCTION_ATTRIBUTES
1734
+ simde__m128i
1735
+ simde_mm_minpos_epu16 (simde__m128i a) {
1736
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1737
+ return _mm_minpos_epu16(a);
1738
+ #else
1739
+ simde__m128i_private
1740
+ r_ = simde__m128i_to_private(simde_mm_setzero_si128()),
1741
+ a_ = simde__m128i_to_private(a);
1742
+
1743
+ r_.u16[0] = UINT16_MAX;
1744
+ for (size_t i = 0 ; i < (sizeof(r_.u16) / sizeof(r_.u16[0])) ; i++) {
1745
+ if (a_.u16[i] < r_.u16[0]) {
1746
+ r_.u16[0] = a_.u16[i];
1747
+ r_.u16[1] = HEDLEY_STATIC_CAST(uint16_t, i);
1748
+ }
1749
+ }
1750
+
1751
+ return simde__m128i_from_private(r_);
1752
+ #endif
1753
+ }
1754
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1755
+ #undef _mm_minpos_epu16
1756
+ #define _mm_minpos_epu16(a) simde_mm_minpos_epu16(a)
1757
+ #endif
1758
+
1759
+ SIMDE_FUNCTION_ATTRIBUTES
1760
+ simde__m128i
1761
+ simde_mm_mpsadbw_epu8 (simde__m128i a, simde__m128i b, const int imm8)
1762
+ SIMDE_REQUIRE_CONSTANT_RANGE(imm8, 0, 255) {
1763
+ simde__m128i_private
1764
+ r_,
1765
+ a_ = simde__m128i_to_private(a),
1766
+ b_ = simde__m128i_to_private(b);
1767
+
1768
+ const int a_offset = imm8 & 4;
1769
+ const int b_offset = (imm8 & 3) << 2;
1770
+
1771
+ #if defined(simde_math_abs)
1772
+ for (int i = 0 ; i < HEDLEY_STATIC_CAST(int, (sizeof(r_.u16) / sizeof(r_.u16[0]))) ; i++) {
1773
+ r_.u16[i] =
1774
+ HEDLEY_STATIC_CAST(uint16_t, simde_math_abs(HEDLEY_STATIC_CAST(int, a_.u8[a_offset + i + 0] - b_.u8[b_offset + 0]))) +
1775
+ HEDLEY_STATIC_CAST(uint16_t, simde_math_abs(HEDLEY_STATIC_CAST(int, a_.u8[a_offset + i + 1] - b_.u8[b_offset + 1]))) +
1776
+ HEDLEY_STATIC_CAST(uint16_t, simde_math_abs(HEDLEY_STATIC_CAST(int, a_.u8[a_offset + i + 2] - b_.u8[b_offset + 2]))) +
1777
+ HEDLEY_STATIC_CAST(uint16_t, simde_math_abs(HEDLEY_STATIC_CAST(int, a_.u8[a_offset + i + 3] - b_.u8[b_offset + 3])));
1778
+ }
1779
+ #else
1780
+ HEDLEY_UNREACHABLE();
1781
+ #endif
1782
+
1783
+ return simde__m128i_from_private(r_);
1784
+ }
1785
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1786
+ # define simde_mm_mpsadbw_epu8(a, b, imm8) _mm_mpsadbw_epu8(a, b, imm8)
1787
+ #endif
1788
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1789
+ #undef _mm_mpsadbw_epu8
1790
+ #define _mm_mpsadbw_epu8(a, b, imm8) simde_mm_mpsadbw_epu8(a, b, imm8)
1791
+ #endif
1792
+
1793
+ SIMDE_FUNCTION_ATTRIBUTES
1794
+ simde__m128i
1795
+ simde_mm_mul_epi32 (simde__m128i a, simde__m128i b) {
1796
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1797
+ return _mm_mul_epi32(a, b);
1798
+ #else
1799
+ simde__m128i_private
1800
+ r_,
1801
+ a_ = simde__m128i_to_private(a),
1802
+ b_ = simde__m128i_to_private(b);
1803
+
1804
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1805
+ // vmull_s32 upcasts instead of masking, so we downcast.
1806
+ int32x2_t a_lo = vmovn_s64(a_.neon_i64);
1807
+ int32x2_t b_lo = vmovn_s64(b_.neon_i64);
1808
+ r_.neon_i64 = vmull_s32(a_lo, b_lo);
1809
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1810
+ r_.wasm_v128 = wasm_i64x2_make(
1811
+ wasm_i32x4_extract_lane(a_.wasm_v128, 0) * HEDLEY_STATIC_CAST(int64_t, wasm_i32x4_extract_lane(b_.wasm_v128, 0)),
1812
+ wasm_i32x4_extract_lane(a_.wasm_v128, 2) * HEDLEY_STATIC_CAST(int64_t, wasm_i32x4_extract_lane(b_.wasm_v128, 2)));
1813
+ #else
1814
+ SIMDE_VECTORIZE
1815
+ for (size_t i = 0 ; i < (sizeof(r_.i64) / sizeof(r_.i64[0])) ; i++) {
1816
+ r_.i64[i] =
1817
+ HEDLEY_STATIC_CAST(int64_t, a_.i32[i * 2]) *
1818
+ HEDLEY_STATIC_CAST(int64_t, b_.i32[i * 2]);
1819
+ }
1820
+ #endif
1821
+
1822
+ return simde__m128i_from_private(r_);
1823
+ #endif
1824
+ }
1825
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1826
+ #undef _mm_mul_epi32
1827
+ #define _mm_mul_epi32(a, b) simde_mm_mul_epi32(a, b)
1828
+ #endif
1829
+
1830
+ SIMDE_FUNCTION_ATTRIBUTES
1831
+ simde__m128i
1832
+ simde_mm_mullo_epi32 (simde__m128i a, simde__m128i b) {
1833
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1834
+ return _mm_mullo_epi32(a, b);
1835
+ #else
1836
+ simde__m128i_private
1837
+ r_,
1838
+ a_ = simde__m128i_to_private(a),
1839
+ b_ = simde__m128i_to_private(b);
1840
+
1841
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1842
+ r_.neon_i32 = vmulq_s32(a_.neon_i32, b_.neon_i32);
1843
+ #elif defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
1844
+ (void) a_;
1845
+ (void) b_;
1846
+ r_.altivec_i32 = vec_mul(a_.altivec_i32, b_.altivec_i32);
1847
+ #elif defined(SIMDE_WASM_SIMD128_NATIVE)
1848
+ r_.wasm_v128 = wasm_i32x4_mul(a_.wasm_v128, b_.wasm_v128);
1849
+ #else
1850
+ SIMDE_VECTORIZE
1851
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
1852
+ r_.u32[i] = HEDLEY_STATIC_CAST(uint32_t, (HEDLEY_STATIC_CAST(uint64_t, (HEDLEY_STATIC_CAST(int64_t, a_.i32[i]) * HEDLEY_STATIC_CAST(int64_t, b_.i32[i]))) & 0xffffffff));
1853
+ }
1854
+ #endif
1855
+
1856
+ return simde__m128i_from_private(r_);
1857
+ #endif
1858
+ }
1859
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1860
+ #undef _mm_mullo_epi32
1861
+ #define _mm_mullo_epi32(a, b) simde_mm_mullo_epi32(a, b)
1862
+ #endif
1863
+
1864
+ SIMDE_FUNCTION_ATTRIBUTES
1865
+ simde__m128i
1866
+ simde_x_mm_mullo_epu32 (simde__m128i a, simde__m128i b) {
1867
+ simde__m128i_private
1868
+ r_,
1869
+ a_ = simde__m128i_to_private(a),
1870
+ b_ = simde__m128i_to_private(b);
1871
+
1872
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1873
+ r_.neon_u32 = vmulq_u32(a_.neon_u32, b_.neon_u32);
1874
+ #elif defined(SIMDE_VECTOR_SUBSCRIPT_OPS)
1875
+ r_.u32 = a_.u32 * b_.u32;
1876
+ #else
1877
+ SIMDE_VECTORIZE
1878
+ for (size_t i = 0 ; i < (sizeof(r_.u32) / sizeof(r_.u32[0])) ; i++) {
1879
+ r_.u32[i] = a_.u32[i] * b_.u32[i];
1880
+ }
1881
+ #endif
1882
+
1883
+ return simde__m128i_from_private(r_);
1884
+ }
1885
+
1886
+ SIMDE_FUNCTION_ATTRIBUTES
1887
+ simde__m128i
1888
+ simde_mm_packus_epi32 (simde__m128i a, simde__m128i b) {
1889
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1890
+ return _mm_packus_epi32(a, b);
1891
+ #else
1892
+ simde__m128i_private
1893
+ r_,
1894
+ a_ = simde__m128i_to_private(a),
1895
+ b_ = simde__m128i_to_private(b);
1896
+
1897
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
1898
+ const int32x4_t z = vdupq_n_s32(0);
1899
+ r_.neon_u16 = vcombine_u16(
1900
+ vqmovn_u32(vreinterpretq_u32_s32(vmaxq_s32(z, a_.neon_i32))),
1901
+ vqmovn_u32(vreinterpretq_u32_s32(vmaxq_s32(z, b_.neon_i32))));
1902
+ #else
1903
+ for (size_t i = 0 ; i < (sizeof(r_.i32) / sizeof(r_.i32[0])) ; i++) {
1904
+ r_.u16[i + 0] = (a_.i32[i] < 0) ? UINT16_C(0) : ((a_.i32[i] > UINT16_MAX) ? (UINT16_MAX) : HEDLEY_STATIC_CAST(uint16_t, a_.i32[i]));
1905
+ r_.u16[i + 4] = (b_.i32[i] < 0) ? UINT16_C(0) : ((b_.i32[i] > UINT16_MAX) ? (UINT16_MAX) : HEDLEY_STATIC_CAST(uint16_t, b_.i32[i]));
1906
+ }
1907
+ #endif
1908
+
1909
+ return simde__m128i_from_private(r_);
1910
+ #endif
1911
+ }
1912
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1913
+ #undef _mm_packus_epi32
1914
+ #define _mm_packus_epi32(a, b) simde_mm_packus_epi32(a, b)
1915
+ #endif
1916
+
1917
+ SIMDE_FUNCTION_ATTRIBUTES
1918
+ simde__m128d
1919
+ simde_mm_round_sd (simde__m128d a, simde__m128d b, int rounding)
1920
+ SIMDE_REQUIRE_CONSTANT_RANGE(rounding, 0, 15) {
1921
+ simde__m128d_private
1922
+ r_ = simde__m128d_to_private(a),
1923
+ b_ = simde__m128d_to_private(b);
1924
+
1925
+ switch (rounding & ~SIMDE_MM_FROUND_NO_EXC) {
1926
+ #if defined(simde_math_nearbyint)
1927
+ case SIMDE_MM_FROUND_TO_NEAREST_INT:
1928
+ case SIMDE_MM_FROUND_CUR_DIRECTION:
1929
+ r_.f64[0] = simde_math_nearbyint(b_.f64[0]);
1930
+ break;
1931
+ #endif
1932
+
1933
+ #if defined(simde_math_floor)
1934
+ case SIMDE_MM_FROUND_TO_NEG_INF:
1935
+ r_.f64[0] = simde_math_floor(b_.f64[0]);
1936
+ break;
1937
+ #endif
1938
+
1939
+ #if defined(simde_math_ceil)
1940
+ case SIMDE_MM_FROUND_TO_POS_INF:
1941
+ r_.f64[0] = simde_math_ceil(b_.f64[0]);
1942
+ break;
1943
+ #endif
1944
+
1945
+ #if defined(simde_math_trunc)
1946
+ case SIMDE_MM_FROUND_TO_ZERO:
1947
+ r_.f64[0] = simde_math_trunc(b_.f64[0]);
1948
+ break;
1949
+ #endif
1950
+
1951
+ default:
1952
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_undefined_pd());
1953
+ }
1954
+
1955
+ return simde__m128d_from_private(r_);
1956
+ }
1957
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
1958
+ # define simde_mm_round_sd(a, b, rounding) _mm_round_sd(a, b, rounding)
1959
+ #elif SIMDE_NATURAL_VECTOR_SIZE_GE(128)
1960
+ # define simde_mm_round_sd(a, b, rounding) simde_mm_move_sd(a, simde_mm_round_pd(b, rounding))
1961
+ #endif
1962
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
1963
+ #undef _mm_round_sd
1964
+ #define _mm_round_sd(a, b, rounding) simde_mm_round_sd(a, b, rounding)
1965
+ #endif
1966
+
1967
+ SIMDE_FUNCTION_ATTRIBUTES
1968
+ simde__m128
1969
+ simde_mm_round_ss (simde__m128 a, simde__m128 b, int rounding)
1970
+ SIMDE_REQUIRE_CONSTANT_RANGE(rounding, 0, 15) {
1971
+ simde__m128_private
1972
+ r_ = simde__m128_to_private(a),
1973
+ b_ = simde__m128_to_private(b);
1974
+
1975
+ switch (rounding & ~SIMDE_MM_FROUND_NO_EXC) {
1976
+ #if defined(simde_math_nearbyintf)
1977
+ case SIMDE_MM_FROUND_TO_NEAREST_INT:
1978
+ case SIMDE_MM_FROUND_CUR_DIRECTION:
1979
+ r_.f32[0] = simde_math_nearbyintf(b_.f32[0]);
1980
+ break;
1981
+ #endif
1982
+
1983
+ #if defined(simde_math_floorf)
1984
+ case SIMDE_MM_FROUND_TO_NEG_INF:
1985
+ r_.f32[0] = simde_math_floorf(b_.f32[0]);
1986
+ break;
1987
+ #endif
1988
+
1989
+ #if defined(simde_math_ceilf)
1990
+ case SIMDE_MM_FROUND_TO_POS_INF:
1991
+ r_.f32[0] = simde_math_ceilf(b_.f32[0]);
1992
+ break;
1993
+ #endif
1994
+
1995
+ #if defined(simde_math_truncf)
1996
+ case SIMDE_MM_FROUND_TO_ZERO:
1997
+ r_.f32[0] = simde_math_truncf(b_.f32[0]);
1998
+ break;
1999
+ #endif
2000
+
2001
+ default:
2002
+ HEDLEY_UNREACHABLE_RETURN(simde_mm_undefined_pd());
2003
+ }
2004
+
2005
+ return simde__m128_from_private(r_);
2006
+ }
2007
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2008
+ # define simde_mm_round_ss(a, b, rounding) _mm_round_ss(a, b, rounding)
2009
+ #elif SIMDE_NATURAL_VECTOR_SIZE_GE(128)
2010
+ # define simde_mm_round_ss(a, b, rounding) simde_mm_move_ss(a, simde_mm_round_ps(b, rounding))
2011
+ #endif
2012
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2013
+ #undef _mm_round_ss
2014
+ #define _mm_round_ss(a, b, rounding) simde_mm_round_ss(a, b, rounding)
2015
+ #endif
2016
+
2017
+ SIMDE_FUNCTION_ATTRIBUTES
2018
+ simde__m128i
2019
+ simde_mm_stream_load_si128 (const simde__m128i* mem_addr) {
2020
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2021
+ return _mm_stream_load_si128(HEDLEY_CONST_CAST(simde__m128i*, mem_addr));
2022
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2023
+ return vreinterpretq_s64_s32(vld1q_s32(HEDLEY_REINTERPRET_CAST(int32_t const*, mem_addr)));
2024
+ #else
2025
+ return *mem_addr;
2026
+ #endif
2027
+ }
2028
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2029
+ #undef _mm_stream_load_si128
2030
+ #define _mm_stream_load_si128(mem_addr) simde_mm_stream_load_si128(mem_addr)
2031
+ #endif
2032
+
2033
+ SIMDE_FUNCTION_ATTRIBUTES
2034
+ int
2035
+ simde_mm_test_all_ones (simde__m128i a) {
2036
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2037
+ return _mm_test_all_ones(a);
2038
+ #else
2039
+ simde__m128i_private a_ = simde__m128i_to_private(a);
2040
+ int r;
2041
+
2042
+ #if defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
2043
+ r = vec_all_eq(a_.altivec_i32, vec_splats(~0));
2044
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2045
+ return r = ((vgetq_lane_s64(a_.neon_i64, 0) & vgetq_lane_s64(a_.neon_i64, 1)) == ~HEDLEY_STATIC_CAST(int64_t, 0));
2046
+ #else
2047
+ int_fast32_t r_ = ~HEDLEY_STATIC_CAST(int_fast32_t, 0);
2048
+
2049
+ SIMDE_VECTORIZE_REDUCTION(&:r_)
2050
+ for (size_t i = 0 ; i < (sizeof(a_.i32f) / sizeof(a_.i32f[0])) ; i++) {
2051
+ r_ &= a_.i32f[i];
2052
+ }
2053
+
2054
+ r = (r_ == ~HEDLEY_STATIC_CAST(int_fast32_t, 0));
2055
+ #endif
2056
+
2057
+ return r;
2058
+ #endif
2059
+ }
2060
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2061
+ #undef _mm_test_all_ones
2062
+ #define _mm_test_all_ones(a) simde_mm_test_all_ones(a)
2063
+ #endif
2064
+
2065
+ SIMDE_FUNCTION_ATTRIBUTES
2066
+ int
2067
+ simde_mm_test_all_zeros (simde__m128i a, simde__m128i mask) {
2068
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2069
+ return _mm_test_all_zeros(a, mask);
2070
+ #else
2071
+ simde__m128i_private tmp_ = simde__m128i_to_private(simde_mm_and_si128(a, mask));
2072
+ int r;
2073
+
2074
+ #if defined(SIMDE_POWER_ALTIVEC_P6_NATIVE)
2075
+ r = vec_all_eq(tmp_.altivec_i32, vec_splats(0));
2076
+ #elif defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2077
+ return !(vgetq_lane_s64(tmp_.neon_i64, 0) | vgetq_lane_s64(tmp_.neon_i64, 1));
2078
+ #else
2079
+ int_fast32_t r_ = HEDLEY_STATIC_CAST(int_fast32_t, 0);
2080
+
2081
+ SIMDE_VECTORIZE_REDUCTION(|:r_)
2082
+ for (size_t i = 0 ; i < (sizeof(tmp_.i32f) / sizeof(tmp_.i32f[0])) ; i++) {
2083
+ r_ |= tmp_.i32f[i];
2084
+ }
2085
+
2086
+ r = !r_;
2087
+ #endif
2088
+
2089
+ return r;
2090
+ #endif
2091
+ }
2092
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2093
+ #undef _mm_test_all_zeros
2094
+ #define _mm_test_all_zeros(a, mask) simde_mm_test_all_zeros(a, mask)
2095
+ #endif
2096
+
2097
+ SIMDE_FUNCTION_ATTRIBUTES
2098
+ int
2099
+ simde_mm_test_mix_ones_zeros (simde__m128i a, simde__m128i mask) {
2100
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2101
+ return _mm_test_mix_ones_zeros(a, mask);
2102
+ #else
2103
+ simde__m128i_private
2104
+ a_ = simde__m128i_to_private(a),
2105
+ mask_ = simde__m128i_to_private(mask);
2106
+
2107
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2108
+ int64x2_t s640 = vandq_s64(a_.neon_i64, mask_.neon_i64);
2109
+ int64x2_t s641 = vandq_s64(vreinterpretq_s64_s32(vmvnq_s32(vreinterpretq_s32_s64(a_.neon_i64))), mask_.neon_i64);
2110
+ return (((vgetq_lane_s64(s640, 0) | vgetq_lane_s64(s640, 1)) & (vgetq_lane_s64(s641, 0) | vgetq_lane_s64(s641, 1)))!=0);
2111
+ #else
2112
+ for (size_t i = 0 ; i < (sizeof(a_.u64) / sizeof(a_.u64[0])) ; i++)
2113
+ if (((a_.u64[i] & mask_.u64[i]) != 0) && ((~a_.u64[i] & mask_.u64[i]) != 0))
2114
+ return 1;
2115
+
2116
+ return 0;
2117
+ #endif
2118
+ #endif
2119
+ }
2120
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2121
+ #undef _mm_test_mix_ones_zeros
2122
+ #define _mm_test_mix_ones_zeros(a, mask) simde_mm_test_mix_ones_zeros(a, mask)
2123
+ #endif
2124
+
2125
+ SIMDE_FUNCTION_ATTRIBUTES
2126
+ int
2127
+ simde_mm_testc_si128 (simde__m128i a, simde__m128i b) {
2128
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2129
+ return _mm_testc_si128(a, b);
2130
+ #else
2131
+ simde__m128i_private
2132
+ a_ = simde__m128i_to_private(a),
2133
+ b_ = simde__m128i_to_private(b);
2134
+
2135
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2136
+ int64x2_t s64 = vandq_s64(~a_.neon_i64, b_.neon_i64);
2137
+ return !(vgetq_lane_s64(s64, 0) & vgetq_lane_s64(s64, 1));
2138
+ #else
2139
+ int_fast32_t r = 0;
2140
+
2141
+ SIMDE_VECTORIZE_REDUCTION(|:r)
2142
+ for (size_t i = 0 ; i < (sizeof(a_.i32f) / sizeof(a_.i32f[0])) ; i++) {
2143
+ r |= ~a_.i32f[i] & b_.i32f[i];
2144
+ }
2145
+
2146
+ return HEDLEY_STATIC_CAST(int, !r);
2147
+ #endif
2148
+ #endif
2149
+ }
2150
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2151
+ #undef _mm_testc_si128
2152
+ #define _mm_testc_si128(a, b) simde_mm_testc_si128(a, b)
2153
+ #endif
2154
+
2155
+ SIMDE_FUNCTION_ATTRIBUTES
2156
+ int
2157
+ simde_mm_testnzc_si128 (simde__m128i a, simde__m128i b) {
2158
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2159
+ return _mm_testnzc_si128(a, b);
2160
+ #else
2161
+ simde__m128i_private
2162
+ a_ = simde__m128i_to_private(a),
2163
+ b_ = simde__m128i_to_private(b);
2164
+
2165
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2166
+ int64x2_t s640 = vandq_s64(a_.neon_i64, b_.neon_i64);
2167
+ int64x2_t s641 = vandq_s64(~a_.neon_i64, b_.neon_i64);
2168
+ return (((vgetq_lane_s64(s640, 0) | vgetq_lane_s64(s640, 1)) & (vgetq_lane_s64(s641, 0) | vgetq_lane_s64(s641, 1)))!=0);
2169
+ #else
2170
+ for (size_t i = 0 ; i < (sizeof(a_.u64) / sizeof(a_.u64[0])) ; i++) {
2171
+ if (((a_.u64[i] & b_.u64[i]) != 0) && ((~a_.u64[i] & b_.u64[i]) != 0))
2172
+ return 1;
2173
+ }
2174
+
2175
+ return 0;
2176
+ #endif
2177
+ #endif
2178
+ }
2179
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2180
+ #undef _mm_testnzc_si128
2181
+ #define _mm_testnzc_si128(a, b) simde_mm_testnzc_si128(a, b)
2182
+ #endif
2183
+
2184
+ SIMDE_FUNCTION_ATTRIBUTES
2185
+ int
2186
+ simde_mm_testz_si128 (simde__m128i a, simde__m128i b) {
2187
+ #if defined(SIMDE_X86_SSE4_1_NATIVE)
2188
+ return _mm_testz_si128(a, b);
2189
+ #else
2190
+ simde__m128i_private
2191
+ a_ = simde__m128i_to_private(a),
2192
+ b_ = simde__m128i_to_private(b);
2193
+
2194
+ #if defined(SIMDE_ARM_NEON_A32V7_NATIVE)
2195
+ int64x2_t s64 = vandq_s64(a_.neon_i64, b_.neon_i64);
2196
+ return !(vgetq_lane_s64(s64, 0) | vgetq_lane_s64(s64, 1));
2197
+ #else
2198
+ for (size_t i = 0 ; i < (sizeof(a_.u64) / sizeof(a_.u64[0])) ; i++) {
2199
+ if ((a_.u64[i] & b_.u64[i]) == 0)
2200
+ return 1;
2201
+ }
2202
+ #endif
2203
+
2204
+ return 0;
2205
+ #endif
2206
+ }
2207
+ #if defined(SIMDE_X86_SSE4_1_ENABLE_NATIVE_ALIASES)
2208
+ #undef _mm_testz_si128
2209
+ #define _mm_testz_si128(a, b) simde_mm_testz_si128(a, b)
2210
+ #endif
2211
+
2212
+ SIMDE_END_DECLS_
2213
+
2214
+ HEDLEY_DIAGNOSTIC_POP
2215
+
2216
+ #endif /* !defined(SIMDE_X86_SSE4_1_H) */