public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/msolve] f43: Version 0.10.0
@ 2026-06-15 16:49 Jerry James
0 siblings, 0 replies; only message in thread
From: Jerry James @ 2026-06-15 16:49 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/msolve
Branch : f43
Commit : 255206ade62a22a4d94f636edc755aa5f3178ddb
Author : Jerry James <loganjerry@gmail.com>
Date : 2026-06-15T10:49:35-06:00
Stats : +87/-87 in 3 file(s)
URL : https://src.fedoraproject.org/rpms/msolve/c/255206ade62a22a4d94f636edc755aa5f3178ddb?branch=f43
Log:
Version 0.10.0
---
diff --git a/msolve-avx2.patch b/msolve-avx2.patch
index 0bfb362..e9af668 100644
--- a/msolve-avx2.patch
+++ b/msolve-avx2.patch
@@ -1,5 +1,5 @@
---- msolve-0.9.5/m4/ax_ext.m4.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/m4/ax_ext.m4 2026-03-26 13:54:42.067248438 -0600
+--- msolve-0.10.0/m4/ax_ext.m4.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/m4/ax_ext.m4 2026-06-15 09:56:27.596187599 -0600
@@ -54,275 +54,6 @@ AC_DEFUN([AX_EXT],
CPUEXT_FLAGS=""
SIMD_FLAGS=""
@@ -276,9 +276,9 @@
AC_SUBST(SIMD_FLAGS)
AC_SUBST(CPUEXT_FLAGS)
])
---- msolve-0.9.5/src/fglm/fglm_core.c.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/src/fglm/fglm_core.c 2026-03-26 14:17:33.210146335 -0600
-@@ -409,7 +409,9 @@ Result is stored in res.
+--- msolve-0.10.0/src/fglm/fglm_core.c.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/src/fglm/fglm_core.c 2026-06-15 09:56:27.596461560 -0600
+@@ -411,7 +411,9 @@ Result is stored in res.
vres will contain the product of the dense part.
*/
@@ -289,7 +289,7 @@
CF_t *vec,
CF_t *vres,
const mod_t prime,
-@@ -421,7 +423,6 @@ static inline void sparse_mat_fglm_mult_
+@@ -423,7 +425,6 @@ static inline void sparse_mat_fglm_mult_
for(szmat_t i = 0; i < ntriv; i++){
res[mat->triv_idx[i]] = vec[mat->triv_pos[i]];
}
@@ -297,7 +297,7 @@
nmod_t mod;
uint64_t pow2_precomp;
nmod_init(&mod, (uint64_t)prime);
-@@ -429,7 +430,25 @@ static inline void sparse_mat_fglm_mult_
+@@ -431,7 +432,25 @@ static inline void sparse_mat_fglm_mult_
_avx512_matrix_vector_product(vres, mat->dense_mat, vec, mat->dst,
ncols, nrows, mod, pow2_precomp, st);
@@ -324,7 +324,7 @@
nmod_t mod;
uint64_t pow2_precomp;
nmod_init(&mod, (uint64_t)prime);
-@@ -437,10 +456,27 @@ static inline void sparse_mat_fglm_mult_
+@@ -439,10 +458,27 @@ static inline void sparse_mat_fglm_mult_
_avx2_matrix_vector_product(vres, mat->dense_mat, vec, mat->dst,
ncols, nrows, mod, pow2_precomp, st);
@@ -354,7 +354,7 @@
for(szmat_t i = 0; i < nrows; i++){
res[mat->dense_idx[i]] = vres[i];
-@@ -454,7 +490,9 @@ Result is stored in res.
+@@ -456,7 +492,9 @@ Result is stored in res.
vres will contain the product of the dense part.
*/
@@ -365,7 +365,7 @@
CF_t *vec,
CF_t *vres,
const mod_t prime,
-@@ -476,7 +514,6 @@ static inline void sparse_mat_fglm_colon
+@@ -478,7 +516,6 @@ static inline void sparse_mat_fglm_colon
}
/* printf ("zero\n"); */
/* printf("ncols %u\n", ncols); */
@@ -373,7 +373,7 @@
nmod_t mod;
uint64_t pow2_precomp;
nmod_init(&mod, (uint64_t)prime);
-@@ -484,7 +521,34 @@ static inline void sparse_mat_fglm_colon
+@@ -486,7 +523,34 @@ static inline void sparse_mat_fglm_colon
_avx512_matrix_vector_product(vres, mat->dense_mat, vec, mat->dst,
ncols, nrows, mod, pow2_precomp, st);
@@ -409,7 +409,7 @@
nmod_t mod;
uint64_t pow2_precomp;
nmod_init(&mod, (uint64_t)prime);
-@@ -492,10 +556,36 @@ static inline void sparse_mat_fglm_colon
+@@ -494,10 +558,36 @@ static inline void sparse_mat_fglm_colon
_avx2_matrix_vector_product(vres, mat->dense_mat, vec, mat->dst,
ncols, nrows, mod, pow2_precomp, st);
@@ -448,7 +448,7 @@
for(szmat_t i = 0; i < nrows; i++){
res[mat->dense_idx[i]] = vres[i];
}
-@@ -620,6 +710,276 @@ static void generate_matrix_sequence(sp_
+@@ -622,6 +712,276 @@ static void generate_matrix_sequence(sp_
}
#endif
@@ -725,7 +725,7 @@
static void generate_sequence_verif(sp_matfglm_t *matrix, fglm_data_t * data,
szmat_t block_size, szmat_t dimquot,
nvars_t* squvars,
-@@ -700,6 +1060,7 @@ static void generate_sequence_verif(sp_m
+@@ -702,6 +1062,7 @@ static void generate_sequence_verif(sp_m
}
}
@@ -733,7 +733,7 @@
-@@ -1657,6 +2018,178 @@ static inline void guess_minpoly_colon(p
+@@ -1659,6 +2020,178 @@ static inline void guess_minpoly_colon(p
}
}
@@ -912,7 +912,7 @@
static inline void
guess_sequence_colon(sp_matfglmcol_t *matrix, fglm_data_t * data,
CF_t * leftvec, CF_t ** leftvecparam,
-@@ -1742,7 +2275,250 @@ guess_sequence_colon(sp_matfglmcol_t *ma
+@@ -1744,7 +2277,250 @@ guess_sequence_colon(sp_matfglmcol_t *ma
}
}
@@ -1164,7 +1164,7 @@
const mod_t prime,
CF_t *leftvec,
CF_t **leftvecparam,
-@@ -1862,3 +2638,155 @@ param_t *nmod_fglm_guess_colon(sp_matfgl
+@@ -1864,3 +2640,155 @@ param_t *nmod_fglm_guess_colon(sp_matfgl
return param;
}
@@ -1320,8 +1320,8 @@
+ return param;
+}
+#endif
---- msolve-0.9.5/src/fglm/linalg-fglm.c.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/src/fglm/linalg-fglm.c 2026-03-26 15:19:31.774585250 -0600
+--- msolve-0.10.0/src/fglm/linalg-fglm.c.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/src/fglm/linalg-fglm.c 2026-06-15 09:56:27.597023487 -0600
@@ -26,7 +26,7 @@
#include <flint/nmod.h>
#endif
@@ -1434,8 +1434,8 @@
const uint32_t * mat,
const uint32_t * vec,
const uint32_t * dst,
---- msolve-0.9.5/src/fglm/matrix-mult.c.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/src/fglm/matrix-mult.c 2026-03-26 14:29:23.345648253 -0600
+--- msolve-0.10.0/src/fglm/matrix-mult.c.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/src/fglm/matrix-mult.c 2026-06-15 09:56:27.597372658 -0600
@@ -21,7 +21,7 @@
//-1 sur 32 bits
#define MONE32 ((uint32_t)0xFFFFFFFF)
@@ -1457,7 +1457,7 @@
__m256i acc_low, __m256i acc_high,
const uint32_t fc, const uint32_t preinv,
const uint32_t RED_32, const uint32_t RED_64){
-@@ -167,7 +168,7 @@ static __inline__ void make_zero(uint32_
+@@ -167,7 +168,7 @@ static inline void make_zero(uint32_t **
}
@@ -1466,7 +1466,7 @@
/*
m = number of rows in A
l = number of cols in A = number of rows in B
-@@ -176,7 +177,7 @@ static __inline__ void make_zero(uint32_
+@@ -176,7 +177,7 @@ static inline void make_zero(uint32_t **
D = A*B
*/
@@ -1489,10 +1489,10 @@
CF_t *tres,
const int nc,
const mod_t prime, const uint32_t preinv,
---- msolve-0.9.5/src/neogb/la_ff_16.c.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/src/neogb/la_ff_16.c 2026-03-26 14:39:04.274849389 -0600
-@@ -21,7 +21,7 @@
- #include "data.h"
+--- msolve-0.10.0/src/neogb/la_ff_16.c.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/src/neogb/la_ff_16.c 2026-06-15 09:56:27.597725877 -0600
+@@ -22,7 +22,7 @@
+ #include "../msolve/streams.h"
/* That's also enough if AVX512 is avaialable on the system */
-#if defined HAVE_AVX2
@@ -1500,7 +1500,7 @@
#include <immintrin.h>
#elif defined __aarch64__
#include <arm_neon.h>
-@@ -93,8 +93,12 @@ static inline cf16_t *normalize_sparse_m
+@@ -94,8 +94,12 @@ static inline cf16_t *normalize_sparse_m
return row;
}
@@ -1515,7 +1515,7 @@
mat_t *mat,
const bs_t * const bs,
hm_t * const * const pivs,
-@@ -121,17 +125,150 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -122,17 +126,150 @@ static hm_t *reduce_dense_row_by_known_p
} else {
rba = NULL;
}
@@ -1676,7 +1676,7 @@
uint32_t mone32 = (uint32_t)0xFFFFFFFF;
uint16_t mone16 = (uint16_t)0xFFFF;
uint32_t mone16h = (uint32_t)0xFFFF0000;
-@@ -141,12 +278,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -142,12 +279,6 @@ static hm_t *reduce_dense_row_by_known_p
int64_t res[4] __attribute__((aligned(32)));
__m256i redv, mulv, prodh, prodl, prod, drv, resv;
@@ -1689,7 +1689,7 @@
k = 0;
for (i = dpiv; i < ncols; ++i) {
-@@ -173,7 +304,156 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -174,7 +305,156 @@ static hm_t *reduce_dense_row_by_known_p
}
}
cfs = mcf[dts[COEFFS]];
@@ -1847,7 +1847,7 @@
const uint16_t mul16 = (uint16_t)(fc - dr[i]);
mulv = _mm512_set1_epi16(mul16);
const len_t len = dts[LENGTH];
-@@ -267,125 +547,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -268,125 +548,6 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+26]] = res[6];
dr[ds[j+30]] = res[7];
}
@@ -1973,7 +1973,7 @@
dr[i] = 0;
}
if (k == 0) {
-@@ -411,6 +572,41 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -412,6 +573,41 @@ static hm_t *reduce_dense_row_by_known_p
return row;
}
@@ -2015,10 +2015,10 @@
static hm_t *trace_reduce_dense_row_by_known_pivots_sparse_ff_16(
rba_t *rba,
int64_t *dr,
---- msolve-0.9.5/src/neogb/la_ff_32.c.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/src/neogb/la_ff_32.c 2026-03-26 15:23:31.507859565 -0600
-@@ -21,7 +21,7 @@
- #include "data.h"
+--- msolve-0.10.0/src/neogb/la_ff_32.c.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/src/neogb/la_ff_32.c 2026-06-15 09:56:27.598349800 -0600
+@@ -22,7 +22,7 @@
+ #include "../msolve/streams.h"
/* That's also enough if AVX512 is available on the system */
-#if defined HAVE_AVX2
@@ -2026,7 +2026,7 @@
#include <immintrin.h>
#elif defined __aarch64__
#include <arm_neon.h>
-@@ -302,7 +302,9 @@ static inline cf32_t *multiply_sparse_ma
+@@ -303,7 +303,9 @@ static inline cf32_t *multiply_sparse_ma
return row;
}
@@ -2037,7 +2037,7 @@
int64_t *dr,
mat_t *mat,
const bs_t * const bs,
-@@ -330,17 +332,8 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -331,17 +333,8 @@ static hm_t *reduce_dense_row_by_known_p
} else {
rba = NULL;
}
@@ -2055,7 +2055,7 @@
k = 0;
for (i = dpiv; i < ncols; ++i) {
-@@ -368,7 +361,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -369,7 +362,6 @@ static hm_t *reduce_dense_row_by_known_p
}
}
cfs = mcf[dts[COEFFS]];
@@ -2063,7 +2063,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 16;
const hm_t * const ds = dts + OFFSET;
-@@ -422,7 +414,94 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -423,7 +415,94 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+12]] = res[6];
dr[ds[j+14]] = res[7];
}
@@ -2159,7 +2159,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 8;
const hm_t * const ds = dts + OFFSET;
-@@ -460,7 +539,228 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -461,7 +540,228 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+4]] = res[2];
dr[ds[j+6]] = res[3];
}
@@ -2389,7 +2389,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 16;
const hm_t * const ds = dts + OFFSET;
-@@ -575,6 +875,7 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -576,6 +876,7 @@ static hm_t *reduce_dense_row_by_known_p
return row;
}
@@ -2397,7 +2397,7 @@
static hm_t *trace_reduce_dense_row_by_known_pivots_sparse_17_bit(
rba_t *rba,
-@@ -662,7 +963,9 @@ static hm_t *trace_reduce_dense_row_by_k
+@@ -663,7 +964,9 @@ static hm_t *trace_reduce_dense_row_by_k
return row;
}
@@ -2408,7 +2408,7 @@
int64_t *dr,
bs_t *sat,
const bs_t * const bs,
-@@ -681,12 +984,10 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -682,12 +985,10 @@ static hm_t *reduce_dense_row_by_known_p
int64_t np = -1;
const int64_t mod = (int64_t)st->fc;
const int64_t mod2 = (int64_t)st->fc * st->fc;
@@ -2421,7 +2421,7 @@
for (i = dpiv; i < end; ++i) {
if (dr[i] != 0) {
-@@ -706,7 +1007,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -707,7 +1008,6 @@ static hm_t *reduce_dense_row_by_known_p
const int64_t mul = (int64_t)dr[i];
dts = pivs[i];
cfs = bs->cf_32[dts[COEFFS]];
@@ -2429,7 +2429,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 8;
const hm_t * const ds = dts + OFFSET;
-@@ -749,7 +1049,205 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -750,7 +1050,205 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+4]] = res[2];
dr[ds[j+6]] = res[3];
}
@@ -2635,7 +2635,7 @@
const len_t os = dts[PRELOOP];
const len_t len = dts[LENGTH];
const hm_t * const ds = dts + OFFSET;
-@@ -767,7 +1265,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -768,7 +1266,6 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+2]] += (dr[ds[j+2]] >> 63) & mod2;
dr[ds[j+3]] += (dr[ds[j+3]] >> 63) & mod2;
}
@@ -2643,7 +2643,7 @@
dr[i] = 0;
st->application_nr_mult += len / 1000.0;
st->application_nr_add += len / 1000.0;
-@@ -804,8 +1301,11 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -805,8 +1302,11 @@ static hm_t *reduce_dense_row_by_known_p
return row;
}
@@ -2656,7 +2656,7 @@
int64_t *dr,
smat_t *smat,
hm_t *const *pivs,
-@@ -823,12 +1323,10 @@ static hm_t *sba_reduce_dense_row_by_kno
+@@ -824,12 +1324,10 @@ static hm_t *sba_reduce_dense_row_by_kno
const int64_t mod = (int64_t)st->fc;
const int64_t mod2 = (int64_t)st->fc * st->fc;
const len_t nc = smat->nc;
@@ -2669,7 +2669,7 @@
k = 0;
for (i = dpiv; i < nc; ++i) {
-@@ -860,7 +1358,6 @@ static hm_t *sba_reduce_dense_row_by_kno
+@@ -861,7 +1359,6 @@ static hm_t *sba_reduce_dense_row_by_kno
dts = pivs[i];
cfs = smat->cc32[dts[SM_CFS]];
@@ -2677,7 +2677,7 @@
const len_t len = dts[SM_LEN];
const len_t os = len % 8;
const hm_t * const ds = dts + SM_OFFSET;
-@@ -903,7 +1400,227 @@ static hm_t *sba_reduce_dense_row_by_kno
+@@ -904,7 +1401,227 @@ static hm_t *sba_reduce_dense_row_by_kno
dr[ds[j+4]] = res[2];
dr[ds[j+6]] = res[3];
}
@@ -2905,7 +2905,7 @@
const len_t os = dts[SM_PRE];
const len_t len = dts[SM_LEN];
const hm_t * const ds = dts + SM_OFFSET;
-@@ -921,7 +1638,6 @@ static hm_t *sba_reduce_dense_row_by_kno
+@@ -922,7 +1639,6 @@ static hm_t *sba_reduce_dense_row_by_kno
dr[ds[j+2]] += (dr[ds[j+2]] >> 63) & mod2;
dr[ds[j+3]] += (dr[ds[j+3]] >> 63) & mod2;
}
@@ -2913,7 +2913,7 @@
dr[i] = 0;
st->application_nr_mult += len / 1000.0;
st->application_nr_add += len / 1000.0;
-@@ -960,8 +1676,11 @@ static hm_t *sba_reduce_dense_row_by_kno
+@@ -961,8 +1677,11 @@ static hm_t *sba_reduce_dense_row_by_kno
return smat->cr[ri];
}
@@ -2926,7 +2926,7 @@
int64_t *dr,
mat_t *mat,
const bs_t * const bs,
-@@ -990,23 +1709,11 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -991,23 +1710,11 @@ static hm_t *reduce_dense_row_by_known_p
} else {
rba = NULL;
}
@@ -2950,7 +2950,7 @@
k = 0;
for (i = dpiv; i < ncols; ++i) {
-@@ -1035,7 +1742,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1036,7 +1743,6 @@ static hm_t *reduce_dense_row_by_known_p
}
}
cfs = mcf[dts[COEFFS]];
@@ -2958,7 +2958,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 16;
const hm_t * const ds = dts + OFFSET;
-@@ -1094,7 +1800,99 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1095,7 +1801,99 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+12]] = res[6];
dr[ds[j+14]] = res[7];
}
@@ -3059,7 +3059,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 8;
const hm_t * const ds = dts + OFFSET;
-@@ -1137,7 +1935,240 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1138,7 +1936,240 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+4]] = res[2];
dr[ds[j+6]] = res[3];
}
@@ -3301,7 +3301,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 8;
const hm_t * const ds = dts + OFFSET;
-@@ -1239,9 +2270,11 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1240,9 +2271,11 @@ static hm_t *reduce_dense_row_by_known_p
return row;
}
@@ -3315,7 +3315,7 @@
int64_t *dr,
int64_t *drm,
cf32_t **pivcf,
-@@ -1262,12 +2295,10 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1263,12 +2296,10 @@ static hm_t *reduce_dense_row_by_known_p
int64_t np = -1;
const int64_t mod = (int64_t)st->fc;
const int64_t mod2 = (int64_t)st->fc * st->fc;
@@ -3328,7 +3328,7 @@
k = 0;
for (i = dpiv; i < ncols; ++i) {
-@@ -1291,7 +2322,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1292,7 +2323,6 @@ static hm_t *reduce_dense_row_by_known_p
dtsm = mulh[dts[MULT]];
cfsm = mulcf[dtsm[COEFFS]];
cfs = pivcf[dts[COEFFS]];
@@ -3336,7 +3336,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 8;
const hm_t * const ds = dts + OFFSET;
-@@ -1376,7 +2406,290 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1377,7 +2407,290 @@ static hm_t *reduce_dense_row_by_known_p
drm[dsm[j+4]] = res[2];
drm[dsm[j+6]] = res[3];
}
@@ -3627,7 +3627,7 @@
const len_t os = dts[PRELOOP];
const len_t len = dts[LENGTH];
const hm_t * const ds = dts + OFFSET;
-@@ -1411,7 +2724,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1412,7 +2725,6 @@ static hm_t *reduce_dense_row_by_known_p
drm[dsm[j+2]] += (drm[dsm[j+2]] >> 63) & mod2;
drm[dsm[j+3]] += (drm[dsm[j+3]] >> 63) & mod2;
}
@@ -3635,7 +3635,7 @@
dr[i] = 0;
st->application_nr_mult += len / 1000.0;
st->application_nr_add += len / 1000.0;
-@@ -1474,8 +2786,11 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -1475,8 +2787,11 @@ static hm_t *reduce_dense_row_by_known_p
return row;
}
@@ -3648,7 +3648,7 @@
rba_t *rba,
int64_t *dr,
mat_t *mat,
-@@ -1497,12 +2812,10 @@ static hm_t *trace_reduce_dense_row_by_k
+@@ -1498,12 +2813,10 @@ static hm_t *trace_reduce_dense_row_by_k
const len_t ncols = mat->nc;
const len_t ncl = mat->ncl;
cf32_t * const * const mcf = mat->cf_32;
@@ -3661,7 +3661,7 @@
k = 0;
for (i = dpiv; i < ncols; ++i) {
-@@ -1531,7 +2844,6 @@ static hm_t *trace_reduce_dense_row_by_k
+@@ -1532,7 +2845,6 @@ static hm_t *trace_reduce_dense_row_by_k
cfs = mcf[dts[COEFFS]];
}
@@ -3669,7 +3669,7 @@
const len_t len = dts[LENGTH];
const len_t os = len % 8;
const hm_t * const ds = dts + OFFSET;
-@@ -1574,7 +2886,217 @@ static hm_t *trace_reduce_dense_row_by_k
+@@ -1575,7 +2887,217 @@ static hm_t *trace_reduce_dense_row_by_k
dr[ds[j+4]] = res[2];
dr[ds[j+6]] = res[3];
}
@@ -3887,7 +3887,7 @@
const len_t os = dts[PRELOOP];
const len_t len = dts[LENGTH];
const hm_t * const ds = dts + OFFSET;
-@@ -1592,7 +3114,6 @@ static hm_t *trace_reduce_dense_row_by_k
+@@ -1593,7 +3115,6 @@ static hm_t *trace_reduce_dense_row_by_k
dr[ds[j+2]] += (dr[ds[j+2]] >> 63) & mod2;
dr[ds[j+3]] += (dr[ds[j+3]] >> 63) & mod2;
}
@@ -3895,7 +3895,7 @@
dr[i] = 0;
st->trace_nr_mult += len / 1000.0;
st->trace_nr_add += len / 1000.0;
-@@ -1623,6 +3144,7 @@ static hm_t *trace_reduce_dense_row_by_k
+@@ -1624,6 +3145,7 @@ static hm_t *trace_reduce_dense_row_by_k
return row;
}
@@ -3903,10 +3903,10 @@
/* unused at the moment */
#if 0
---- msolve-0.9.5/src/neogb/la_ff_8.c.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/src/neogb/la_ff_8.c 2026-03-26 15:10:26.788109919 -0600
-@@ -21,7 +21,7 @@
- #include "data.h"
+--- msolve-0.10.0/src/neogb/la_ff_8.c.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/src/neogb/la_ff_8.c 2026-06-15 09:56:27.599324927 -0600
+@@ -22,7 +22,7 @@
+ #include "../msolve/streams.h"
/* That's also enough if AVX512 is avaialable on the system */
-#if defined HAVE_AVX2
@@ -3914,7 +3914,7 @@
#include <immintrin.h>
#elif defined __aarch64__
#include <arm_neon.h>
-@@ -93,7 +93,191 @@ static inline cf8_t *normalize_sparse_ma
+@@ -94,7 +94,191 @@ static inline cf8_t *normalize_sparse_ma
return row;
}
@@ -4107,7 +4107,7 @@
int64_t *dr,
mat_t *mat,
const bs_t * const bs,
-@@ -121,7 +305,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -122,7 +306,6 @@ static hm_t *reduce_dense_row_by_known_p
} else {
rba = NULL;
}
@@ -4115,7 +4115,7 @@
__m512i mask1 = _mm512_set1_epi64(0x000000000000FFFF);
__m512i mask2 = _mm512_set1_epi64(0x00000000FFFF0000);
__m512i mask3 = _mm512_set1_epi64(0x0000FFFF00000000);
-@@ -129,21 +312,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -130,21 +313,6 @@ static hm_t *reduce_dense_row_by_known_p
__m512i mask8 = _mm512_set1_epi16(0x00FF);
int64_t res[8] __attribute__((aligned(64)));
__m512i redv, mulv, prod, drv, resv;
@@ -4137,7 +4137,7 @@
k = 0;
for (i = dpiv; i < ncols; ++i) {
-@@ -170,7 +338,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -171,7 +339,6 @@ static hm_t *reduce_dense_row_by_known_p
}
}
cfs = mcf[dts[COEFFS]];
@@ -4145,7 +4145,7 @@
const uint16_t mul8 = (uint16_t)(fc - dr[i]);
mulv = _mm512_set1_epi16(mul8);
const len_t len = dts[LENGTH];
-@@ -338,7 +505,95 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -339,7 +506,95 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+55]] = res[6];
dr[ds[j+63]] = res[7];
}
@@ -4242,7 +4242,7 @@
const uint16_t mul8 = (uint16_t)(fc - dr[i]);
mulv = _mm256_set1_epi16(mul8);
const len_t len = dts[LENGTH];
-@@ -442,96 +697,6 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -443,96 +698,6 @@ static hm_t *reduce_dense_row_by_known_p
dr[ds[j+23]] = res[2];
dr[ds[j+31]] = res[3];
}
@@ -4339,7 +4339,7 @@
dr[i] = 0;
}
if (k == 0) {
-@@ -559,6 +724,41 @@ static hm_t *reduce_dense_row_by_known_p
+@@ -560,6 +725,41 @@ static hm_t *reduce_dense_row_by_known_p
return row;
}
@@ -4381,16 +4381,16 @@
static hm_t *trace_reduce_dense_row_by_known_pivots_sparse_ff_8(
rba_t *rba,
int64_t *dr,
---- msolve-0.9.5/src/neogb/symbol.c.orig 2026-03-26 04:43:23.000000000 -0600
-+++ msolve-0.9.5/src/neogb/symbol.c 2026-03-26 15:10:42.268463065 -0600
-@@ -21,10 +21,6 @@
+--- msolve-0.10.0/src/neogb/symbol.c.orig 2026-06-15 04:27:18.000000000 -0600
++++ msolve-0.10.0/src/neogb/symbol.c 2026-06-15 09:56:27.599685820 -0600
+@@ -23,10 +23,6 @@
- #include "data.h"
+ #include "../msolve/streams.h"
-#ifdef HAVE_AVX2
-#include <immintrin.h>
-#endif
-
/* select_all_pairs() is unused at the moment */
- #if 0
+ #if 0
static void select_all_spairs(
diff --git a/msolve.spec b/msolve.spec
index d583189..bdda0f2 100644
--- a/msolve.spec
+++ b/msolve.spec
@@ -1,7 +1,7 @@
%global giturl https://github.com/algebraic-solving/msolve
Name: msolve
-Version: 0.9.5
+Version: 0.10.0
Release: %autorelease
Summary: Polynomial System Solving through Algebraic Methods
diff --git a/sources b/sources
index 8f686c2..10ad202 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (msolve-0.9.5.tar.gz) = e45fda8b8d7bcb4e443b5268875ddd5a9a88a65bf04b563d66b512500dec6508ad27c4ebfcba8a73868d20e92213d49dc8ac54cf3f00a326a3328901eb15c9b7
+SHA512 (msolve-0.10.0.tar.gz) = d51e63aa411a6d532812b725d39d546b58e0198aaf5e5ccf7796d616438edd280c340db735c5330bbc8aa2acdfe354f34c64ac7663f1c0014cf1f483e09aab35
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-06-15 16:49 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-15 16:49 [rpms/msolve] f43: Version 0.10.0 Jerry James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox