public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/msolve] f44: Version 0.10.0
@ 2026-06-15 16:40 Jerry James
  0 siblings, 0 replies; only message in thread
From: Jerry James @ 2026-06-15 16:40 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/msolve
Branch : f44
Commit : 46a6f55585d63abad3d18afc584b95013f5da4dc
Author : Jerry James <loganjerry@gmail.com>
Date   : 2026-06-15T10:39:42-06:00
Stats  : +87/-87 in 3 file(s)
URL    : https://src.fedoraproject.org/rpms/msolve/c/46a6f55585d63abad3d18afc584b95013f5da4dc?branch=f44

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 053f388..8056877 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:40 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:40 [rpms/msolve] f44: 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