aboutsummaryrefslogtreecommitdiff
path: root/src/Specific
diff options
context:
space:
mode:
Diffstat (limited to 'src/Specific')
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e127m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e129m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e130m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e137m13.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e140m27.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e141m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e150m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e150m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e152m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e158m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e165m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e166m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e171m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e174m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e174m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e189m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e190m11.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e191m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e192m2e64m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e194m33.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e196m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e198m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e206m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e212m29.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e213m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e216m2e108m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e221m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e222m117.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e224m2e96p1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e226m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e230m27.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e235m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e243m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e251m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e255m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e255m2e4m2e1m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e255m765.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m189.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m2e32m977.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e266m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e285m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e291m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e321m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e322m2e161m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e336m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e336m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e338m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e369m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e379m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e382m105.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e383m187.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e383m31.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e383m421.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m317.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e389m21.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e401m31.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e413m21.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e414m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e416m2e208m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e444m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e448m2e224m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e450m2e225m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e452m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e468m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e480m2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e488m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e489m21.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e495m31.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e511m187.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e511m481.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e512m569.json4
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e521m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e127m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e129m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e130m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e137m13.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e140m27.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e141m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e150m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e150m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e152m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e158m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e165m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e166m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e171m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e174m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e174m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e189m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e190m11.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e191m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e192m2e64m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e194m33.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e196m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e198m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e206m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e212m29.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e213m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e216m2e108m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e221m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e222m117.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e224m2e96p1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e226m5.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e230m27.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e235m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e243m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e251m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e255m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e255m2e4m2e1m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e255m765.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m189.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m2e32m977.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e266m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e285m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e291m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e321m9.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e322m2e161m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e336m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e336m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e338m15.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e369m25.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e379m19.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e382m105.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e383m187.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e383m31.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e383m421.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m317.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e389m21.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e401m31.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e413m21.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e414m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e416m2e208m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e444m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e448m2e224m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e450m2e225m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e452m3.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e468m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e480m2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e488m17.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e489m21.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e495m31.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e511m187.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e511m481.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e512m569.json4
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e521m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e127m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e129m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e130m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e137m13.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e140m27.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e141m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e150m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e150m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e152m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e158m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e165m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e166m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e171m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e174m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e174m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e189m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e190m11.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e191m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e192m2e64m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e194m33.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e196m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e198m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e205m45x2e198m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e206m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e212m29.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e213m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e216m2e108m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e221m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e222m117.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e224m2e96p1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e226m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e230m27.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e235m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e243m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e251m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e254m127x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m2e4m2e1m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m765.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m189.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m2e32m977.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m88x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e266m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e285m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e291m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e321m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e322m2e161m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e336m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e336m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e338m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e369m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e379m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e382m105.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m317.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m5x2e368m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m79x2e376m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e401m31.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e414m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e416m2e208m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e444m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e448m2e224m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e450m2e225m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e452m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e468m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e480m2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e488m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e489m21.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e495m31.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e510m290x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e511m187.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e511m481.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e512m491x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e512m569.json4
-rw-r--r--src/Specific/CurveParameters/solinas32_2e521m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e127m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e129m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e130m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e137m13.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e140m27.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e141m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e150m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e150m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e152m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e158m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e165m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e166m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e171m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e174m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e174m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e189m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e190m11.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e191m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e192m2e64m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e194m33.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e196m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e198m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e205m45x2e198m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e206m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e212m29.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e213m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e216m2e108m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e221m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e222m117.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e224m2e96p1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e226m5.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e230m27.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e235m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e243m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e251m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e254m127x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m2e4m2e1m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m765.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m189.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m2e32m977.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m88x2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e266m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e285m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e291m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e321m9.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e322m2e161m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e336m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e336m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e338m15.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e369m25.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e379m19.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e382m105.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m317.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m5x2e368m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m79x2e376m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e401m31.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e413m21.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e414m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e416m2e208m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e444m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e448m2e224m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e450m2e225m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e452m3.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e468m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e480m2e240m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e488m17.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e489m21.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e495m31.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e510m290x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e511m187.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e511m481.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e512m491x2e496m1.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e512m569.json4
-rw-r--r--src/Specific/CurveParameters/solinas64_2e521m1.json4
-rwxr-xr-xsrc/Specific/montgomery32_2e127m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e127m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e129m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e129m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e130m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e130m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e137m13/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e137m13/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e140m27/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e140m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e141m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e141m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e150m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e150m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e150m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e150m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e152m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e152m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e158m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e158m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e165m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e165m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e166m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e166m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e171m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e171m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e174m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e174m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e174m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e174m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e189m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e189m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e190m11/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e190m11/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e191m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e191m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e192m2e64m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e192m2e64m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e194m33/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e194m33/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e196m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e196m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e198m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e198m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e205m45x2e198m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e205m45x2e198m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e206m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e206m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e212m29/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e212m29/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e213m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e213m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e216m2e108m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e216m2e108m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e221m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e221m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e222m117/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e222m117/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e224m2e96p1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e224m2e96p1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e226m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e226m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e230m27/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e230m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e235m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e235m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e243m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e243m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e251m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e251m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e254m127x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e254m127x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e255m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e255m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e255m2e4m2e1m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e255m2e4m2e1m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e255m765/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e255m765/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m189/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m189/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e32m977/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e32m977/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m88x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e256m88x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e266m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e266m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e285m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e285m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e291m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e291m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e321m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e321m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e322m2e161m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e322m2e161m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e336m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e336m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e336m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e336m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e338m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e338m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e369m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e369m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e379m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e379m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e382m105/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e382m105/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e383m187/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e383m187/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e383m31/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e383m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e383m421/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e383m421/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m317/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m317/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m5x2e368m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m5x2e368m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m79x2e376m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e384m79x2e376m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e389m21/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e389m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e401m31/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e401m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e413m21/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e413m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e414m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e414m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e416m2e208m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e416m2e208m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e444m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e444m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e448m2e224m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e448m2e224m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e450m2e225m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e450m2e225m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e452m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e452m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e468m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e468m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e480m2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e480m2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e488m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e488m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e489m21/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e489m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e495m31/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e495m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e510m290x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e510m290x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e511m187/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e511m187/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e511m481/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e511m481/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e512m491x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e512m491x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e512m569/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e512m569/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e521m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery32_2e521m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e127m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e127m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e129m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e129m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e130m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e130m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e137m13/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e137m13/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e140m27/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e140m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e141m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e141m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e150m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e150m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e150m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e150m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e152m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e152m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e158m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e158m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e165m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e165m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e166m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e166m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e171m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e171m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e174m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e174m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e174m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e174m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e189m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e189m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e190m11/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e190m11/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e191m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e191m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e192m2e64m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e192m2e64m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e194m33/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e194m33/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e196m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e196m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e198m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e198m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e205m45x2e198m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e205m45x2e198m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e206m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e206m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e212m29/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e212m29/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e213m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e213m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e216m2e108m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e216m2e108m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e221m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e221m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e222m117/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e222m117/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e224m2e96p1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e224m2e96p1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e226m5/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e226m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e230m27/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e230m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e235m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e235m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e243m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e243m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e251m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e251m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e254m127x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e254m127x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e255m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e255m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e255m2e4m2e1m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e255m2e4m2e1m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e255m765/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e255m765/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m189/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m189/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e32m977/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e32m977/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m88x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e256m88x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e266m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e266m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e285m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e285m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e291m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e291m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e321m9/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e321m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e322m2e161m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e322m2e161m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e336m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e336m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e336m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e336m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e338m15/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e338m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e369m25/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e369m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e379m19/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e379m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e382m105/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e382m105/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e383m187/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e383m187/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e383m31/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e383m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e383m421/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e383m421/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m317/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m317/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m5x2e368m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m5x2e368m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m79x2e376m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e384m79x2e376m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e389m21/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e389m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e401m31/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e401m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e413m21/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e413m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e414m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e414m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e416m2e208m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e416m2e208m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e444m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e444m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e448m2e224m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e448m2e224m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e450m2e225m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e450m2e225m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e452m3/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e452m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e468m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e468m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e480m2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e480m2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e488m17/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e488m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e489m21/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e489m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e495m31/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e495m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e510m290x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e510m290x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e511m187/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e511m187/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e511m481/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e511m481/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e512m491x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e512m491x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e512m569/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e512m569/compilerxx.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e521m1/compiler.sh2
-rwxr-xr-xsrc/Specific/montgomery64_2e521m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e127m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e127m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e129m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e129m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e130m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e130m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e137m13/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e137m13/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e140m27/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e140m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e141m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e141m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e150m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e150m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e150m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e150m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e152m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e152m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e158m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e158m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e165m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e165m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e166m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e166m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e171m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e171m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e174m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e174m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e174m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e174m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e189m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e189m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e190m11/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e190m11/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e191m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e191m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e194m33/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e194m33/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e196m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e196m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e198m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e198m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e205m45x2e198m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e205m45x2e198m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e206m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e206m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e212m29/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e212m29/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e213m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e213m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e221m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e221m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e222m117/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e222m117/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e226m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e226m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e230m27/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e230m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e235m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e235m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e243m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e243m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e251m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e251m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e254m127x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e254m127x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e255m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e255m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e255m2e4m2e1m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e255m2e4m2e1m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e255m765/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e255m765/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m189/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m189/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m88x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e256m88x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e266m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e266m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e285m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e285m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e291m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e291m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e321m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e321m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e336m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e336m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e336m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e336m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e338m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e338m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e369m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e369m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e379m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e379m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e382m105/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e382m105/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m317/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m317/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m5x2e368m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m5x2e368m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m79x2e376m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e384m79x2e376m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e401m31/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e401m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e414m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e414m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e444m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e444m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e452m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e452m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e468m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e468m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e488m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e488m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e489m21/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e489m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e495m31/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e495m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e510m290x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e510m290x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e511m187/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e511m187/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e511m481/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e511m481/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e512m491x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e512m491x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e512m569/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e512m569/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e521m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas32_2e521m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e127m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e127m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e129m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e129m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e130m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e130m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e137m13/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e137m13/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e140m27/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e140m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e141m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e141m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e150m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e150m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e150m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e150m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e152m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e152m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e158m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e158m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e165m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e165m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e166m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e166m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e171m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e171m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e174m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e174m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e174m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e174m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e189m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e189m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e190m11/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e190m11/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e191m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e191m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e194m33/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e194m33/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e196m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e196m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e198m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e198m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e205m45x2e198m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e205m45x2e198m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e206m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e206m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e212m29/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e212m29/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e213m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e213m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e221m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e221m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e222m117/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e222m117/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e226m5/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e226m5/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e230m27/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e230m27/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e235m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e235m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e243m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e243m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e251m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e251m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e254m127x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e254m127x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e255m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e255m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e255m2e4m2e1m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e255m2e4m2e1m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e255m765/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e255m765/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m189/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m189/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m88x2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e256m88x2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e266m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e266m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e285m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e285m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e291m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e291m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e321m9/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e321m9/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e336m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e336m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e336m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e336m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e338m15/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e338m15/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e369m25/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e369m25/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e379m19/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e379m19/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e382m105/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e382m105/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m317/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m317/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m5x2e368m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m5x2e368m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m79x2e376m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e384m79x2e376m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e401m31/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e401m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e413m21/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e413m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e414m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e414m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e444m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e444m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e452m3/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e452m3/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e468m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e468m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e488m17/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e488m17/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e489m21/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e489m21/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e495m31/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e495m31/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e510m290x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e510m290x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e511m187/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e511m187/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e511m481/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e511m481/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e512m491x2e496m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e512m491x2e496m1/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e512m569/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e512m569/compilerxx.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e521m1/compiler.sh2
-rwxr-xr-xsrc/Specific/solinas64_2e521m1/compilerxx.sh2
945 files changed, 1260 insertions, 1260 deletions
diff --git a/src/Specific/CurveParameters/montgomery32_2e127m1.json b/src/Specific/CurveParameters/montgomery32_2e127m1.json
index 92c5defd7..c1565be50 100644
--- a/src/Specific/CurveParameters/montgomery32_2e127m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e127m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^127 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e129m25.json b/src/Specific/CurveParameters/montgomery32_2e129m25.json
index 9090d7aee..36aecc73d 100644
--- a/src/Specific/CurveParameters/montgomery32_2e129m25.json
+++ b/src/Specific/CurveParameters/montgomery32_2e129m25.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^129 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e130m5.json b/src/Specific/CurveParameters/montgomery32_2e130m5.json
index 4ba13555d..209c2cd44 100644
--- a/src/Specific/CurveParameters/montgomery32_2e130m5.json
+++ b/src/Specific/CurveParameters/montgomery32_2e130m5.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^130 - 5 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e137m13.json b/src/Specific/CurveParameters/montgomery32_2e137m13.json
index 64b266630..2f41d7cfe 100644
--- a/src/Specific/CurveParameters/montgomery32_2e137m13.json
+++ b/src/Specific/CurveParameters/montgomery32_2e137m13.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
"modulus": "2^137 - 13",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e140m27.json b/src/Specific/CurveParameters/montgomery32_2e140m27.json
index 860fa94a8..816f283bd 100644
--- a/src/Specific/CurveParameters/montgomery32_2e140m27.json
+++ b/src/Specific/CurveParameters/montgomery32_2e140m27.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^140 - 27",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e141m9.json b/src/Specific/CurveParameters/montgomery32_2e141m9.json
index b653ca5f7..37195642d 100644
--- a/src/Specific/CurveParameters/montgomery32_2e141m9.json
+++ b/src/Specific/CurveParameters/montgomery32_2e141m9.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^141 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e150m3.json b/src/Specific/CurveParameters/montgomery32_2e150m3.json
index 5f74be67b..f90b5565a 100644
--- a/src/Specific/CurveParameters/montgomery32_2e150m3.json
+++ b/src/Specific/CurveParameters/montgomery32_2e150m3.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^150 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e150m5.json b/src/Specific/CurveParameters/montgomery32_2e150m5.json
index 1bc7e09a6..c21b5b6d9 100644
--- a/src/Specific/CurveParameters/montgomery32_2e150m5.json
+++ b/src/Specific/CurveParameters/montgomery32_2e150m5.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^150 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e152m17.json b/src/Specific/CurveParameters/montgomery32_2e152m17.json
index 237045401..4454ee270 100644
--- a/src/Specific/CurveParameters/montgomery32_2e152m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e152m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^152 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e158m15.json b/src/Specific/CurveParameters/montgomery32_2e158m15.json
index bbc2e3c51..e529acc34 100644
--- a/src/Specific/CurveParameters/montgomery32_2e158m15.json
+++ b/src/Specific/CurveParameters/montgomery32_2e158m15.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^158 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e165m25.json b/src/Specific/CurveParameters/montgomery32_2e165m25.json
index 3f23ecb48..bcae1b7e4 100644
--- a/src/Specific/CurveParameters/montgomery32_2e165m25.json
+++ b/src/Specific/CurveParameters/montgomery32_2e165m25.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^165 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e166m5.json b/src/Specific/CurveParameters/montgomery32_2e166m5.json
index 9928c32bf..94ad1d04b 100644
--- a/src/Specific/CurveParameters/montgomery32_2e166m5.json
+++ b/src/Specific/CurveParameters/montgomery32_2e166m5.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^166 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e171m19.json b/src/Specific/CurveParameters/montgomery32_2e171m19.json
index 56299683f..ac0055159 100644
--- a/src/Specific/CurveParameters/montgomery32_2e171m19.json
+++ b/src/Specific/CurveParameters/montgomery32_2e171m19.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^171 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e174m17.json b/src/Specific/CurveParameters/montgomery32_2e174m17.json
index 9b9586b5f..a0cf4213a 100644
--- a/src/Specific/CurveParameters/montgomery32_2e174m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e174m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^174 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e174m3.json b/src/Specific/CurveParameters/montgomery32_2e174m3.json
index 3be5a45ea..eb4de1335 100644
--- a/src/Specific/CurveParameters/montgomery32_2e174m3.json
+++ b/src/Specific/CurveParameters/montgomery32_2e174m3.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^174 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e189m25.json b/src/Specific/CurveParameters/montgomery32_2e189m25.json
index ca2c4809a..80a5c3738 100644
--- a/src/Specific/CurveParameters/montgomery32_2e189m25.json
+++ b/src/Specific/CurveParameters/montgomery32_2e189m25.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^189 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e190m11.json b/src/Specific/CurveParameters/montgomery32_2e190m11.json
index def54e928..9329de0e2 100644
--- a/src/Specific/CurveParameters/montgomery32_2e190m11.json
+++ b/src/Specific/CurveParameters/montgomery32_2e190m11.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
"modulus": "2^190 - 11",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e191m19.json b/src/Specific/CurveParameters/montgomery32_2e191m19.json
index a1af295e9..19ea3f8dc 100644
--- a/src/Specific/CurveParameters/montgomery32_2e191m19.json
+++ b/src/Specific/CurveParameters/montgomery32_2e191m19.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^191 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e192m2e64m1.json b/src/Specific/CurveParameters/montgomery32_2e192m2e64m1.json
index 80a0e120a..e5b639632 100644
--- a/src/Specific/CurveParameters/montgomery32_2e192m2e64m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e192m2e64m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^192 - 2^64 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e194m33.json b/src/Specific/CurveParameters/montgomery32_2e194m33.json
index 8fe050e35..fd1f69686 100644
--- a/src/Specific/CurveParameters/montgomery32_2e194m33.json
+++ b/src/Specific/CurveParameters/montgomery32_2e194m33.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
"modulus": "2^194 - 33",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e196m15.json b/src/Specific/CurveParameters/montgomery32_2e196m15.json
index 9cbeab785..f61d17cd4 100644
--- a/src/Specific/CurveParameters/montgomery32_2e196m15.json
+++ b/src/Specific/CurveParameters/montgomery32_2e196m15.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^196 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e198m17.json b/src/Specific/CurveParameters/montgomery32_2e198m17.json
index cd4d00576..4f1cd2d0f 100644
--- a/src/Specific/CurveParameters/montgomery32_2e198m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e198m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^198 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1.json b/src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1.json
index 59b93ed02..2b6f758c1 100644
--- a/src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^205 - 45*2^198 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e206m5.json b/src/Specific/CurveParameters/montgomery32_2e206m5.json
index c65d9a660..5fd913521 100644
--- a/src/Specific/CurveParameters/montgomery32_2e206m5.json
+++ b/src/Specific/CurveParameters/montgomery32_2e206m5.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^206 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e212m29.json b/src/Specific/CurveParameters/montgomery32_2e212m29.json
index 009fe1559..cb051b366 100644
--- a/src/Specific/CurveParameters/montgomery32_2e212m29.json
+++ b/src/Specific/CurveParameters/montgomery32_2e212m29.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
"modulus": "2^212 - 29",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e213m3.json b/src/Specific/CurveParameters/montgomery32_2e213m3.json
index 768feb7ce..d7e41b237 100644
--- a/src/Specific/CurveParameters/montgomery32_2e213m3.json
+++ b/src/Specific/CurveParameters/montgomery32_2e213m3.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^213 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e216m2e108m1.json b/src/Specific/CurveParameters/montgomery32_2e216m2e108m1.json
index c7a3a6641..031e312b9 100644
--- a/src/Specific/CurveParameters/montgomery32_2e216m2e108m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e216m2e108m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^216 - 2^108 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e221m3.json b/src/Specific/CurveParameters/montgomery32_2e221m3.json
index 5d19554ab..4f7ee69f9 100644
--- a/src/Specific/CurveParameters/montgomery32_2e221m3.json
+++ b/src/Specific/CurveParameters/montgomery32_2e221m3.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^221 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e222m117.json b/src/Specific/CurveParameters/montgomery32_2e222m117.json
index c3c52054f..da8a108ed 100644
--- a/src/Specific/CurveParameters/montgomery32_2e222m117.json
+++ b/src/Specific/CurveParameters/montgomery32_2e222m117.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
"modulus": "2^222 - 117",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e224m2e96p1.json b/src/Specific/CurveParameters/montgomery32_2e224m2e96p1.json
index b387d7c78..ddae350da 100644
--- a/src/Specific/CurveParameters/montgomery32_2e224m2e96p1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e224m2e96p1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
"modulus": "2^224 - 2^96 + 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e226m5.json b/src/Specific/CurveParameters/montgomery32_2e226m5.json
index b18f7630a..ba5932aaf 100644
--- a/src/Specific/CurveParameters/montgomery32_2e226m5.json
+++ b/src/Specific/CurveParameters/montgomery32_2e226m5.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^226 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e230m27.json b/src/Specific/CurveParameters/montgomery32_2e230m27.json
index d1b2bbbf2..88ba0b10d 100644
--- a/src/Specific/CurveParameters/montgomery32_2e230m27.json
+++ b/src/Specific/CurveParameters/montgomery32_2e230m27.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^230 - 27",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e235m15.json b/src/Specific/CurveParameters/montgomery32_2e235m15.json
index 65c6e359f..65d4b0bb9 100644
--- a/src/Specific/CurveParameters/montgomery32_2e235m15.json
+++ b/src/Specific/CurveParameters/montgomery32_2e235m15.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^235 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e243m9.json b/src/Specific/CurveParameters/montgomery32_2e243m9.json
index c0121ad9c..455f54740 100644
--- a/src/Specific/CurveParameters/montgomery32_2e243m9.json
+++ b/src/Specific/CurveParameters/montgomery32_2e243m9.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^243 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e251m9.json b/src/Specific/CurveParameters/montgomery32_2e251m9.json
index faaecde79..2c1993cab 100644
--- a/src/Specific/CurveParameters/montgomery32_2e251m9.json
+++ b/src/Specific/CurveParameters/montgomery32_2e251m9.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^251 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1.json b/src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1.json
index 5fde9e4e8..aa7523eaa 100644
--- a/src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^254 - 127*2^240 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e255m19.json b/src/Specific/CurveParameters/montgomery32_2e255m19.json
index 95e01ae2c..4389ebc69 100644
--- a/src/Specific/CurveParameters/montgomery32_2e255m19.json
+++ b/src/Specific/CurveParameters/montgomery32_2e255m19.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 19 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e255m2e4m2e1m1.json b/src/Specific/CurveParameters/montgomery32_2e255m2e4m2e1m1.json
index 9d9f011e3..b11e80da3 100644
--- a/src/Specific/CurveParameters/montgomery32_2e255m2e4m2e1m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e255m2e4m2e1m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 2^4 - 2^1 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e255m765.json b/src/Specific/CurveParameters/montgomery32_2e255m765.json
index 421f3b71e..9df1c7bfb 100644
--- a/src/Specific/CurveParameters/montgomery32_2e255m765.json
+++ b/src/Specific/CurveParameters/montgomery32_2e255m765.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
"modulus": "2^255 - 765",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m189.json b/src/Specific/CurveParameters/montgomery32_2e256m189.json
index 178c17703..1d8e4acc1 100644
--- a/src/Specific/CurveParameters/montgomery32_2e256m189.json
+++ b/src/Specific/CurveParameters/montgomery32_2e256m189.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
"modulus": "2^256 - 189",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1.json b/src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1.json
index 3760ef4fd..24471b66c 100644
--- a/src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m2e32m977.json b/src/Specific/CurveParameters/montgomery32_2e256m2e32m977.json
index b0ecde786..828c6d803 100644
--- a/src/Specific/CurveParameters/montgomery32_2e256m2e32m977.json
+++ b/src/Specific/CurveParameters/montgomery32_2e256m2e32m977.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
"modulus": "2^256 - 2^32 - 977 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1.json b/src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1.json
index 0cf10d76b..77f29cb46 100644
--- a/src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 88*2^240 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e266m3.json b/src/Specific/CurveParameters/montgomery32_2e266m3.json
index a7e93c011..5096455f5 100644
--- a/src/Specific/CurveParameters/montgomery32_2e266m3.json
+++ b/src/Specific/CurveParameters/montgomery32_2e266m3.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^266 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e285m9.json b/src/Specific/CurveParameters/montgomery32_2e285m9.json
index 1cf652c35..9619d8bff 100644
--- a/src/Specific/CurveParameters/montgomery32_2e285m9.json
+++ b/src/Specific/CurveParameters/montgomery32_2e285m9.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^285 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e291m19.json b/src/Specific/CurveParameters/montgomery32_2e291m19.json
index 14ca16c1e..15f34ab22 100644
--- a/src/Specific/CurveParameters/montgomery32_2e291m19.json
+++ b/src/Specific/CurveParameters/montgomery32_2e291m19.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^291 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e321m9.json b/src/Specific/CurveParameters/montgomery32_2e321m9.json
index d9b415ad3..fc9bf4926 100644
--- a/src/Specific/CurveParameters/montgomery32_2e321m9.json
+++ b/src/Specific/CurveParameters/montgomery32_2e321m9.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^321 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e322m2e161m1.json b/src/Specific/CurveParameters/montgomery32_2e322m2e161m1.json
index ebd80a54b..9b44c3bfd 100644
--- a/src/Specific/CurveParameters/montgomery32_2e322m2e161m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e322m2e161m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^322 - 2^161 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e336m17.json b/src/Specific/CurveParameters/montgomery32_2e336m17.json
index 051dbe2d0..d5182d0c0 100644
--- a/src/Specific/CurveParameters/montgomery32_2e336m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e336m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^336 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e336m3.json b/src/Specific/CurveParameters/montgomery32_2e336m3.json
index 0739c88b2..30d1cf7aa 100644
--- a/src/Specific/CurveParameters/montgomery32_2e336m3.json
+++ b/src/Specific/CurveParameters/montgomery32_2e336m3.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^336 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e338m15.json b/src/Specific/CurveParameters/montgomery32_2e338m15.json
index c9bca9601..be5a7d1df 100644
--- a/src/Specific/CurveParameters/montgomery32_2e338m15.json
+++ b/src/Specific/CurveParameters/montgomery32_2e338m15.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^338 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e369m25.json b/src/Specific/CurveParameters/montgomery32_2e369m25.json
index 26439f9ae..7146847eb 100644
--- a/src/Specific/CurveParameters/montgomery32_2e369m25.json
+++ b/src/Specific/CurveParameters/montgomery32_2e369m25.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^369 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e379m19.json b/src/Specific/CurveParameters/montgomery32_2e379m19.json
index 5ff908fc6..c8f5b2862 100644
--- a/src/Specific/CurveParameters/montgomery32_2e379m19.json
+++ b/src/Specific/CurveParameters/montgomery32_2e379m19.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^379 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e382m105.json b/src/Specific/CurveParameters/montgomery32_2e382m105.json
index 5dfdee237..5fb200af8 100644
--- a/src/Specific/CurveParameters/montgomery32_2e382m105.json
+++ b/src/Specific/CurveParameters/montgomery32_2e382m105.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
"modulus": "2^382 - 105",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e383m187.json b/src/Specific/CurveParameters/montgomery32_2e383m187.json
index defa2fbfb..3b727f631 100644
--- a/src/Specific/CurveParameters/montgomery32_2e383m187.json
+++ b/src/Specific/CurveParameters/montgomery32_2e383m187.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
"modulus": "2^383 - 187",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e383m31.json b/src/Specific/CurveParameters/montgomery32_2e383m31.json
index 433c84ecf..aeb176b0c 100644
--- a/src/Specific/CurveParameters/montgomery32_2e383m31.json
+++ b/src/Specific/CurveParameters/montgomery32_2e383m31.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^383 - 31",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e383m421.json b/src/Specific/CurveParameters/montgomery32_2e383m421.json
index 946c824fd..e250f6583 100644
--- a/src/Specific/CurveParameters/montgomery32_2e383m421.json
+++ b/src/Specific/CurveParameters/montgomery32_2e383m421.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
"modulus": "2^383 - 421",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1.json b/src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1.json
index 403a57a90..410e31a0f 100644
--- a/src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m317.json b/src/Specific/CurveParameters/montgomery32_2e384m317.json
index a7663da97..b6436a0a4 100644
--- a/src/Specific/CurveParameters/montgomery32_2e384m317.json
+++ b/src/Specific/CurveParameters/montgomery32_2e384m317.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
"modulus": "2^384 - 317",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1.json b/src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1.json
index 4e7e4f0c5..6b5d058e8 100644
--- a/src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 5*2^368 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1.json b/src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1.json
index 4bfe0cebc..7b0194fad 100644
--- a/src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 79*2^376 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e389m21.json b/src/Specific/CurveParameters/montgomery32_2e389m21.json
index 79aa7bcfd..2d997d2aa 100644
--- a/src/Specific/CurveParameters/montgomery32_2e389m21.json
+++ b/src/Specific/CurveParameters/montgomery32_2e389m21.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^389 - 21",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e401m31.json b/src/Specific/CurveParameters/montgomery32_2e401m31.json
index 19a6221b3..6fc4eade3 100644
--- a/src/Specific/CurveParameters/montgomery32_2e401m31.json
+++ b/src/Specific/CurveParameters/montgomery32_2e401m31.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^401 - 31",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e413m21.json b/src/Specific/CurveParameters/montgomery32_2e413m21.json
index 4120e22b5..7457fc544 100644
--- a/src/Specific/CurveParameters/montgomery32_2e413m21.json
+++ b/src/Specific/CurveParameters/montgomery32_2e413m21.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^413 - 21",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e414m17.json b/src/Specific/CurveParameters/montgomery32_2e414m17.json
index 4f539e64b..102a59dbd 100644
--- a/src/Specific/CurveParameters/montgomery32_2e414m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e414m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^414 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e416m2e208m1.json b/src/Specific/CurveParameters/montgomery32_2e416m2e208m1.json
index 9587caeb2..af8f7d3bd 100644
--- a/src/Specific/CurveParameters/montgomery32_2e416m2e208m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e416m2e208m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^416 - 2^208 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e444m17.json b/src/Specific/CurveParameters/montgomery32_2e444m17.json
index 8579168ca..86e5934a7 100644
--- a/src/Specific/CurveParameters/montgomery32_2e444m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e444m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^444 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e448m2e224m1.json b/src/Specific/CurveParameters/montgomery32_2e448m2e224m1.json
index 3fad5b2dd..7f38a8fd1 100644
--- a/src/Specific/CurveParameters/montgomery32_2e448m2e224m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e448m2e224m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^448 - 2^224 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e450m2e225m1.json b/src/Specific/CurveParameters/montgomery32_2e450m2e225m1.json
index bf073384c..abd432f42 100644
--- a/src/Specific/CurveParameters/montgomery32_2e450m2e225m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e450m2e225m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^450 - 2^225 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e452m3.json b/src/Specific/CurveParameters/montgomery32_2e452m3.json
index 006a92962..5b63eb344 100644
--- a/src/Specific/CurveParameters/montgomery32_2e452m3.json
+++ b/src/Specific/CurveParameters/montgomery32_2e452m3.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^452 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e468m17.json b/src/Specific/CurveParameters/montgomery32_2e468m17.json
index 60c2ed999..848aa84df 100644
--- a/src/Specific/CurveParameters/montgomery32_2e468m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e468m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^468 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e480m2e240m1.json b/src/Specific/CurveParameters/montgomery32_2e480m2e240m1.json
index 5611c57c8..316cda0c5 100644
--- a/src/Specific/CurveParameters/montgomery32_2e480m2e240m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e480m2e240m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^480 - 2^240 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e488m17.json b/src/Specific/CurveParameters/montgomery32_2e488m17.json
index 017acf431..3f91ce72c 100644
--- a/src/Specific/CurveParameters/montgomery32_2e488m17.json
+++ b/src/Specific/CurveParameters/montgomery32_2e488m17.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^488 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e489m21.json b/src/Specific/CurveParameters/montgomery32_2e489m21.json
index b67f0a22e..a044b92b7 100644
--- a/src/Specific/CurveParameters/montgomery32_2e489m21.json
+++ b/src/Specific/CurveParameters/montgomery32_2e489m21.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^489 - 21",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e495m31.json b/src/Specific/CurveParameters/montgomery32_2e495m31.json
index 534eba72b..26e50d979 100644
--- a/src/Specific/CurveParameters/montgomery32_2e495m31.json
+++ b/src/Specific/CurveParameters/montgomery32_2e495m31.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^495 - 31",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1.json b/src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1.json
index 46044defe..fea19b3fa 100644
--- a/src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^510 - 290*2^496 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e511m187.json b/src/Specific/CurveParameters/montgomery32_2e511m187.json
index bd3db7236..10446e7e6 100644
--- a/src/Specific/CurveParameters/montgomery32_2e511m187.json
+++ b/src/Specific/CurveParameters/montgomery32_2e511m187.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
"modulus": "2^511 - 187",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e511m481.json b/src/Specific/CurveParameters/montgomery32_2e511m481.json
index 8c6275d8a..219b80fe8 100644
--- a/src/Specific/CurveParameters/montgomery32_2e511m481.json
+++ b/src/Specific/CurveParameters/montgomery32_2e511m481.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
"modulus": "2^511 - 481",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1.json b/src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1.json
index a2ddb476d..be0d866b5 100644
--- a/src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^512 - 491*2^496 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e512m569.json b/src/Specific/CurveParameters/montgomery32_2e512m569.json
index b7ffe601e..273df3466 100644
--- a/src/Specific/CurveParameters/montgomery32_2e512m569.json
+++ b/src/Specific/CurveParameters/montgomery32_2e512m569.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
"modulus": "2^512 - 569",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery32_2e521m1.json b/src/Specific/CurveParameters/montgomery32_2e521m1.json
index c6cd297ae..d2b824db0 100644
--- a/src/Specific/CurveParameters/montgomery32_2e521m1.json
+++ b/src/Specific/CurveParameters/montgomery32_2e521m1.json
@@ -1,7 +1,7 @@
{
"base": "32",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='17' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='17' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^521 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e127m1.json b/src/Specific/CurveParameters/montgomery64_2e127m1.json
index 6f4e84cd7..530756c23 100644
--- a/src/Specific/CurveParameters/montgomery64_2e127m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e127m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='2' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='2' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^127 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e129m25.json b/src/Specific/CurveParameters/montgomery64_2e129m25.json
index d25866f3f..dc2c74482 100644
--- a/src/Specific/CurveParameters/montgomery64_2e129m25.json
+++ b/src/Specific/CurveParameters/montgomery64_2e129m25.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^129 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e130m5.json b/src/Specific/CurveParameters/montgomery64_2e130m5.json
index 3b0c03f07..f3c9b8c7d 100644
--- a/src/Specific/CurveParameters/montgomery64_2e130m5.json
+++ b/src/Specific/CurveParameters/montgomery64_2e130m5.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^130 - 5 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e137m13.json b/src/Specific/CurveParameters/montgomery64_2e137m13.json
index a32d56e9b..e15906ec9 100644
--- a/src/Specific/CurveParameters/montgomery64_2e137m13.json
+++ b/src/Specific/CurveParameters/montgomery64_2e137m13.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
"modulus": "2^137 - 13",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e140m27.json b/src/Specific/CurveParameters/montgomery64_2e140m27.json
index c817414a5..a215d9b81 100644
--- a/src/Specific/CurveParameters/montgomery64_2e140m27.json
+++ b/src/Specific/CurveParameters/montgomery64_2e140m27.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^140 - 27",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e141m9.json b/src/Specific/CurveParameters/montgomery64_2e141m9.json
index 6bd669891..532d5886c 100644
--- a/src/Specific/CurveParameters/montgomery64_2e141m9.json
+++ b/src/Specific/CurveParameters/montgomery64_2e141m9.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^141 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e150m3.json b/src/Specific/CurveParameters/montgomery64_2e150m3.json
index d202aa176..dea0b2714 100644
--- a/src/Specific/CurveParameters/montgomery64_2e150m3.json
+++ b/src/Specific/CurveParameters/montgomery64_2e150m3.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^150 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e150m5.json b/src/Specific/CurveParameters/montgomery64_2e150m5.json
index 4429f39e8..e90826b38 100644
--- a/src/Specific/CurveParameters/montgomery64_2e150m5.json
+++ b/src/Specific/CurveParameters/montgomery64_2e150m5.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^150 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e152m17.json b/src/Specific/CurveParameters/montgomery64_2e152m17.json
index fdd33ddec..270c4fdd3 100644
--- a/src/Specific/CurveParameters/montgomery64_2e152m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e152m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^152 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e158m15.json b/src/Specific/CurveParameters/montgomery64_2e158m15.json
index 51b8cc2ae..59140d14f 100644
--- a/src/Specific/CurveParameters/montgomery64_2e158m15.json
+++ b/src/Specific/CurveParameters/montgomery64_2e158m15.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^158 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e165m25.json b/src/Specific/CurveParameters/montgomery64_2e165m25.json
index febc67e86..e477698ff 100644
--- a/src/Specific/CurveParameters/montgomery64_2e165m25.json
+++ b/src/Specific/CurveParameters/montgomery64_2e165m25.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^165 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e166m5.json b/src/Specific/CurveParameters/montgomery64_2e166m5.json
index 2ce7925ac..6b3abf190 100644
--- a/src/Specific/CurveParameters/montgomery64_2e166m5.json
+++ b/src/Specific/CurveParameters/montgomery64_2e166m5.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^166 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e171m19.json b/src/Specific/CurveParameters/montgomery64_2e171m19.json
index f2ff882ff..e59793437 100644
--- a/src/Specific/CurveParameters/montgomery64_2e171m19.json
+++ b/src/Specific/CurveParameters/montgomery64_2e171m19.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^171 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e174m17.json b/src/Specific/CurveParameters/montgomery64_2e174m17.json
index 94e77a699..2dabfc059 100644
--- a/src/Specific/CurveParameters/montgomery64_2e174m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e174m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^174 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e174m3.json b/src/Specific/CurveParameters/montgomery64_2e174m3.json
index 646ca44ef..e35b7119a 100644
--- a/src/Specific/CurveParameters/montgomery64_2e174m3.json
+++ b/src/Specific/CurveParameters/montgomery64_2e174m3.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^174 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e189m25.json b/src/Specific/CurveParameters/montgomery64_2e189m25.json
index 0137168d1..bec15fd71 100644
--- a/src/Specific/CurveParameters/montgomery64_2e189m25.json
+++ b/src/Specific/CurveParameters/montgomery64_2e189m25.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^189 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e190m11.json b/src/Specific/CurveParameters/montgomery64_2e190m11.json
index 2ba0d1694..6f6af916e 100644
--- a/src/Specific/CurveParameters/montgomery64_2e190m11.json
+++ b/src/Specific/CurveParameters/montgomery64_2e190m11.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
"modulus": "2^190 - 11",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e191m19.json b/src/Specific/CurveParameters/montgomery64_2e191m19.json
index 5c54be05e..faec89479 100644
--- a/src/Specific/CurveParameters/montgomery64_2e191m19.json
+++ b/src/Specific/CurveParameters/montgomery64_2e191m19.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^191 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e192m2e64m1.json b/src/Specific/CurveParameters/montgomery64_2e192m2e64m1.json
index cdde6c1ae..475e66f7c 100644
--- a/src/Specific/CurveParameters/montgomery64_2e192m2e64m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e192m2e64m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^192 - 2^64 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e194m33.json b/src/Specific/CurveParameters/montgomery64_2e194m33.json
index 0e79ba296..c0f593b9a 100644
--- a/src/Specific/CurveParameters/montgomery64_2e194m33.json
+++ b/src/Specific/CurveParameters/montgomery64_2e194m33.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
"modulus": "2^194 - 33",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e196m15.json b/src/Specific/CurveParameters/montgomery64_2e196m15.json
index 220e73f9c..463b139f2 100644
--- a/src/Specific/CurveParameters/montgomery64_2e196m15.json
+++ b/src/Specific/CurveParameters/montgomery64_2e196m15.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^196 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e198m17.json b/src/Specific/CurveParameters/montgomery64_2e198m17.json
index c5538dc89..4dd7877a2 100644
--- a/src/Specific/CurveParameters/montgomery64_2e198m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e198m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^198 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1.json b/src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1.json
index 441e33763..a12117f3d 100644
--- a/src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^205 - 45*2^198 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e206m5.json b/src/Specific/CurveParameters/montgomery64_2e206m5.json
index dc88de9f1..6f867c4c5 100644
--- a/src/Specific/CurveParameters/montgomery64_2e206m5.json
+++ b/src/Specific/CurveParameters/montgomery64_2e206m5.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^206 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e212m29.json b/src/Specific/CurveParameters/montgomery64_2e212m29.json
index 87b75f581..a6f0dbec8 100644
--- a/src/Specific/CurveParameters/montgomery64_2e212m29.json
+++ b/src/Specific/CurveParameters/montgomery64_2e212m29.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
"modulus": "2^212 - 29",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e213m3.json b/src/Specific/CurveParameters/montgomery64_2e213m3.json
index 3fd327271..d097f6a0b 100644
--- a/src/Specific/CurveParameters/montgomery64_2e213m3.json
+++ b/src/Specific/CurveParameters/montgomery64_2e213m3.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^213 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e216m2e108m1.json b/src/Specific/CurveParameters/montgomery64_2e216m2e108m1.json
index 05d846bb9..af02de28b 100644
--- a/src/Specific/CurveParameters/montgomery64_2e216m2e108m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e216m2e108m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^216 - 2^108 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e221m3.json b/src/Specific/CurveParameters/montgomery64_2e221m3.json
index 31c261190..8af57e7d9 100644
--- a/src/Specific/CurveParameters/montgomery64_2e221m3.json
+++ b/src/Specific/CurveParameters/montgomery64_2e221m3.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^221 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e222m117.json b/src/Specific/CurveParameters/montgomery64_2e222m117.json
index e96ec89b6..561fd5126 100644
--- a/src/Specific/CurveParameters/montgomery64_2e222m117.json
+++ b/src/Specific/CurveParameters/montgomery64_2e222m117.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
"modulus": "2^222 - 117",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e224m2e96p1.json b/src/Specific/CurveParameters/montgomery64_2e224m2e96p1.json
index 7c924f79f..6e51cca1c 100644
--- a/src/Specific/CurveParameters/montgomery64_2e224m2e96p1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e224m2e96p1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
"modulus": "2^224 - 2^96 + 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e226m5.json b/src/Specific/CurveParameters/montgomery64_2e226m5.json
index 7ca6ead3d..3ec3f3e31 100644
--- a/src/Specific/CurveParameters/montgomery64_2e226m5.json
+++ b/src/Specific/CurveParameters/montgomery64_2e226m5.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^226 - 5",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e230m27.json b/src/Specific/CurveParameters/montgomery64_2e230m27.json
index c0c45420f..ba52f1ad5 100644
--- a/src/Specific/CurveParameters/montgomery64_2e230m27.json
+++ b/src/Specific/CurveParameters/montgomery64_2e230m27.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^230 - 27",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e235m15.json b/src/Specific/CurveParameters/montgomery64_2e235m15.json
index c5d757f63..1cd26a91f 100644
--- a/src/Specific/CurveParameters/montgomery64_2e235m15.json
+++ b/src/Specific/CurveParameters/montgomery64_2e235m15.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^235 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e243m9.json b/src/Specific/CurveParameters/montgomery64_2e243m9.json
index bb9308648..b56111194 100644
--- a/src/Specific/CurveParameters/montgomery64_2e243m9.json
+++ b/src/Specific/CurveParameters/montgomery64_2e243m9.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^243 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e251m9.json b/src/Specific/CurveParameters/montgomery64_2e251m9.json
index b794c737a..469162c7b 100644
--- a/src/Specific/CurveParameters/montgomery64_2e251m9.json
+++ b/src/Specific/CurveParameters/montgomery64_2e251m9.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^251 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1.json b/src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1.json
index 40bee6751..e319d790b 100644
--- a/src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^254 - 127*2^240 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e255m19.json b/src/Specific/CurveParameters/montgomery64_2e255m19.json
index b069ef948..a4078c494 100644
--- a/src/Specific/CurveParameters/montgomery64_2e255m19.json
+++ b/src/Specific/CurveParameters/montgomery64_2e255m19.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 19 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e255m2e4m2e1m1.json b/src/Specific/CurveParameters/montgomery64_2e255m2e4m2e1m1.json
index 56270e7e1..341aeca23 100644
--- a/src/Specific/CurveParameters/montgomery64_2e255m2e4m2e1m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e255m2e4m2e1m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 2^4 - 2^1 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e255m765.json b/src/Specific/CurveParameters/montgomery64_2e255m765.json
index 7a4242c3f..1921b99e7 100644
--- a/src/Specific/CurveParameters/montgomery64_2e255m765.json
+++ b/src/Specific/CurveParameters/montgomery64_2e255m765.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
"modulus": "2^255 - 765",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m189.json b/src/Specific/CurveParameters/montgomery64_2e256m189.json
index d154ed7de..40c2eb2f8 100644
--- a/src/Specific/CurveParameters/montgomery64_2e256m189.json
+++ b/src/Specific/CurveParameters/montgomery64_2e256m189.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
"modulus": "2^256 - 189",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1.json b/src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1.json
index dc6bc297d..7a634cb8f 100644
--- a/src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m2e32m977.json b/src/Specific/CurveParameters/montgomery64_2e256m2e32m977.json
index e4ebf1284..e1185d823 100644
--- a/src/Specific/CurveParameters/montgomery64_2e256m2e32m977.json
+++ b/src/Specific/CurveParameters/montgomery64_2e256m2e32m977.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
"modulus": "2^256 - 2^32 - 977 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1.json b/src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1.json
index ac370d43d..0cbbc28de 100644
--- a/src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 88*2^240 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e266m3.json b/src/Specific/CurveParameters/montgomery64_2e266m3.json
index 2ef09a302..0bc4e01e2 100644
--- a/src/Specific/CurveParameters/montgomery64_2e266m3.json
+++ b/src/Specific/CurveParameters/montgomery64_2e266m3.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^266 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e285m9.json b/src/Specific/CurveParameters/montgomery64_2e285m9.json
index 1056c975b..53421e577 100644
--- a/src/Specific/CurveParameters/montgomery64_2e285m9.json
+++ b/src/Specific/CurveParameters/montgomery64_2e285m9.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^285 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e291m19.json b/src/Specific/CurveParameters/montgomery64_2e291m19.json
index 8ca2f4124..e75d3b918 100644
--- a/src/Specific/CurveParameters/montgomery64_2e291m19.json
+++ b/src/Specific/CurveParameters/montgomery64_2e291m19.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^291 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e321m9.json b/src/Specific/CurveParameters/montgomery64_2e321m9.json
index b09f24e9f..cb8ab8b1f 100644
--- a/src/Specific/CurveParameters/montgomery64_2e321m9.json
+++ b/src/Specific/CurveParameters/montgomery64_2e321m9.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^321 - 9",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e322m2e161m1.json b/src/Specific/CurveParameters/montgomery64_2e322m2e161m1.json
index f28edac95..0d7e88f39 100644
--- a/src/Specific/CurveParameters/montgomery64_2e322m2e161m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e322m2e161m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^322 - 2^161 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e336m17.json b/src/Specific/CurveParameters/montgomery64_2e336m17.json
index ed7dd4baf..4feab2928 100644
--- a/src/Specific/CurveParameters/montgomery64_2e336m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e336m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^336 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e336m3.json b/src/Specific/CurveParameters/montgomery64_2e336m3.json
index 4c631d814..489177743 100644
--- a/src/Specific/CurveParameters/montgomery64_2e336m3.json
+++ b/src/Specific/CurveParameters/montgomery64_2e336m3.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^336 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e338m15.json b/src/Specific/CurveParameters/montgomery64_2e338m15.json
index 9dd414ca3..b31102831 100644
--- a/src/Specific/CurveParameters/montgomery64_2e338m15.json
+++ b/src/Specific/CurveParameters/montgomery64_2e338m15.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^338 - 15",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e369m25.json b/src/Specific/CurveParameters/montgomery64_2e369m25.json
index d5331cbc6..e7082a314 100644
--- a/src/Specific/CurveParameters/montgomery64_2e369m25.json
+++ b/src/Specific/CurveParameters/montgomery64_2e369m25.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^369 - 25",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e379m19.json b/src/Specific/CurveParameters/montgomery64_2e379m19.json
index 84ac0d183..51808cc97 100644
--- a/src/Specific/CurveParameters/montgomery64_2e379m19.json
+++ b/src/Specific/CurveParameters/montgomery64_2e379m19.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^379 - 19",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e382m105.json b/src/Specific/CurveParameters/montgomery64_2e382m105.json
index 3260a2247..cb1df341a 100644
--- a/src/Specific/CurveParameters/montgomery64_2e382m105.json
+++ b/src/Specific/CurveParameters/montgomery64_2e382m105.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
"modulus": "2^382 - 105",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e383m187.json b/src/Specific/CurveParameters/montgomery64_2e383m187.json
index e9cda8f2c..c4721d70c 100644
--- a/src/Specific/CurveParameters/montgomery64_2e383m187.json
+++ b/src/Specific/CurveParameters/montgomery64_2e383m187.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
"modulus": "2^383 - 187",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e383m31.json b/src/Specific/CurveParameters/montgomery64_2e383m31.json
index bd27e2933..218857eda 100644
--- a/src/Specific/CurveParameters/montgomery64_2e383m31.json
+++ b/src/Specific/CurveParameters/montgomery64_2e383m31.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^383 - 31",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e383m421.json b/src/Specific/CurveParameters/montgomery64_2e383m421.json
index b6c481fdc..6f44d057b 100644
--- a/src/Specific/CurveParameters/montgomery64_2e383m421.json
+++ b/src/Specific/CurveParameters/montgomery64_2e383m421.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}'",
"modulus": "2^383 - 421",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1.json b/src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1.json
index c2d5aa584..924cd7525 100644
--- a/src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m317.json b/src/Specific/CurveParameters/montgomery64_2e384m317.json
index 74b1893fd..c000fce06 100644
--- a/src/Specific/CurveParameters/montgomery64_2e384m317.json
+++ b/src/Specific/CurveParameters/montgomery64_2e384m317.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
"modulus": "2^384 - 317",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1.json b/src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1.json
index 39babfff5..9151eaf1a 100644
--- a/src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 5*2^368 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1.json b/src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1.json
index de0f53e12..e19b9ced2 100644
--- a/src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 79*2^376 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e389m21.json b/src/Specific/CurveParameters/montgomery64_2e389m21.json
index 339d3bdbc..27b8345aa 100644
--- a/src/Specific/CurveParameters/montgomery64_2e389m21.json
+++ b/src/Specific/CurveParameters/montgomery64_2e389m21.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^389 - 21",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e401m31.json b/src/Specific/CurveParameters/montgomery64_2e401m31.json
index bcf5370ac..34dc929e5 100644
--- a/src/Specific/CurveParameters/montgomery64_2e401m31.json
+++ b/src/Specific/CurveParameters/montgomery64_2e401m31.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^401 - 31",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e413m21.json b/src/Specific/CurveParameters/montgomery64_2e413m21.json
index 896cccd90..411cc4496 100644
--- a/src/Specific/CurveParameters/montgomery64_2e413m21.json
+++ b/src/Specific/CurveParameters/montgomery64_2e413m21.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^413 - 21",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e414m17.json b/src/Specific/CurveParameters/montgomery64_2e414m17.json
index 235ea6488..0c797a212 100644
--- a/src/Specific/CurveParameters/montgomery64_2e414m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e414m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^414 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e416m2e208m1.json b/src/Specific/CurveParameters/montgomery64_2e416m2e208m1.json
index b7dd78407..0b1255fbf 100644
--- a/src/Specific/CurveParameters/montgomery64_2e416m2e208m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e416m2e208m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^416 - 2^208 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e444m17.json b/src/Specific/CurveParameters/montgomery64_2e444m17.json
index 853e8f27c..cb52cf36e 100644
--- a/src/Specific/CurveParameters/montgomery64_2e444m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e444m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^444 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e448m2e224m1.json b/src/Specific/CurveParameters/montgomery64_2e448m2e224m1.json
index b5a05d5d6..a86e10c3e 100644
--- a/src/Specific/CurveParameters/montgomery64_2e448m2e224m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e448m2e224m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^448 - 2^224 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e450m2e225m1.json b/src/Specific/CurveParameters/montgomery64_2e450m2e225m1.json
index c397cb679..c6eaf3e17 100644
--- a/src/Specific/CurveParameters/montgomery64_2e450m2e225m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e450m2e225m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^450 - 2^225 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e452m3.json b/src/Specific/CurveParameters/montgomery64_2e452m3.json
index f97fcb81c..7ded8917f 100644
--- a/src/Specific/CurveParameters/montgomery64_2e452m3.json
+++ b/src/Specific/CurveParameters/montgomery64_2e452m3.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^452 - 3",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e468m17.json b/src/Specific/CurveParameters/montgomery64_2e468m17.json
index fb4fa9cf6..799e340bd 100644
--- a/src/Specific/CurveParameters/montgomery64_2e468m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e468m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^468 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e480m2e240m1.json b/src/Specific/CurveParameters/montgomery64_2e480m2e240m1.json
index ed40f4fb7..27c4ca386 100644
--- a/src/Specific/CurveParameters/montgomery64_2e480m2e240m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e480m2e240m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^480 - 2^240 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e488m17.json b/src/Specific/CurveParameters/montgomery64_2e488m17.json
index ff97cc333..5221d548b 100644
--- a/src/Specific/CurveParameters/montgomery64_2e488m17.json
+++ b/src/Specific/CurveParameters/montgomery64_2e488m17.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^488 - 17",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e489m21.json b/src/Specific/CurveParameters/montgomery64_2e489m21.json
index f774db1a8..9996abedd 100644
--- a/src/Specific/CurveParameters/montgomery64_2e489m21.json
+++ b/src/Specific/CurveParameters/montgomery64_2e489m21.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^489 - 21",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e495m31.json b/src/Specific/CurveParameters/montgomery64_2e495m31.json
index 864cfc35d..76303bb85 100644
--- a/src/Specific/CurveParameters/montgomery64_2e495m31.json
+++ b/src/Specific/CurveParameters/montgomery64_2e495m31.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^495 - 31",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1.json b/src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1.json
index eefcad846..4e7532d66 100644
--- a/src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^510 - 290*2^496 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e511m187.json b/src/Specific/CurveParameters/montgomery64_2e511m187.json
index 772aaf849..53c6d074d 100644
--- a/src/Specific/CurveParameters/montgomery64_2e511m187.json
+++ b/src/Specific/CurveParameters/montgomery64_2e511m187.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
"modulus": "2^511 - 187",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e511m481.json b/src/Specific/CurveParameters/montgomery64_2e511m481.json
index a2a343771..d32b8e823 100644
--- a/src/Specific/CurveParameters/montgomery64_2e511m481.json
+++ b/src/Specific/CurveParameters/montgomery64_2e511m481.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
"modulus": "2^511 - 481",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1.json b/src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1.json
index 6ed450e65..7b155afbb 100644
--- a/src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^512 - 491*2^496 - 1",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e512m569.json b/src/Specific/CurveParameters/montgomery64_2e512m569.json
index 9d903dc6d..6ff877872 100644
--- a/src/Specific/CurveParameters/montgomery64_2e512m569.json
+++ b/src/Specific/CurveParameters/montgomery64_2e512m569.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
"modulus": "2^512 - 569",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/montgomery64_2e521m1.json b/src/Specific/CurveParameters/montgomery64_2e521m1.json
index 40cfd6dc9..ef3d4cdbc 100644
--- a/src/Specific/CurveParameters/montgomery64_2e521m1.json
+++ b/src/Specific/CurveParameters/montgomery64_2e521m1.json
@@ -1,7 +1,7 @@
{
"base": "64",
- "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^521 - 1 ",
"montgomery": true,
"operations": [
diff --git a/src/Specific/CurveParameters/solinas32_2e127m1.json b/src/Specific/CurveParameters/solinas32_2e127m1.json
index b29953a2d..589600c30 100644
--- a/src/Specific/CurveParameters/solinas32_2e127m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e127m1.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^127 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e129m25.json b/src/Specific/CurveParameters/solinas32_2e129m25.json
index 847b90d85..577c1d568 100644
--- a/src/Specific/CurveParameters/solinas32_2e129m25.json
+++ b/src/Specific/CurveParameters/solinas32_2e129m25.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^129 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e130m5.json b/src/Specific/CurveParameters/solinas32_2e130m5.json
index 1a8069cb3..c782be19a 100644
--- a/src/Specific/CurveParameters/solinas32_2e130m5.json
+++ b/src/Specific/CurveParameters/solinas32_2e130m5.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^130 - 5 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e137m13.json b/src/Specific/CurveParameters/solinas32_2e137m13.json
index e67aaeafd..f8e635a6f 100644
--- a/src/Specific/CurveParameters/solinas32_2e137m13.json
+++ b/src/Specific/CurveParameters/solinas32_2e137m13.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17.125' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17.125' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
"modulus": "2^137 - 13",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e140m27.json b/src/Specific/CurveParameters/solinas32_2e140m27.json
index 3d5f71097..f928030a3 100644
--- a/src/Specific/CurveParameters/solinas32_2e140m27.json
+++ b/src/Specific/CurveParameters/solinas32_2e140m27.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^140 - 27",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e141m9.json b/src/Specific/CurveParameters/solinas32_2e141m9.json
index 818c8ed76..62ccbbf66 100644
--- a/src/Specific/CurveParameters/solinas32_2e141m9.json
+++ b/src/Specific/CurveParameters/solinas32_2e141m9.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^141 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e150m3.json b/src/Specific/CurveParameters/solinas32_2e150m3.json
index da40ae1c7..28c3d7f59 100644
--- a/src/Specific/CurveParameters/solinas32_2e150m3.json
+++ b/src/Specific/CurveParameters/solinas32_2e150m3.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^150 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e150m5.json b/src/Specific/CurveParameters/solinas32_2e150m5.json
index 72f8b78e2..11c0480f0 100644
--- a/src/Specific/CurveParameters/solinas32_2e150m5.json
+++ b/src/Specific/CurveParameters/solinas32_2e150m5.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^150 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e152m17.json b/src/Specific/CurveParameters/solinas32_2e152m17.json
index e0d46a1f6..6977d7f5c 100644
--- a/src/Specific/CurveParameters/solinas32_2e152m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e152m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^152 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e158m15.json b/src/Specific/CurveParameters/solinas32_2e158m15.json
index 0871b0d0e..a01cb3adb 100644
--- a/src/Specific/CurveParameters/solinas32_2e158m15.json
+++ b/src/Specific/CurveParameters/solinas32_2e158m15.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^158 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e165m25.json b/src/Specific/CurveParameters/solinas32_2e165m25.json
index bb7569c6c..9a062aa2d 100644
--- a/src/Specific/CurveParameters/solinas32_2e165m25.json
+++ b/src/Specific/CurveParameters/solinas32_2e165m25.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^165 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e166m5.json b/src/Specific/CurveParameters/solinas32_2e166m5.json
index fef0065b0..cb43e8ade 100644
--- a/src/Specific/CurveParameters/solinas32_2e166m5.json
+++ b/src/Specific/CurveParameters/solinas32_2e166m5.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='15 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='15 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^166 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e171m19.json b/src/Specific/CurveParameters/solinas32_2e171m19.json
index 95bdf9788..f8731565f 100644
--- a/src/Specific/CurveParameters/solinas32_2e171m19.json
+++ b/src/Specific/CurveParameters/solinas32_2e171m19.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^171 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e174m17.json b/src/Specific/CurveParameters/solinas32_2e174m17.json
index 77f8b46f2..72b4f8bf5 100644
--- a/src/Specific/CurveParameters/solinas32_2e174m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e174m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^174 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e174m3.json b/src/Specific/CurveParameters/solinas32_2e174m3.json
index bc621a951..7b2d5c8a7 100644
--- a/src/Specific/CurveParameters/solinas32_2e174m3.json
+++ b/src/Specific/CurveParameters/solinas32_2e174m3.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='29' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='29' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^174 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e189m25.json b/src/Specific/CurveParameters/solinas32_2e189m25.json
index cb99bf210..b42f2e2fd 100644
--- a/src/Specific/CurveParameters/solinas32_2e189m25.json
+++ b/src/Specific/CurveParameters/solinas32_2e189m25.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^189 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e190m11.json b/src/Specific/CurveParameters/solinas32_2e190m11.json
index 465be92c9..19eab04e0 100644
--- a/src/Specific/CurveParameters/solinas32_2e190m11.json
+++ b/src/Specific/CurveParameters/solinas32_2e190m11.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27 + 1/7' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27 + 1/7' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
"modulus": "2^190 - 11",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e191m19.json b/src/Specific/CurveParameters/solinas32_2e191m19.json
index 39fe5106f..bb6bbfc01 100644
--- a/src/Specific/CurveParameters/solinas32_2e191m19.json
+++ b/src/Specific/CurveParameters/solinas32_2e191m19.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^191 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e192m2e64m1.json b/src/Specific/CurveParameters/solinas32_2e192m2e64m1.json
index d80e7ed90..4f6bd1abb 100644
--- a/src/Specific/CurveParameters/solinas32_2e192m2e64m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e192m2e64m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^192 - 2^64 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e194m33.json b/src/Specific/CurveParameters/solinas32_2e194m33.json
index b49087923..c128ae796 100644
--- a/src/Specific/CurveParameters/solinas32_2e194m33.json
+++ b/src/Specific/CurveParameters/solinas32_2e194m33.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
"modulus": "2^194 - 33",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e196m15.json b/src/Specific/CurveParameters/solinas32_2e196m15.json
index cb6dd2577..01209e816 100644
--- a/src/Specific/CurveParameters/solinas32_2e196m15.json
+++ b/src/Specific/CurveParameters/solinas32_2e196m15.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^196 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e198m17.json b/src/Specific/CurveParameters/solinas32_2e198m17.json
index e4528a18e..9954c56fc 100644
--- a/src/Specific/CurveParameters/solinas32_2e198m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e198m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^198 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e205m45x2e198m1.json b/src/Specific/CurveParameters/solinas32_2e205m45x2e198m1.json
index a04a19eba..639ecfa2c 100644
--- a/src/Specific/CurveParameters/solinas32_2e205m45x2e198m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e205m45x2e198m1.json
@@ -24,8 +24,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^205 - 45*2^198 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e206m5.json b/src/Specific/CurveParameters/solinas32_2e206m5.json
index 51bfa2ff5..0d7d9ddce 100644
--- a/src/Specific/CurveParameters/solinas32_2e206m5.json
+++ b/src/Specific/CurveParameters/solinas32_2e206m5.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^206 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e212m29.json b/src/Specific/CurveParameters/solinas32_2e212m29.json
index 3df07c802..6573ce2e2 100644
--- a/src/Specific/CurveParameters/solinas32_2e212m29.json
+++ b/src/Specific/CurveParameters/solinas32_2e212m29.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
"modulus": "2^212 - 29",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e213m3.json b/src/Specific/CurveParameters/solinas32_2e213m3.json
index c6c036779..1dc16636b 100644
--- a/src/Specific/CurveParameters/solinas32_2e213m3.json
+++ b/src/Specific/CurveParameters/solinas32_2e213m3.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='14.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='14.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^213 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e216m2e108m1.json b/src/Specific/CurveParameters/solinas32_2e216m2e108m1.json
index 60dece873..20aa8e977 100644
--- a/src/Specific/CurveParameters/solinas32_2e216m2e108m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e216m2e108m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^216 - 2^108 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas32_2e221m3.json b/src/Specific/CurveParameters/solinas32_2e221m3.json
index 5d9634f32..46d1883d8 100644
--- a/src/Specific/CurveParameters/solinas32_2e221m3.json
+++ b/src/Specific/CurveParameters/solinas32_2e221m3.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^221 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e222m117.json b/src/Specific/CurveParameters/solinas32_2e222m117.json
index 512e716f2..6103cae32 100644
--- a/src/Specific/CurveParameters/solinas32_2e222m117.json
+++ b/src/Specific/CurveParameters/solinas32_2e222m117.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
"modulus": "2^222 - 117",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e224m2e96p1.json b/src/Specific/CurveParameters/solinas32_2e224m2e96p1.json
index ff73a8de1..d7a778714 100644
--- a/src/Specific/CurveParameters/solinas32_2e224m2e96p1.json
+++ b/src/Specific/CurveParameters/solinas32_2e224m2e96p1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
"modulus": "2^224 - 2^96 + 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e226m5.json b/src/Specific/CurveParameters/solinas32_2e226m5.json
index c33aa5d7e..87e0ec139 100644
--- a/src/Specific/CurveParameters/solinas32_2e226m5.json
+++ b/src/Specific/CurveParameters/solinas32_2e226m5.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^226 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e230m27.json b/src/Specific/CurveParameters/solinas32_2e230m27.json
index b4ecbee36..5c12f0e15 100644
--- a/src/Specific/CurveParameters/solinas32_2e230m27.json
+++ b/src/Specific/CurveParameters/solinas32_2e230m27.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^230 - 27",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e235m15.json b/src/Specific/CurveParameters/solinas32_2e235m15.json
index 672f4b879..f1590ea50 100644
--- a/src/Specific/CurveParameters/solinas32_2e235m15.json
+++ b/src/Specific/CurveParameters/solinas32_2e235m15.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^235 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e243m9.json b/src/Specific/CurveParameters/solinas32_2e243m9.json
index 154777feb..58cd8d741 100644
--- a/src/Specific/CurveParameters/solinas32_2e243m9.json
+++ b/src/Specific/CurveParameters/solinas32_2e243m9.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^243 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e251m9.json b/src/Specific/CurveParameters/solinas32_2e251m9.json
index 267dd94b2..65f828b19 100644
--- a/src/Specific/CurveParameters/solinas32_2e251m9.json
+++ b/src/Specific/CurveParameters/solinas32_2e251m9.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^251 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e254m127x2e240m1.json b/src/Specific/CurveParameters/solinas32_2e254m127x2e240m1.json
index bd122971b..a9c9b67e7 100644
--- a/src/Specific/CurveParameters/solinas32_2e254m127x2e240m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e254m127x2e240m1.json
@@ -25,8 +25,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^254 - 127*2^240 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e255m19.json b/src/Specific/CurveParameters/solinas32_2e255m19.json
index bd125d537..2328b0424 100644
--- a/src/Specific/CurveParameters/solinas32_2e255m19.json
+++ b/src/Specific/CurveParameters/solinas32_2e255m19.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 19 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e255m2e4m2e1m1.json b/src/Specific/CurveParameters/solinas32_2e255m2e4m2e1m1.json
index 851690fba..0d65fe3ec 100644
--- a/src/Specific/CurveParameters/solinas32_2e255m2e4m2e1m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e255m2e4m2e1m1.json
@@ -24,8 +24,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 2^4 - 2^1 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e255m765.json b/src/Specific/CurveParameters/solinas32_2e255m765.json
index 7f71337c3..803a5c4d5 100644
--- a/src/Specific/CurveParameters/solinas32_2e255m765.json
+++ b/src/Specific/CurveParameters/solinas32_2e255m765.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
"modulus": "2^255 - 765",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e256m189.json b/src/Specific/CurveParameters/solinas32_2e256m189.json
index 8fad0d630..f6d6aceab 100644
--- a/src/Specific/CurveParameters/solinas32_2e256m189.json
+++ b/src/Specific/CurveParameters/solinas32_2e256m189.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
"modulus": "2^256 - 189",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1.json b/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1.json
index e493de5be..325c8f886 100644
--- a/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1.json
@@ -30,8 +30,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e256m2e32m977.json b/src/Specific/CurveParameters/solinas32_2e256m2e32m977.json
index 23d9b0121..fd509b600 100644
--- a/src/Specific/CurveParameters/solinas32_2e256m2e32m977.json
+++ b/src/Specific/CurveParameters/solinas32_2e256m2e32m977.json
@@ -26,8 +26,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
"modulus": "2^256 - 2^32 - 977 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e256m88x2e240m1.json b/src/Specific/CurveParameters/solinas32_2e256m88x2e240m1.json
index f4b639ff0..bdfa5bcce 100644
--- a/src/Specific/CurveParameters/solinas32_2e256m88x2e240m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e256m88x2e240m1.json
@@ -26,8 +26,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 88*2^240 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e266m3.json b/src/Specific/CurveParameters/solinas32_2e266m3.json
index db611dbf9..2ffad4d2a 100644
--- a/src/Specific/CurveParameters/solinas32_2e266m3.json
+++ b/src/Specific/CurveParameters/solinas32_2e266m3.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^266 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e285m9.json b/src/Specific/CurveParameters/solinas32_2e285m9.json
index 733f1a7ed..6786200d1 100644
--- a/src/Specific/CurveParameters/solinas32_2e285m9.json
+++ b/src/Specific/CurveParameters/solinas32_2e285m9.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^285 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e291m19.json b/src/Specific/CurveParameters/solinas32_2e291m19.json
index 15b3c9c1a..a3510b091 100644
--- a/src/Specific/CurveParameters/solinas32_2e291m19.json
+++ b/src/Specific/CurveParameters/solinas32_2e291m19.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^291 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e321m9.json b/src/Specific/CurveParameters/solinas32_2e321m9.json
index 26bb44281..b86898f03 100644
--- a/src/Specific/CurveParameters/solinas32_2e321m9.json
+++ b/src/Specific/CurveParameters/solinas32_2e321m9.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^321 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e322m2e161m1.json b/src/Specific/CurveParameters/solinas32_2e322m2e161m1.json
index e5ed50e54..f986c8b62 100644
--- a/src/Specific/CurveParameters/solinas32_2e322m2e161m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e322m2e161m1.json
@@ -28,8 +28,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^322 - 2^161 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas32_2e336m17.json b/src/Specific/CurveParameters/solinas32_2e336m17.json
index 0d408a17c..5f0ba0a55 100644
--- a/src/Specific/CurveParameters/solinas32_2e336m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e336m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^336 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e336m3.json b/src/Specific/CurveParameters/solinas32_2e336m3.json
index 9048a4ec5..3cac87c64 100644
--- a/src/Specific/CurveParameters/solinas32_2e336m3.json
+++ b/src/Specific/CurveParameters/solinas32_2e336m3.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^336 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e338m15.json b/src/Specific/CurveParameters/solinas32_2e338m15.json
index 7754d509f..b195023a7 100644
--- a/src/Specific/CurveParameters/solinas32_2e338m15.json
+++ b/src/Specific/CurveParameters/solinas32_2e338m15.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^338 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e369m25.json b/src/Specific/CurveParameters/solinas32_2e369m25.json
index 1fa42ca20..0018b11f3 100644
--- a/src/Specific/CurveParameters/solinas32_2e369m25.json
+++ b/src/Specific/CurveParameters/solinas32_2e369m25.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^369 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e379m19.json b/src/Specific/CurveParameters/solinas32_2e379m19.json
index 45434a52b..501c60336 100644
--- a/src/Specific/CurveParameters/solinas32_2e379m19.json
+++ b/src/Specific/CurveParameters/solinas32_2e379m19.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/18' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/18' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^379 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e382m105.json b/src/Specific/CurveParameters/solinas32_2e382m105.json
index 63be0e256..6c1c63050 100644
--- a/src/Specific/CurveParameters/solinas32_2e382m105.json
+++ b/src/Specific/CurveParameters/solinas32_2e382m105.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
"modulus": "2^382 - 105",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1.json b/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1.json
index a03b49bd8..3c79fb663 100644
--- a/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1.json
@@ -34,8 +34,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e384m317.json b/src/Specific/CurveParameters/solinas32_2e384m317.json
index 2a42a1968..a351c7ec9 100644
--- a/src/Specific/CurveParameters/solinas32_2e384m317.json
+++ b/src/Specific/CurveParameters/solinas32_2e384m317.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
"modulus": "2^384 - 317",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e384m5x2e368m1.json b/src/Specific/CurveParameters/solinas32_2e384m5x2e368m1.json
index f58d2019a..03e5fc4ad 100644
--- a/src/Specific/CurveParameters/solinas32_2e384m5x2e368m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e384m5x2e368m1.json
@@ -30,8 +30,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 5*2^368 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e384m79x2e376m1.json b/src/Specific/CurveParameters/solinas32_2e384m79x2e376m1.json
index 606b6f780..d708a380d 100644
--- a/src/Specific/CurveParameters/solinas32_2e384m79x2e376m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e384m79x2e376m1.json
@@ -30,8 +30,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 79*2^376 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e401m31.json b/src/Specific/CurveParameters/solinas32_2e401m31.json
index 9e4951b7d..6bb411f9f 100644
--- a/src/Specific/CurveParameters/solinas32_2e401m31.json
+++ b/src/Specific/CurveParameters/solinas32_2e401m31.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^401 - 31",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e414m17.json b/src/Specific/CurveParameters/solinas32_2e414m17.json
index ee4a451a5..e8974a333 100644
--- a/src/Specific/CurveParameters/solinas32_2e414m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e414m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^414 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e416m2e208m1.json b/src/Specific/CurveParameters/solinas32_2e416m2e208m1.json
index 473913834..34bd512cb 100644
--- a/src/Specific/CurveParameters/solinas32_2e416m2e208m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e416m2e208m1.json
@@ -30,8 +30,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^416 - 2^208 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas32_2e444m17.json b/src/Specific/CurveParameters/solinas32_2e444m17.json
index 689b27309..b2524c64f 100644
--- a/src/Specific/CurveParameters/solinas32_2e444m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e444m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^444 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e448m2e224m1.json b/src/Specific/CurveParameters/solinas32_2e448m2e224m1.json
index 0ef620119..7b36508f3 100644
--- a/src/Specific/CurveParameters/solinas32_2e448m2e224m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e448m2e224m1.json
@@ -30,8 +30,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^448 - 2^224 - 1 ",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas32_2e450m2e225m1.json b/src/Specific/CurveParameters/solinas32_2e450m2e225m1.json
index ee33c2ca7..f9d16559a 100644
--- a/src/Specific/CurveParameters/solinas32_2e450m2e225m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e450m2e225m1.json
@@ -29,8 +29,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^450 - 2^225 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas32_2e452m3.json b/src/Specific/CurveParameters/solinas32_2e452m3.json
index 03781de0d..8f3e279e5 100644
--- a/src/Specific/CurveParameters/solinas32_2e452m3.json
+++ b/src/Specific/CurveParameters/solinas32_2e452m3.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^452 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e468m17.json b/src/Specific/CurveParameters/solinas32_2e468m17.json
index d012374a6..a4c351d40 100644
--- a/src/Specific/CurveParameters/solinas32_2e468m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e468m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^468 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e480m2e240m1.json b/src/Specific/CurveParameters/solinas32_2e480m2e240m1.json
index e33b7eccd..9aaef201c 100644
--- a/src/Specific/CurveParameters/solinas32_2e480m2e240m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e480m2e240m1.json
@@ -30,8 +30,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^480 - 2^240 - 1 ",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas32_2e488m17.json b/src/Specific/CurveParameters/solinas32_2e488m17.json
index 59dbc0de7..087aab39e 100644
--- a/src/Specific/CurveParameters/solinas32_2e488m17.json
+++ b/src/Specific/CurveParameters/solinas32_2e488m17.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^488 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e489m21.json b/src/Specific/CurveParameters/solinas32_2e489m21.json
index 1f2a0ca49..70b7360df 100644
--- a/src/Specific/CurveParameters/solinas32_2e489m21.json
+++ b/src/Specific/CurveParameters/solinas32_2e489m21.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='27' -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='27' -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='27' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='27' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^489 - 21",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e495m31.json b/src/Specific/CurveParameters/solinas32_2e495m31.json
index ade64b4f5..49ec6b730 100644
--- a/src/Specific/CurveParameters/solinas32_2e495m31.json
+++ b/src/Specific/CurveParameters/solinas32_2e495m31.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='19' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='19' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^495 - 31",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e510m290x2e496m1.json b/src/Specific/CurveParameters/solinas32_2e510m290x2e496m1.json
index 5dc3970c0..7bc870940 100644
--- a/src/Specific/CurveParameters/solinas32_2e510m290x2e496m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e510m290x2e496m1.json
@@ -38,8 +38,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^510 - 290*2^496 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e511m187.json b/src/Specific/CurveParameters/solinas32_2e511m187.json
index 4be903c95..6670edab2 100644
--- a/src/Specific/CurveParameters/solinas32_2e511m187.json
+++ b/src/Specific/CurveParameters/solinas32_2e511m187.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
"modulus": "2^511 - 187",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e511m481.json b/src/Specific/CurveParameters/solinas32_2e511m481.json
index 13e1bfefd..fb6a2ff30 100644
--- a/src/Specific/CurveParameters/solinas32_2e511m481.json
+++ b/src/Specific/CurveParameters/solinas32_2e511m481.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
"modulus": "2^511 - 481",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e512m491x2e496m1.json b/src/Specific/CurveParameters/solinas32_2e512m491x2e496m1.json
index 97a698e72..db7d718b8 100644
--- a/src/Specific/CurveParameters/solinas32_2e512m491x2e496m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e512m491x2e496m1.json
@@ -38,8 +38,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^512 - 491*2^496 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e512m569.json b/src/Specific/CurveParameters/solinas32_2e512m569.json
index b867fe828..0ccc2afd0 100644
--- a/src/Specific/CurveParameters/solinas32_2e512m569.json
+++ b/src/Specific/CurveParameters/solinas32_2e512m569.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
"modulus": "2^512 - 569",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas32_2e521m1.json b/src/Specific/CurveParameters/solinas32_2e521m1.json
index 5c9df2989..c2c0c8606 100644
--- a/src/Specific/CurveParameters/solinas32_2e521m1.json
+++ b/src/Specific/CurveParameters/solinas32_2e521m1.json
@@ -3,8 +3,8 @@
"bitwidth": 32,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/20' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/20' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^521 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e127m1.json b/src/Specific/CurveParameters/solinas64_2e127m1.json
index 3095fcca0..139f93f8c 100644
--- a/src/Specific/CurveParameters/solinas64_2e127m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e127m1.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^127 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e129m25.json b/src/Specific/CurveParameters/solinas64_2e129m25.json
index b716aa565..e989638af 100644
--- a/src/Specific/CurveParameters/solinas64_2e129m25.json
+++ b/src/Specific/CurveParameters/solinas64_2e129m25.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,43,43}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,43,43}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^129 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e130m5.json b/src/Specific/CurveParameters/solinas64_2e130m5.json
index dee113b35..f2cbc18e0 100644
--- a/src/Specific/CurveParameters/solinas64_2e130m5.json
+++ b/src/Specific/CurveParameters/solinas64_2e130m5.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{44,43,43}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{44,43,43}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^130 - 5 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e137m13.json b/src/Specific/CurveParameters/solinas64_2e137m13.json
index decc55726..ea8d2c295 100644
--- a/src/Specific/CurveParameters/solinas64_2e137m13.json
+++ b/src/Specific/CurveParameters/solinas64_2e137m13.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='34.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='34.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,34,34,34}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,34,34,34}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}'",
"modulus": "2^137 - 13",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e140m27.json b/src/Specific/CurveParameters/solinas64_2e140m27.json
index fd3f6cc60..337516771 100644
--- a/src/Specific/CurveParameters/solinas64_2e140m27.json
+++ b/src/Specific/CurveParameters/solinas64_2e140m27.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='35' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='35' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,35,35,35}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,35,35,35}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^140 - 27",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e141m9.json b/src/Specific/CurveParameters/solinas64_2e141m9.json
index f0a1dacd5..b5e6fe996 100644
--- a/src/Specific/CurveParameters/solinas64_2e141m9.json
+++ b/src/Specific/CurveParameters/solinas64_2e141m9.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^141 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e150m3.json b/src/Specific/CurveParameters/solinas64_2e150m3.json
index 783d1997a..a8057249b 100644
--- a/src/Specific/CurveParameters/solinas64_2e150m3.json
+++ b/src/Specific/CurveParameters/solinas64_2e150m3.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^150 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e150m5.json b/src/Specific/CurveParameters/solinas64_2e150m5.json
index 3434a32c6..1e716f5b0 100644
--- a/src/Specific/CurveParameters/solinas64_2e150m5.json
+++ b/src/Specific/CurveParameters/solinas64_2e150m5.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^150 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e152m17.json b/src/Specific/CurveParameters/solinas64_2e152m17.json
index 569f4b26e..fe3f2a1ba 100644
--- a/src/Specific/CurveParameters/solinas64_2e152m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e152m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{38,38,38,38}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{38,38,38,38}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^152 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e158m15.json b/src/Specific/CurveParameters/solinas64_2e158m15.json
index 84f3c87d6..ef673ddb5 100644
--- a/src/Specific/CurveParameters/solinas64_2e158m15.json
+++ b/src/Specific/CurveParameters/solinas64_2e158m15.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='39.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='39.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{40,39,40,39}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{40,39,40,39}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^158 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e165m25.json b/src/Specific/CurveParameters/solinas64_2e165m25.json
index c934362af..a42ac4d31 100644
--- a/src/Specific/CurveParameters/solinas64_2e165m25.json
+++ b/src/Specific/CurveParameters/solinas64_2e165m25.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^165 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e166m5.json b/src/Specific/CurveParameters/solinas64_2e166m5.json
index cd92f4769..6a64480f2 100644
--- a/src/Specific/CurveParameters/solinas64_2e166m5.json
+++ b/src/Specific/CurveParameters/solinas64_2e166m5.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^166 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e171m19.json b/src/Specific/CurveParameters/solinas64_2e171m19.json
index cff7c5e78..1692e2c95 100644
--- a/src/Specific/CurveParameters/solinas64_2e171m19.json
+++ b/src/Specific/CurveParameters/solinas64_2e171m19.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^171 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e174m17.json b/src/Specific/CurveParameters/solinas64_2e174m17.json
index 1738ee20c..bc8053075 100644
--- a/src/Specific/CurveParameters/solinas64_2e174m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e174m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^174 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e174m3.json b/src/Specific/CurveParameters/solinas64_2e174m3.json
index dbebb7ec4..c9a768793 100644
--- a/src/Specific/CurveParameters/solinas64_2e174m3.json
+++ b/src/Specific/CurveParameters/solinas64_2e174m3.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^174 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e189m25.json b/src/Specific/CurveParameters/solinas64_2e189m25.json
index dcadb002e..c07b6765b 100644
--- a/src/Specific/CurveParameters/solinas64_2e189m25.json
+++ b/src/Specific/CurveParameters/solinas64_2e189m25.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,47,47}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,47,47}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^189 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e190m11.json b/src/Specific/CurveParameters/solinas64_2e190m11.json
index 9de0096ad..53cd17813 100644
--- a/src/Specific/CurveParameters/solinas64_2e190m11.json
+++ b/src/Specific/CurveParameters/solinas64_2e190m11.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,48,47}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,48,47}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}'",
"modulus": "2^190 - 11",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e191m19.json b/src/Specific/CurveParameters/solinas64_2e191m19.json
index 1827cefc5..91e6ea21c 100644
--- a/src/Specific/CurveParameters/solinas64_2e191m19.json
+++ b/src/Specific/CurveParameters/solinas64_2e191m19.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^191 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e192m2e64m1.json b/src/Specific/CurveParameters/solinas64_2e192m2e64m1.json
index 37aae3d35..184b2a1d3 100644
--- a/src/Specific/CurveParameters/solinas64_2e192m2e64m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e192m2e64m1.json
@@ -18,8 +18,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^192 - 2^64 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e194m33.json b/src/Specific/CurveParameters/solinas64_2e194m33.json
index e56de1284..5a66543df 100644
--- a/src/Specific/CurveParameters/solinas64_2e194m33.json
+++ b/src/Specific/CurveParameters/solinas64_2e194m33.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,48,49,48}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,48,49,48}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}'",
"modulus": "2^194 - 33",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e196m15.json b/src/Specific/CurveParameters/solinas64_2e196m15.json
index 2de4b6974..f1ff57cb3 100644
--- a/src/Specific/CurveParameters/solinas64_2e196m15.json
+++ b/src/Specific/CurveParameters/solinas64_2e196m15.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,49,49,49}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,49,49,49}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^196 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e198m17.json b/src/Specific/CurveParameters/solinas64_2e198m17.json
index 2edabae98..35c423a88 100644
--- a/src/Specific/CurveParameters/solinas64_2e198m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e198m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,49,50,49}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,49,50,49}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^198 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e205m45x2e198m1.json b/src/Specific/CurveParameters/solinas64_2e205m45x2e198m1.json
index 6440d7542..a1819a7c4 100644
--- a/src/Specific/CurveParameters/solinas64_2e205m45x2e198m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e205m45x2e198m1.json
@@ -18,8 +18,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,51,51}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,51,51}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^205 - 45*2^198 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e206m5.json b/src/Specific/CurveParameters/solinas64_2e206m5.json
index 5f5c2cee3..bfa5aa9f9 100644
--- a/src/Specific/CurveParameters/solinas64_2e206m5.json
+++ b/src/Specific/CurveParameters/solinas64_2e206m5.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,52,51}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,52,51}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^206 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e212m29.json b/src/Specific/CurveParameters/solinas64_2e212m29.json
index d1cf4d9b8..1211f69d9 100644
--- a/src/Specific/CurveParameters/solinas64_2e212m29.json
+++ b/src/Specific/CurveParameters/solinas64_2e212m29.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,53,53,53}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,53,53,53}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}'",
"modulus": "2^212 - 29",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e213m3.json b/src/Specific/CurveParameters/solinas64_2e213m3.json
index 1f3cfce9d..286ef0b53 100644
--- a/src/Specific/CurveParameters/solinas64_2e213m3.json
+++ b/src/Specific/CurveParameters/solinas64_2e213m3.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^213 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e216m2e108m1.json b/src/Specific/CurveParameters/solinas64_2e216m2e108m1.json
index 8b60de334..8a3f5522f 100644
--- a/src/Specific/CurveParameters/solinas64_2e216m2e108m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e216m2e108m1.json
@@ -18,8 +18,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,54,54,54}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,54,54,54}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^216 - 2^108 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas64_2e221m3.json b/src/Specific/CurveParameters/solinas64_2e221m3.json
index ec334e162..912a3efd9 100644
--- a/src/Specific/CurveParameters/solinas64_2e221m3.json
+++ b/src/Specific/CurveParameters/solinas64_2e221m3.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55,55}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55,55}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^221 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e222m117.json b/src/Specific/CurveParameters/solinas64_2e222m117.json
index 96eb9a305..8c6b9d5d7 100644
--- a/src/Specific/CurveParameters/solinas64_2e222m117.json
+++ b/src/Specific/CurveParameters/solinas64_2e222m117.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}'",
"modulus": "2^222 - 117",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e224m2e96p1.json b/src/Specific/CurveParameters/solinas64_2e224m2e96p1.json
index 518ab87bd..42e3b4ac3 100644
--- a/src/Specific/CurveParameters/solinas64_2e224m2e96p1.json
+++ b/src/Specific/CurveParameters/solinas64_2e224m2e96p1.json
@@ -18,8 +18,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}'",
"modulus": "2^224 - 2^96 + 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e226m5.json b/src/Specific/CurveParameters/solinas64_2e226m5.json
index 1ae2a4702..e7fbaeb39 100644
--- a/src/Specific/CurveParameters/solinas64_2e226m5.json
+++ b/src/Specific/CurveParameters/solinas64_2e226m5.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}'",
"modulus": "2^226 - 5",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e230m27.json b/src/Specific/CurveParameters/solinas64_2e230m27.json
index 639a0c4e3..b6e0c9387 100644
--- a/src/Specific/CurveParameters/solinas64_2e230m27.json
+++ b/src/Specific/CurveParameters/solinas64_2e230m27.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,57,58,57}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,57,58,57}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}'",
"modulus": "2^230 - 27",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e235m15.json b/src/Specific/CurveParameters/solinas64_2e235m15.json
index b6ee2587b..18946c194 100644
--- a/src/Specific/CurveParameters/solinas64_2e235m15.json
+++ b/src/Specific/CurveParameters/solinas64_2e235m15.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^235 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e243m9.json b/src/Specific/CurveParameters/solinas64_2e243m9.json
index f8a76ad37..d1b4488ea 100644
--- a/src/Specific/CurveParameters/solinas64_2e243m9.json
+++ b/src/Specific/CurveParameters/solinas64_2e243m9.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='40.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='40.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^243 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e251m9.json b/src/Specific/CurveParameters/solinas64_2e251m9.json
index ab217d5af..38e1c95bd 100644
--- a/src/Specific/CurveParameters/solinas64_2e251m9.json
+++ b/src/Specific/CurveParameters/solinas64_2e251m9.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^251 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e254m127x2e240m1.json b/src/Specific/CurveParameters/solinas64_2e254m127x2e240m1.json
index 42ed9175f..2857ec60f 100644
--- a/src/Specific/CurveParameters/solinas64_2e254m127x2e240m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e254m127x2e240m1.json
@@ -20,8 +20,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^254 - 127*2^240 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e255m19.json b/src/Specific/CurveParameters/solinas64_2e255m19.json
index 633407671..138488c1e 100644
--- a/src/Specific/CurveParameters/solinas64_2e255m19.json
+++ b/src/Specific/CurveParameters/solinas64_2e255m19.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 19 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e255m2e4m2e1m1.json b/src/Specific/CurveParameters/solinas64_2e255m2e4m2e1m1.json
index 7ecb9a2b7..b96ff85cc 100644
--- a/src/Specific/CurveParameters/solinas64_2e255m2e4m2e1m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e255m2e4m2e1m1.json
@@ -20,8 +20,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^255 - 2^4 - 2^1 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e255m765.json b/src/Specific/CurveParameters/solinas64_2e255m765.json
index 118ec337c..502693cb0 100644
--- a/src/Specific/CurveParameters/solinas64_2e255m765.json
+++ b/src/Specific/CurveParameters/solinas64_2e255m765.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}'",
"modulus": "2^255 - 765",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e256m189.json b/src/Specific/CurveParameters/solinas64_2e256m189.json
index c1bfed742..9f35edeaf 100644
--- a/src/Specific/CurveParameters/solinas64_2e256m189.json
+++ b/src/Specific/CurveParameters/solinas64_2e256m189.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}'",
"modulus": "2^256 - 189",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1.json b/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1.json
index 7d9c8b5bc..429ae2372 100644
--- a/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1.json
@@ -23,8 +23,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e256m2e32m977.json b/src/Specific/CurveParameters/solinas64_2e256m2e32m977.json
index 546567a7f..281fdb42b 100644
--- a/src/Specific/CurveParameters/solinas64_2e256m2e32m977.json
+++ b/src/Specific/CurveParameters/solinas64_2e256m2e32m977.json
@@ -18,8 +18,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}'",
"modulus": "2^256 - 2^32 - 977 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e256m88x2e240m1.json b/src/Specific/CurveParameters/solinas64_2e256m88x2e240m1.json
index 03b1bc18a..63668d3fc 100644
--- a/src/Specific/CurveParameters/solinas64_2e256m88x2e240m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e256m88x2e240m1.json
@@ -19,8 +19,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^256 - 88*2^240 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e266m3.json b/src/Specific/CurveParameters/solinas64_2e266m3.json
index 05496972b..fd4b0defd 100644
--- a/src/Specific/CurveParameters/solinas64_2e266m3.json
+++ b/src/Specific/CurveParameters/solinas64_2e266m3.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^266 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e285m9.json b/src/Specific/CurveParameters/solinas64_2e285m9.json
index 7b5ae8b51..634d622a7 100644
--- a/src/Specific/CurveParameters/solinas64_2e285m9.json
+++ b/src/Specific/CurveParameters/solinas64_2e285m9.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^285 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e291m19.json b/src/Specific/CurveParameters/solinas64_2e291m19.json
index 2190bea34..ec8dd813f 100644
--- a/src/Specific/CurveParameters/solinas64_2e291m19.json
+++ b/src/Specific/CurveParameters/solinas64_2e291m19.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^291 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e321m9.json b/src/Specific/CurveParameters/solinas64_2e321m9.json
index e85705f80..81c673c0a 100644
--- a/src/Specific/CurveParameters/solinas64_2e321m9.json
+++ b/src/Specific/CurveParameters/solinas64_2e321m9.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}'",
"modulus": "2^321 - 9",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e322m2e161m1.json b/src/Specific/CurveParameters/solinas64_2e322m2e161m1.json
index 400e9945a..ed2aac77e 100644
--- a/src/Specific/CurveParameters/solinas64_2e322m2e161m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e322m2e161m1.json
@@ -21,8 +21,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^322 - 2^161 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas64_2e336m17.json b/src/Specific/CurveParameters/solinas64_2e336m17.json
index c6df4b7c7..37eb3b08e 100644
--- a/src/Specific/CurveParameters/solinas64_2e336m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e336m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^336 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e336m3.json b/src/Specific/CurveParameters/solinas64_2e336m3.json
index 70711e0ab..9c401f859 100644
--- a/src/Specific/CurveParameters/solinas64_2e336m3.json
+++ b/src/Specific/CurveParameters/solinas64_2e336m3.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^336 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e338m15.json b/src/Specific/CurveParameters/solinas64_2e338m15.json
index 4ccf7c67d..70939a88a 100644
--- a/src/Specific/CurveParameters/solinas64_2e338m15.json
+++ b/src/Specific/CurveParameters/solinas64_2e338m15.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}'",
"modulus": "2^338 - 15",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e369m25.json b/src/Specific/CurveParameters/solinas64_2e369m25.json
index 9c826e021..135356683 100644
--- a/src/Specific/CurveParameters/solinas64_2e369m25.json
+++ b/src/Specific/CurveParameters/solinas64_2e369m25.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}'",
"modulus": "2^369 - 25",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e379m19.json b/src/Specific/CurveParameters/solinas64_2e379m19.json
index 2308b59d5..10925c97c 100644
--- a/src/Specific/CurveParameters/solinas64_2e379m19.json
+++ b/src/Specific/CurveParameters/solinas64_2e379m19.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/7' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/7' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}'",
"modulus": "2^379 - 19",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e382m105.json b/src/Specific/CurveParameters/solinas64_2e382m105.json
index a2dcfe55c..e63bcfd90 100644
--- a/src/Specific/CurveParameters/solinas64_2e382m105.json
+++ b/src/Specific/CurveParameters/solinas64_2e382m105.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}'",
"modulus": "2^382 - 105",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1.json b/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1.json
index d1de7f0b2..1756b6a50 100644
--- a/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1.json
@@ -26,8 +26,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e384m317.json b/src/Specific/CurveParameters/solinas64_2e384m317.json
index c115facb6..accd1ff0c 100644
--- a/src/Specific/CurveParameters/solinas64_2e384m317.json
+++ b/src/Specific/CurveParameters/solinas64_2e384m317.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}'",
"modulus": "2^384 - 317",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e384m5x2e368m1.json b/src/Specific/CurveParameters/solinas64_2e384m5x2e368m1.json
index 854a23887..88d77efcf 100644
--- a/src/Specific/CurveParameters/solinas64_2e384m5x2e368m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e384m5x2e368m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 5*2^368 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e384m79x2e376m1.json b/src/Specific/CurveParameters/solinas64_2e384m79x2e376m1.json
index 43b206589..dc2999cd2 100644
--- a/src/Specific/CurveParameters/solinas64_2e384m79x2e376m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e384m79x2e376m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^384 - 79*2^376 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e401m31.json b/src/Specific/CurveParameters/solinas64_2e401m31.json
index 8358bb83b..7fdfacbf1 100644
--- a/src/Specific/CurveParameters/solinas64_2e401m31.json
+++ b/src/Specific/CurveParameters/solinas64_2e401m31.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^401 - 31",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e413m21.json b/src/Specific/CurveParameters/solinas64_2e413m21.json
index 5e593f05d..cf8c85988 100644
--- a/src/Specific/CurveParameters/solinas64_2e413m21.json
+++ b/src/Specific/CurveParameters/solinas64_2e413m21.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='59' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='59' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^413 - 21",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e414m17.json b/src/Specific/CurveParameters/solinas64_2e414m17.json
index 000a550af..e7f248b7e 100644
--- a/src/Specific/CurveParameters/solinas64_2e414m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e414m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^414 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e416m2e208m1.json b/src/Specific/CurveParameters/solinas64_2e416m2e208m1.json
index 81e095aed..d932ae618 100644
--- a/src/Specific/CurveParameters/solinas64_2e416m2e208m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e416m2e208m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^416 - 2^208 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas64_2e444m17.json b/src/Specific/CurveParameters/solinas64_2e444m17.json
index c59b3f348..92f780de8 100644
--- a/src/Specific/CurveParameters/solinas64_2e444m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e444m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^444 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e448m2e224m1.json b/src/Specific/CurveParameters/solinas64_2e448m2e224m1.json
index 4bd5bf22c..44159dca3 100644
--- a/src/Specific/CurveParameters/solinas64_2e448m2e224m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e448m2e224m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^448 - 2^224 - 1 ",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas64_2e450m2e225m1.json b/src/Specific/CurveParameters/solinas64_2e450m2e225m1.json
index bca40dea2..92f1edfa5 100644
--- a/src/Specific/CurveParameters/solinas64_2e450m2e225m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e450m2e225m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^450 - 2^225 - 1",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas64_2e452m3.json b/src/Specific/CurveParameters/solinas64_2e452m3.json
index 3fd1870e7..e8afad1d7 100644
--- a/src/Specific/CurveParameters/solinas64_2e452m3.json
+++ b/src/Specific/CurveParameters/solinas64_2e452m3.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}'",
"modulus": "2^452 - 3",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e468m17.json b/src/Specific/CurveParameters/solinas64_2e468m17.json
index 751c1fa7f..ecd5fda04 100644
--- a/src/Specific/CurveParameters/solinas64_2e468m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e468m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^468 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e480m2e240m1.json b/src/Specific/CurveParameters/solinas64_2e480m2e240m1.json
index 247ce0996..22909f03f 100644
--- a/src/Specific/CurveParameters/solinas64_2e480m2e240m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e480m2e240m1.json
@@ -22,8 +22,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='60' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='60' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"goldilocks": true,
"modulus": "2^480 - 2^240 - 1 ",
"operations": [
diff --git a/src/Specific/CurveParameters/solinas64_2e488m17.json b/src/Specific/CurveParameters/solinas64_2e488m17.json
index 37b1c5a18..44523ef01 100644
--- a/src/Specific/CurveParameters/solinas64_2e488m17.json
+++ b/src/Specific/CurveParameters/solinas64_2e488m17.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}'",
"modulus": "2^488 - 17",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e489m21.json b/src/Specific/CurveParameters/solinas64_2e489m21.json
index 82431cf74..4935acb6b 100644
--- a/src/Specific/CurveParameters/solinas64_2e489m21.json
+++ b/src/Specific/CurveParameters/solinas64_2e489m21.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}'",
"modulus": "2^489 - 21",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e495m31.json b/src/Specific/CurveParameters/solinas64_2e495m31.json
index 14078d6b4..e110fc584 100644
--- a/src/Specific/CurveParameters/solinas64_2e495m31.json
+++ b/src/Specific/CurveParameters/solinas64_2e495m31.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}'",
"modulus": "2^495 - 31",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e510m290x2e496m1.json b/src/Specific/CurveParameters/solinas64_2e510m290x2e496m1.json
index 2e843b9aa..b8a54f1b9 100644
--- a/src/Specific/CurveParameters/solinas64_2e510m290x2e496m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e510m290x2e496m1.json
@@ -24,8 +24,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^510 - 290*2^496 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e511m187.json b/src/Specific/CurveParameters/solinas64_2e511m187.json
index deab96640..ec22848fc 100644
--- a/src/Specific/CurveParameters/solinas64_2e511m187.json
+++ b/src/Specific/CurveParameters/solinas64_2e511m187.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}'",
"modulus": "2^511 - 187",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e511m481.json b/src/Specific/CurveParameters/solinas64_2e511m481.json
index ec721bb70..258dc426b 100644
--- a/src/Specific/CurveParameters/solinas64_2e511m481.json
+++ b/src/Specific/CurveParameters/solinas64_2e511m481.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}'",
"modulus": "2^511 - 481",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e512m491x2e496m1.json b/src/Specific/CurveParameters/solinas64_2e512m491x2e496m1.json
index 35d60f727..8eba6463c 100644
--- a/src/Specific/CurveParameters/solinas64_2e512m491x2e496m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e512m491x2e496m1.json
@@ -24,8 +24,8 @@
]
],
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^512 - 491*2^496 - 1",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e512m569.json b/src/Specific/CurveParameters/solinas64_2e512m569.json
index be1ff44bf..c23a42528 100644
--- a/src/Specific/CurveParameters/solinas64_2e512m569.json
+++ b/src/Specific/CurveParameters/solinas64_2e512m569.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}'",
"modulus": "2^512 - 569",
"operations": [
"femul",
diff --git a/src/Specific/CurveParameters/solinas64_2e521m1.json b/src/Specific/CurveParameters/solinas64_2e521m1.json
index 55568a7d2..07bb1e77c 100644
--- a/src/Specific/CurveParameters/solinas64_2e521m1.json
+++ b/src/Specific/CurveParameters/solinas64_2e521m1.json
@@ -3,8 +3,8 @@
"bitwidth": 64,
"carry_chains": "default",
"coef_div_modulus": "2",
- "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
- "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compiler": "gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
+ "compilerxx": "g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}'",
"modulus": "2^521 - 1 ",
"operations": [
"femul",
diff --git a/src/Specific/montgomery32_2e127m1/compiler.sh b/src/Specific/montgomery32_2e127m1/compiler.sh
index b6ca853f3..ef2363f26 100755
--- a/src/Specific/montgomery32_2e127m1/compiler.sh
+++ b/src/Specific/montgomery32_2e127m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e127m1/compilerxx.sh b/src/Specific/montgomery32_2e127m1/compilerxx.sh
index 92a46a04c..fb035a759 100755
--- a/src/Specific/montgomery32_2e127m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e127m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e129m25/compiler.sh b/src/Specific/montgomery32_2e129m25/compiler.sh
index a405667e5..92363a22f 100755
--- a/src/Specific/montgomery32_2e129m25/compiler.sh
+++ b/src/Specific/montgomery32_2e129m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e129m25/compilerxx.sh b/src/Specific/montgomery32_2e129m25/compilerxx.sh
index 89740ef61..0d499109d 100755
--- a/src/Specific/montgomery32_2e129m25/compilerxx.sh
+++ b/src/Specific/montgomery32_2e129m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e130m5/compiler.sh b/src/Specific/montgomery32_2e130m5/compiler.sh
index 6561262a5..835eb6bd0 100755
--- a/src/Specific/montgomery32_2e130m5/compiler.sh
+++ b/src/Specific/montgomery32_2e130m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e130m5/compilerxx.sh b/src/Specific/montgomery32_2e130m5/compilerxx.sh
index 1073881a8..b544cb05c 100755
--- a/src/Specific/montgomery32_2e130m5/compilerxx.sh
+++ b/src/Specific/montgomery32_2e130m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e137m13/compiler.sh b/src/Specific/montgomery32_2e137m13/compiler.sh
index 119ec7472..b7e9bef48 100755
--- a/src/Specific/montgomery32_2e137m13/compiler.sh
+++ b/src/Specific/montgomery32_2e137m13/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/montgomery32_2e137m13/compilerxx.sh b/src/Specific/montgomery32_2e137m13/compilerxx.sh
index 609deb731..641bbcc10 100755
--- a/src/Specific/montgomery32_2e137m13/compilerxx.sh
+++ b/src/Specific/montgomery32_2e137m13/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/montgomery32_2e140m27/compiler.sh b/src/Specific/montgomery32_2e140m27/compiler.sh
index a6eae8cbc..e67526c57 100755
--- a/src/Specific/montgomery32_2e140m27/compiler.sh
+++ b/src/Specific/montgomery32_2e140m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery32_2e140m27/compilerxx.sh b/src/Specific/montgomery32_2e140m27/compilerxx.sh
index 78aa2f4e3..e6330f064 100755
--- a/src/Specific/montgomery32_2e140m27/compilerxx.sh
+++ b/src/Specific/montgomery32_2e140m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery32_2e141m9/compiler.sh b/src/Specific/montgomery32_2e141m9/compiler.sh
index caa7818d8..b09810de4 100755
--- a/src/Specific/montgomery32_2e141m9/compiler.sh
+++ b/src/Specific/montgomery32_2e141m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e141m9/compilerxx.sh b/src/Specific/montgomery32_2e141m9/compilerxx.sh
index e79f88d2d..db56ce95d 100755
--- a/src/Specific/montgomery32_2e141m9/compilerxx.sh
+++ b/src/Specific/montgomery32_2e141m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e150m3/compiler.sh b/src/Specific/montgomery32_2e150m3/compiler.sh
index cc101a616..2db6dae6b 100755
--- a/src/Specific/montgomery32_2e150m3/compiler.sh
+++ b/src/Specific/montgomery32_2e150m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e150m3/compilerxx.sh b/src/Specific/montgomery32_2e150m3/compilerxx.sh
index 66f2466f0..d512c0c1b 100755
--- a/src/Specific/montgomery32_2e150m3/compilerxx.sh
+++ b/src/Specific/montgomery32_2e150m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e150m5/compiler.sh b/src/Specific/montgomery32_2e150m5/compiler.sh
index af81812f7..05c638a6e 100755
--- a/src/Specific/montgomery32_2e150m5/compiler.sh
+++ b/src/Specific/montgomery32_2e150m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e150m5/compilerxx.sh b/src/Specific/montgomery32_2e150m5/compilerxx.sh
index ab0ad1549..a0f719701 100755
--- a/src/Specific/montgomery32_2e150m5/compilerxx.sh
+++ b/src/Specific/montgomery32_2e150m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e152m17/compiler.sh b/src/Specific/montgomery32_2e152m17/compiler.sh
index eeb441a0e..caffda5a3 100755
--- a/src/Specific/montgomery32_2e152m17/compiler.sh
+++ b/src/Specific/montgomery32_2e152m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e152m17/compilerxx.sh b/src/Specific/montgomery32_2e152m17/compilerxx.sh
index 6475ab909..f9af97014 100755
--- a/src/Specific/montgomery32_2e152m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e152m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e158m15/compiler.sh b/src/Specific/montgomery32_2e158m15/compiler.sh
index 1dd54ac2d..381491d1e 100755
--- a/src/Specific/montgomery32_2e158m15/compiler.sh
+++ b/src/Specific/montgomery32_2e158m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e158m15/compilerxx.sh b/src/Specific/montgomery32_2e158m15/compilerxx.sh
index 651419152..4b66ab49d 100755
--- a/src/Specific/montgomery32_2e158m15/compilerxx.sh
+++ b/src/Specific/montgomery32_2e158m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e165m25/compiler.sh b/src/Specific/montgomery32_2e165m25/compiler.sh
index b45bc7b2d..ba056bca8 100755
--- a/src/Specific/montgomery32_2e165m25/compiler.sh
+++ b/src/Specific/montgomery32_2e165m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e165m25/compilerxx.sh b/src/Specific/montgomery32_2e165m25/compilerxx.sh
index 022383388..303c296a9 100755
--- a/src/Specific/montgomery32_2e165m25/compilerxx.sh
+++ b/src/Specific/montgomery32_2e165m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e166m5/compiler.sh b/src/Specific/montgomery32_2e166m5/compiler.sh
index 87354afa9..c7d0e2620 100755
--- a/src/Specific/montgomery32_2e166m5/compiler.sh
+++ b/src/Specific/montgomery32_2e166m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e166m5/compilerxx.sh b/src/Specific/montgomery32_2e166m5/compilerxx.sh
index c4dfce23a..baaeb8f06 100755
--- a/src/Specific/montgomery32_2e166m5/compilerxx.sh
+++ b/src/Specific/montgomery32_2e166m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e171m19/compiler.sh b/src/Specific/montgomery32_2e171m19/compiler.sh
index f1215e4b1..c73d9db29 100755
--- a/src/Specific/montgomery32_2e171m19/compiler.sh
+++ b/src/Specific/montgomery32_2e171m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e171m19/compilerxx.sh b/src/Specific/montgomery32_2e171m19/compilerxx.sh
index ee9349341..79d33d9d3 100755
--- a/src/Specific/montgomery32_2e171m19/compilerxx.sh
+++ b/src/Specific/montgomery32_2e171m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e174m17/compiler.sh b/src/Specific/montgomery32_2e174m17/compiler.sh
index c8ff4ebe9..26ce39b6f 100755
--- a/src/Specific/montgomery32_2e174m17/compiler.sh
+++ b/src/Specific/montgomery32_2e174m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e174m17/compilerxx.sh b/src/Specific/montgomery32_2e174m17/compilerxx.sh
index db68486c6..84ca91dc9 100755
--- a/src/Specific/montgomery32_2e174m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e174m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e174m3/compiler.sh b/src/Specific/montgomery32_2e174m3/compiler.sh
index a4ce606b0..2a3d8014d 100755
--- a/src/Specific/montgomery32_2e174m3/compiler.sh
+++ b/src/Specific/montgomery32_2e174m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e174m3/compilerxx.sh b/src/Specific/montgomery32_2e174m3/compilerxx.sh
index d541defb5..7d96c65e5 100755
--- a/src/Specific/montgomery32_2e174m3/compilerxx.sh
+++ b/src/Specific/montgomery32_2e174m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e189m25/compiler.sh b/src/Specific/montgomery32_2e189m25/compiler.sh
index 0a6235c8d..5827182c4 100755
--- a/src/Specific/montgomery32_2e189m25/compiler.sh
+++ b/src/Specific/montgomery32_2e189m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e189m25/compilerxx.sh b/src/Specific/montgomery32_2e189m25/compilerxx.sh
index f14b10fce..fa655286a 100755
--- a/src/Specific/montgomery32_2e189m25/compilerxx.sh
+++ b/src/Specific/montgomery32_2e189m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e190m11/compiler.sh b/src/Specific/montgomery32_2e190m11/compiler.sh
index f60031126..03d8767cf 100755
--- a/src/Specific/montgomery32_2e190m11/compiler.sh
+++ b/src/Specific/montgomery32_2e190m11/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/montgomery32_2e190m11/compilerxx.sh b/src/Specific/montgomery32_2e190m11/compilerxx.sh
index de72c1df7..3600e6475 100755
--- a/src/Specific/montgomery32_2e190m11/compilerxx.sh
+++ b/src/Specific/montgomery32_2e190m11/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/montgomery32_2e191m19/compiler.sh b/src/Specific/montgomery32_2e191m19/compiler.sh
index 8bf76bffd..de34ddd7d 100755
--- a/src/Specific/montgomery32_2e191m19/compiler.sh
+++ b/src/Specific/montgomery32_2e191m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e191m19/compilerxx.sh b/src/Specific/montgomery32_2e191m19/compilerxx.sh
index be9bb0a56..4d210bf1d 100755
--- a/src/Specific/montgomery32_2e191m19/compilerxx.sh
+++ b/src/Specific/montgomery32_2e191m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e192m2e64m1/compiler.sh b/src/Specific/montgomery32_2e192m2e64m1/compiler.sh
index 5d0a8d29b..bbeeccc37 100755
--- a/src/Specific/montgomery32_2e192m2e64m1/compiler.sh
+++ b/src/Specific/montgomery32_2e192m2e64m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e192m2e64m1/compilerxx.sh b/src/Specific/montgomery32_2e192m2e64m1/compilerxx.sh
index 1c377accc..5222fe517 100755
--- a/src/Specific/montgomery32_2e192m2e64m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e192m2e64m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e194m33/compiler.sh b/src/Specific/montgomery32_2e194m33/compiler.sh
index df4fe3828..31595db1b 100755
--- a/src/Specific/montgomery32_2e194m33/compiler.sh
+++ b/src/Specific/montgomery32_2e194m33/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/montgomery32_2e194m33/compilerxx.sh b/src/Specific/montgomery32_2e194m33/compilerxx.sh
index 92be10592..1e5df9fa5 100755
--- a/src/Specific/montgomery32_2e194m33/compilerxx.sh
+++ b/src/Specific/montgomery32_2e194m33/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/montgomery32_2e196m15/compiler.sh b/src/Specific/montgomery32_2e196m15/compiler.sh
index 15194527c..11697c7da 100755
--- a/src/Specific/montgomery32_2e196m15/compiler.sh
+++ b/src/Specific/montgomery32_2e196m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e196m15/compilerxx.sh b/src/Specific/montgomery32_2e196m15/compilerxx.sh
index 9d25e9475..d45280ae8 100755
--- a/src/Specific/montgomery32_2e196m15/compilerxx.sh
+++ b/src/Specific/montgomery32_2e196m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e198m17/compiler.sh b/src/Specific/montgomery32_2e198m17/compiler.sh
index 0b7a1c9b2..616f52882 100755
--- a/src/Specific/montgomery32_2e198m17/compiler.sh
+++ b/src/Specific/montgomery32_2e198m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e198m17/compilerxx.sh b/src/Specific/montgomery32_2e198m17/compilerxx.sh
index 1da3f9764..039851c1d 100755
--- a/src/Specific/montgomery32_2e198m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e198m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1/compiler.sh b/src/Specific/montgomery32_2e205m45x2e198m1/compiler.sh
index b5fc515d1..ae4db8b3e 100755
--- a/src/Specific/montgomery32_2e205m45x2e198m1/compiler.sh
+++ b/src/Specific/montgomery32_2e205m45x2e198m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1/compilerxx.sh b/src/Specific/montgomery32_2e205m45x2e198m1/compilerxx.sh
index fee1c61e5..96c1457eb 100755
--- a/src/Specific/montgomery32_2e205m45x2e198m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e205m45x2e198m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e206m5/compiler.sh b/src/Specific/montgomery32_2e206m5/compiler.sh
index e6863f478..78069d527 100755
--- a/src/Specific/montgomery32_2e206m5/compiler.sh
+++ b/src/Specific/montgomery32_2e206m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e206m5/compilerxx.sh b/src/Specific/montgomery32_2e206m5/compilerxx.sh
index a444dfa8b..8781c6939 100755
--- a/src/Specific/montgomery32_2e206m5/compilerxx.sh
+++ b/src/Specific/montgomery32_2e206m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e212m29/compiler.sh b/src/Specific/montgomery32_2e212m29/compiler.sh
index 1274faf1c..c4c8c25b2 100755
--- a/src/Specific/montgomery32_2e212m29/compiler.sh
+++ b/src/Specific/montgomery32_2e212m29/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/montgomery32_2e212m29/compilerxx.sh b/src/Specific/montgomery32_2e212m29/compilerxx.sh
index 32a7fdefd..c1fdcf0b3 100755
--- a/src/Specific/montgomery32_2e212m29/compilerxx.sh
+++ b/src/Specific/montgomery32_2e212m29/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/montgomery32_2e213m3/compiler.sh b/src/Specific/montgomery32_2e213m3/compiler.sh
index 5d108ca62..4620e4746 100755
--- a/src/Specific/montgomery32_2e213m3/compiler.sh
+++ b/src/Specific/montgomery32_2e213m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e213m3/compilerxx.sh b/src/Specific/montgomery32_2e213m3/compilerxx.sh
index 0b71bd7dd..4936b7fd2 100755
--- a/src/Specific/montgomery32_2e213m3/compilerxx.sh
+++ b/src/Specific/montgomery32_2e213m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e216m2e108m1/compiler.sh b/src/Specific/montgomery32_2e216m2e108m1/compiler.sh
index cb3e72627..322380d70 100755
--- a/src/Specific/montgomery32_2e216m2e108m1/compiler.sh
+++ b/src/Specific/montgomery32_2e216m2e108m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e216m2e108m1/compilerxx.sh b/src/Specific/montgomery32_2e216m2e108m1/compilerxx.sh
index 530f103a9..34120ca8a 100755
--- a/src/Specific/montgomery32_2e216m2e108m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e216m2e108m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e221m3/compiler.sh b/src/Specific/montgomery32_2e221m3/compiler.sh
index 8d38bb907..6c011a2d3 100755
--- a/src/Specific/montgomery32_2e221m3/compiler.sh
+++ b/src/Specific/montgomery32_2e221m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e221m3/compilerxx.sh b/src/Specific/montgomery32_2e221m3/compilerxx.sh
index 10aed3412..10192023b 100755
--- a/src/Specific/montgomery32_2e221m3/compilerxx.sh
+++ b/src/Specific/montgomery32_2e221m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e222m117/compiler.sh b/src/Specific/montgomery32_2e222m117/compiler.sh
index 553282e0f..bca179542 100755
--- a/src/Specific/montgomery32_2e222m117/compiler.sh
+++ b/src/Specific/montgomery32_2e222m117/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/montgomery32_2e222m117/compilerxx.sh b/src/Specific/montgomery32_2e222m117/compilerxx.sh
index 704a25089..31717254e 100755
--- a/src/Specific/montgomery32_2e222m117/compilerxx.sh
+++ b/src/Specific/montgomery32_2e222m117/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/montgomery32_2e224m2e96p1/compiler.sh b/src/Specific/montgomery32_2e224m2e96p1/compiler.sh
index 0e71986b2..046072d60 100755
--- a/src/Specific/montgomery32_2e224m2e96p1/compiler.sh
+++ b/src/Specific/montgomery32_2e224m2e96p1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/montgomery32_2e224m2e96p1/compilerxx.sh b/src/Specific/montgomery32_2e224m2e96p1/compilerxx.sh
index ebe175ba7..0e61c268a 100755
--- a/src/Specific/montgomery32_2e224m2e96p1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e224m2e96p1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/montgomery32_2e226m5/compiler.sh b/src/Specific/montgomery32_2e226m5/compiler.sh
index b18a50270..b6fd37621 100755
--- a/src/Specific/montgomery32_2e226m5/compiler.sh
+++ b/src/Specific/montgomery32_2e226m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e226m5/compilerxx.sh b/src/Specific/montgomery32_2e226m5/compilerxx.sh
index 55866d146..c69425f58 100755
--- a/src/Specific/montgomery32_2e226m5/compilerxx.sh
+++ b/src/Specific/montgomery32_2e226m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery32_2e230m27/compiler.sh b/src/Specific/montgomery32_2e230m27/compiler.sh
index ff9b2ccc8..16201dbb4 100755
--- a/src/Specific/montgomery32_2e230m27/compiler.sh
+++ b/src/Specific/montgomery32_2e230m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery32_2e230m27/compilerxx.sh b/src/Specific/montgomery32_2e230m27/compilerxx.sh
index 43cffd79a..2e1ca79cc 100755
--- a/src/Specific/montgomery32_2e230m27/compilerxx.sh
+++ b/src/Specific/montgomery32_2e230m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery32_2e235m15/compiler.sh b/src/Specific/montgomery32_2e235m15/compiler.sh
index 7bf99f903..84cf90400 100755
--- a/src/Specific/montgomery32_2e235m15/compiler.sh
+++ b/src/Specific/montgomery32_2e235m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e235m15/compilerxx.sh b/src/Specific/montgomery32_2e235m15/compilerxx.sh
index 37514ff3d..23164c9b7 100755
--- a/src/Specific/montgomery32_2e235m15/compilerxx.sh
+++ b/src/Specific/montgomery32_2e235m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e243m9/compiler.sh b/src/Specific/montgomery32_2e243m9/compiler.sh
index 8c9d18d49..3c7e58ae6 100755
--- a/src/Specific/montgomery32_2e243m9/compiler.sh
+++ b/src/Specific/montgomery32_2e243m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e243m9/compilerxx.sh b/src/Specific/montgomery32_2e243m9/compilerxx.sh
index 327058797..976f91913 100755
--- a/src/Specific/montgomery32_2e243m9/compilerxx.sh
+++ b/src/Specific/montgomery32_2e243m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e251m9/compiler.sh b/src/Specific/montgomery32_2e251m9/compiler.sh
index 368a0aa16..a39ca4e04 100755
--- a/src/Specific/montgomery32_2e251m9/compiler.sh
+++ b/src/Specific/montgomery32_2e251m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e251m9/compilerxx.sh b/src/Specific/montgomery32_2e251m9/compilerxx.sh
index 35b647875..bdfb52c33 100755
--- a/src/Specific/montgomery32_2e251m9/compilerxx.sh
+++ b/src/Specific/montgomery32_2e251m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1/compiler.sh b/src/Specific/montgomery32_2e254m127x2e240m1/compiler.sh
index c1e665765..1d735d6da 100755
--- a/src/Specific/montgomery32_2e254m127x2e240m1/compiler.sh
+++ b/src/Specific/montgomery32_2e254m127x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1/compilerxx.sh b/src/Specific/montgomery32_2e254m127x2e240m1/compilerxx.sh
index 12d2074ec..d8866f198 100755
--- a/src/Specific/montgomery32_2e254m127x2e240m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e254m127x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e255m19/compiler.sh b/src/Specific/montgomery32_2e255m19/compiler.sh
index e97e560a3..917f13aea 100755
--- a/src/Specific/montgomery32_2e255m19/compiler.sh
+++ b/src/Specific/montgomery32_2e255m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e255m19/compilerxx.sh b/src/Specific/montgomery32_2e255m19/compilerxx.sh
index 35f06cb26..98b434476 100755
--- a/src/Specific/montgomery32_2e255m19/compilerxx.sh
+++ b/src/Specific/montgomery32_2e255m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e255m2e4m2e1m1/compiler.sh b/src/Specific/montgomery32_2e255m2e4m2e1m1/compiler.sh
index ffb1f3ae3..cf31f866c 100755
--- a/src/Specific/montgomery32_2e255m2e4m2e1m1/compiler.sh
+++ b/src/Specific/montgomery32_2e255m2e4m2e1m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e255m2e4m2e1m1/compilerxx.sh b/src/Specific/montgomery32_2e255m2e4m2e1m1/compilerxx.sh
index b688d8b20..17513d1d2 100755
--- a/src/Specific/montgomery32_2e255m2e4m2e1m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e255m2e4m2e1m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e255m765/compiler.sh b/src/Specific/montgomery32_2e255m765/compiler.sh
index 7fb090f42..879d4a260 100755
--- a/src/Specific/montgomery32_2e255m765/compiler.sh
+++ b/src/Specific/montgomery32_2e255m765/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/montgomery32_2e255m765/compilerxx.sh b/src/Specific/montgomery32_2e255m765/compilerxx.sh
index 78e362616..c19031198 100755
--- a/src/Specific/montgomery32_2e255m765/compilerxx.sh
+++ b/src/Specific/montgomery32_2e255m765/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/montgomery32_2e256m189/compiler.sh b/src/Specific/montgomery32_2e256m189/compiler.sh
index 3785111d3..30724ac19 100755
--- a/src/Specific/montgomery32_2e256m189/compiler.sh
+++ b/src/Specific/montgomery32_2e256m189/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/montgomery32_2e256m189/compilerxx.sh b/src/Specific/montgomery32_2e256m189/compilerxx.sh
index 7881f5b69..7f4c2ce7b 100755
--- a/src/Specific/montgomery32_2e256m189/compilerxx.sh
+++ b/src/Specific/montgomery32_2e256m189/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compiler.sh b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compiler.sh
index da4d07103..004992809 100755
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compiler.sh
+++ b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compilerxx.sh b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compilerxx.sh
index 87e8118da..a1998da5f 100755
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e32m977/compiler.sh b/src/Specific/montgomery32_2e256m2e32m977/compiler.sh
index cb0150699..a9021edfd 100755
--- a/src/Specific/montgomery32_2e256m2e32m977/compiler.sh
+++ b/src/Specific/montgomery32_2e256m2e32m977/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e32m977/compilerxx.sh b/src/Specific/montgomery32_2e256m2e32m977/compilerxx.sh
index fcb24ce25..1dc4c4c2d 100755
--- a/src/Specific/montgomery32_2e256m2e32m977/compilerxx.sh
+++ b/src/Specific/montgomery32_2e256m2e32m977/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1/compiler.sh b/src/Specific/montgomery32_2e256m88x2e240m1/compiler.sh
index 3f64b3a9a..c14c2a76a 100755
--- a/src/Specific/montgomery32_2e256m88x2e240m1/compiler.sh
+++ b/src/Specific/montgomery32_2e256m88x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1/compilerxx.sh b/src/Specific/montgomery32_2e256m88x2e240m1/compilerxx.sh
index 45b8813d5..e776f5ab6 100755
--- a/src/Specific/montgomery32_2e256m88x2e240m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e256m88x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e266m3/compiler.sh b/src/Specific/montgomery32_2e266m3/compiler.sh
index 121914c77..acc8154fc 100755
--- a/src/Specific/montgomery32_2e266m3/compiler.sh
+++ b/src/Specific/montgomery32_2e266m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e266m3/compilerxx.sh b/src/Specific/montgomery32_2e266m3/compilerxx.sh
index c6bb253c4..efa433d02 100755
--- a/src/Specific/montgomery32_2e266m3/compilerxx.sh
+++ b/src/Specific/montgomery32_2e266m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e285m9/compiler.sh b/src/Specific/montgomery32_2e285m9/compiler.sh
index 7f0ebc781..6ed3054d1 100755
--- a/src/Specific/montgomery32_2e285m9/compiler.sh
+++ b/src/Specific/montgomery32_2e285m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e285m9/compilerxx.sh b/src/Specific/montgomery32_2e285m9/compilerxx.sh
index 165220c59..8d4988eb3 100755
--- a/src/Specific/montgomery32_2e285m9/compilerxx.sh
+++ b/src/Specific/montgomery32_2e285m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e291m19/compiler.sh b/src/Specific/montgomery32_2e291m19/compiler.sh
index 5fd66f9e4..c0d518699 100755
--- a/src/Specific/montgomery32_2e291m19/compiler.sh
+++ b/src/Specific/montgomery32_2e291m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e291m19/compilerxx.sh b/src/Specific/montgomery32_2e291m19/compilerxx.sh
index f29ac80dd..07a70a77f 100755
--- a/src/Specific/montgomery32_2e291m19/compilerxx.sh
+++ b/src/Specific/montgomery32_2e291m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e321m9/compiler.sh b/src/Specific/montgomery32_2e321m9/compiler.sh
index c7ea0f2db..0ee4c8b05 100755
--- a/src/Specific/montgomery32_2e321m9/compiler.sh
+++ b/src/Specific/montgomery32_2e321m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e321m9/compilerxx.sh b/src/Specific/montgomery32_2e321m9/compilerxx.sh
index c39043e2a..748fd7621 100755
--- a/src/Specific/montgomery32_2e321m9/compilerxx.sh
+++ b/src/Specific/montgomery32_2e321m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery32_2e322m2e161m1/compiler.sh b/src/Specific/montgomery32_2e322m2e161m1/compiler.sh
index ba6fbf222..408441e29 100755
--- a/src/Specific/montgomery32_2e322m2e161m1/compiler.sh
+++ b/src/Specific/montgomery32_2e322m2e161m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e322m2e161m1/compilerxx.sh b/src/Specific/montgomery32_2e322m2e161m1/compilerxx.sh
index 2ad1e63af..5106dc54f 100755
--- a/src/Specific/montgomery32_2e322m2e161m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e322m2e161m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e336m17/compiler.sh b/src/Specific/montgomery32_2e336m17/compiler.sh
index 91db8b1d6..7d9140431 100755
--- a/src/Specific/montgomery32_2e336m17/compiler.sh
+++ b/src/Specific/montgomery32_2e336m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e336m17/compilerxx.sh b/src/Specific/montgomery32_2e336m17/compilerxx.sh
index 54c977341..32a63bb43 100755
--- a/src/Specific/montgomery32_2e336m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e336m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e336m3/compiler.sh b/src/Specific/montgomery32_2e336m3/compiler.sh
index 344e71316..afdffdcdc 100755
--- a/src/Specific/montgomery32_2e336m3/compiler.sh
+++ b/src/Specific/montgomery32_2e336m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e336m3/compilerxx.sh b/src/Specific/montgomery32_2e336m3/compilerxx.sh
index 1d127f903..548013ad5 100755
--- a/src/Specific/montgomery32_2e336m3/compilerxx.sh
+++ b/src/Specific/montgomery32_2e336m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e338m15/compiler.sh b/src/Specific/montgomery32_2e338m15/compiler.sh
index 6ac8d41db..774fcae25 100755
--- a/src/Specific/montgomery32_2e338m15/compiler.sh
+++ b/src/Specific/montgomery32_2e338m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e338m15/compilerxx.sh b/src/Specific/montgomery32_2e338m15/compilerxx.sh
index 49f85c85e..4cf88e291 100755
--- a/src/Specific/montgomery32_2e338m15/compilerxx.sh
+++ b/src/Specific/montgomery32_2e338m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery32_2e369m25/compiler.sh b/src/Specific/montgomery32_2e369m25/compiler.sh
index 01592ecf0..41a8ab56a 100755
--- a/src/Specific/montgomery32_2e369m25/compiler.sh
+++ b/src/Specific/montgomery32_2e369m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e369m25/compilerxx.sh b/src/Specific/montgomery32_2e369m25/compilerxx.sh
index 996f3eb9a..10b84c232 100755
--- a/src/Specific/montgomery32_2e369m25/compilerxx.sh
+++ b/src/Specific/montgomery32_2e369m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery32_2e379m19/compiler.sh b/src/Specific/montgomery32_2e379m19/compiler.sh
index ba7e4e2eb..754bcc0d8 100755
--- a/src/Specific/montgomery32_2e379m19/compiler.sh
+++ b/src/Specific/montgomery32_2e379m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e379m19/compilerxx.sh b/src/Specific/montgomery32_2e379m19/compilerxx.sh
index a1886d719..c8c85c247 100755
--- a/src/Specific/montgomery32_2e379m19/compilerxx.sh
+++ b/src/Specific/montgomery32_2e379m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery32_2e382m105/compiler.sh b/src/Specific/montgomery32_2e382m105/compiler.sh
index 4041c77b3..89040f472 100755
--- a/src/Specific/montgomery32_2e382m105/compiler.sh
+++ b/src/Specific/montgomery32_2e382m105/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/montgomery32_2e382m105/compilerxx.sh b/src/Specific/montgomery32_2e382m105/compilerxx.sh
index 0833548e8..cc4437e05 100755
--- a/src/Specific/montgomery32_2e382m105/compilerxx.sh
+++ b/src/Specific/montgomery32_2e382m105/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/montgomery32_2e383m187/compiler.sh b/src/Specific/montgomery32_2e383m187/compiler.sh
index f8e836529..bdc61131e 100755
--- a/src/Specific/montgomery32_2e383m187/compiler.sh
+++ b/src/Specific/montgomery32_2e383m187/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery32_2e383m187/compilerxx.sh b/src/Specific/montgomery32_2e383m187/compilerxx.sh
index 4a3643c59..cf55ed02c 100755
--- a/src/Specific/montgomery32_2e383m187/compilerxx.sh
+++ b/src/Specific/montgomery32_2e383m187/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery32_2e383m31/compiler.sh b/src/Specific/montgomery32_2e383m31/compiler.sh
index 1aba48354..96d7a0f6f 100755
--- a/src/Specific/montgomery32_2e383m31/compiler.sh
+++ b/src/Specific/montgomery32_2e383m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery32_2e383m31/compilerxx.sh b/src/Specific/montgomery32_2e383m31/compilerxx.sh
index 2e33bd6e8..aed643664 100755
--- a/src/Specific/montgomery32_2e383m31/compilerxx.sh
+++ b/src/Specific/montgomery32_2e383m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery32_2e383m421/compiler.sh b/src/Specific/montgomery32_2e383m421/compiler.sh
index 6c4ef5264..e737acce1 100755
--- a/src/Specific/montgomery32_2e383m421/compiler.sh
+++ b/src/Specific/montgomery32_2e383m421/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
diff --git a/src/Specific/montgomery32_2e383m421/compilerxx.sh b/src/Specific/montgomery32_2e383m421/compilerxx.sh
index 8ed7507a0..65a2992fe 100755
--- a/src/Specific/montgomery32_2e383m421/compilerxx.sh
+++ b/src/Specific/montgomery32_2e383m421/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compiler.sh b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compiler.sh
index 28504d406..5a4f9a985 100755
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compiler.sh
+++ b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compilerxx.sh b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compilerxx.sh
index c6c3f50ce..78b395592 100755
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e384m317/compiler.sh b/src/Specific/montgomery32_2e384m317/compiler.sh
index 61a1b9273..39d667b43 100755
--- a/src/Specific/montgomery32_2e384m317/compiler.sh
+++ b/src/Specific/montgomery32_2e384m317/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/montgomery32_2e384m317/compilerxx.sh b/src/Specific/montgomery32_2e384m317/compilerxx.sh
index f8e51bb50..83a9fcf3e 100755
--- a/src/Specific/montgomery32_2e384m317/compilerxx.sh
+++ b/src/Specific/montgomery32_2e384m317/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1/compiler.sh b/src/Specific/montgomery32_2e384m5x2e368m1/compiler.sh
index caf515f61..7285c4c85 100755
--- a/src/Specific/montgomery32_2e384m5x2e368m1/compiler.sh
+++ b/src/Specific/montgomery32_2e384m5x2e368m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1/compilerxx.sh b/src/Specific/montgomery32_2e384m5x2e368m1/compilerxx.sh
index 80cdc5dcf..d5b485286 100755
--- a/src/Specific/montgomery32_2e384m5x2e368m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e384m5x2e368m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1/compiler.sh b/src/Specific/montgomery32_2e384m79x2e376m1/compiler.sh
index 9365d9b43..bc82ea195 100755
--- a/src/Specific/montgomery32_2e384m79x2e376m1/compiler.sh
+++ b/src/Specific/montgomery32_2e384m79x2e376m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1/compilerxx.sh b/src/Specific/montgomery32_2e384m79x2e376m1/compilerxx.sh
index 3d144d0ae..1bd78a87c 100755
--- a/src/Specific/montgomery32_2e384m79x2e376m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e384m79x2e376m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e389m21/compiler.sh b/src/Specific/montgomery32_2e389m21/compiler.sh
index 36a4d3c56..69cd4f7e5 100755
--- a/src/Specific/montgomery32_2e389m21/compiler.sh
+++ b/src/Specific/montgomery32_2e389m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery32_2e389m21/compilerxx.sh b/src/Specific/montgomery32_2e389m21/compilerxx.sh
index 491c73288..121d9ebc9 100755
--- a/src/Specific/montgomery32_2e389m21/compilerxx.sh
+++ b/src/Specific/montgomery32_2e389m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery32_2e401m31/compiler.sh b/src/Specific/montgomery32_2e401m31/compiler.sh
index d77da65ba..7bc41f814 100755
--- a/src/Specific/montgomery32_2e401m31/compiler.sh
+++ b/src/Specific/montgomery32_2e401m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery32_2e401m31/compilerxx.sh b/src/Specific/montgomery32_2e401m31/compilerxx.sh
index add2b3a88..d76772a15 100755
--- a/src/Specific/montgomery32_2e401m31/compilerxx.sh
+++ b/src/Specific/montgomery32_2e401m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery32_2e413m21/compiler.sh b/src/Specific/montgomery32_2e413m21/compiler.sh
index f20522e91..89e9ce237 100755
--- a/src/Specific/montgomery32_2e413m21/compiler.sh
+++ b/src/Specific/montgomery32_2e413m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery32_2e413m21/compilerxx.sh b/src/Specific/montgomery32_2e413m21/compilerxx.sh
index 67acf8e74..a89495f9d 100755
--- a/src/Specific/montgomery32_2e413m21/compilerxx.sh
+++ b/src/Specific/montgomery32_2e413m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery32_2e414m17/compiler.sh b/src/Specific/montgomery32_2e414m17/compiler.sh
index 8c03e3817..5d6241d7b 100755
--- a/src/Specific/montgomery32_2e414m17/compiler.sh
+++ b/src/Specific/montgomery32_2e414m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e414m17/compilerxx.sh b/src/Specific/montgomery32_2e414m17/compilerxx.sh
index 9a5dad8bf..b249c11c1 100755
--- a/src/Specific/montgomery32_2e414m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e414m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e416m2e208m1/compiler.sh b/src/Specific/montgomery32_2e416m2e208m1/compiler.sh
index 1fdd398dc..0ec68657e 100755
--- a/src/Specific/montgomery32_2e416m2e208m1/compiler.sh
+++ b/src/Specific/montgomery32_2e416m2e208m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e416m2e208m1/compilerxx.sh b/src/Specific/montgomery32_2e416m2e208m1/compilerxx.sh
index ca3c3ec69..c130aff00 100755
--- a/src/Specific/montgomery32_2e416m2e208m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e416m2e208m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e444m17/compiler.sh b/src/Specific/montgomery32_2e444m17/compiler.sh
index 1b54e247d..8ab9508a5 100755
--- a/src/Specific/montgomery32_2e444m17/compiler.sh
+++ b/src/Specific/montgomery32_2e444m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e444m17/compilerxx.sh b/src/Specific/montgomery32_2e444m17/compilerxx.sh
index c094991e4..e02e051fd 100755
--- a/src/Specific/montgomery32_2e444m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e444m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e448m2e224m1/compiler.sh b/src/Specific/montgomery32_2e448m2e224m1/compiler.sh
index 3b76dfc2c..bc0306de4 100755
--- a/src/Specific/montgomery32_2e448m2e224m1/compiler.sh
+++ b/src/Specific/montgomery32_2e448m2e224m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e448m2e224m1/compilerxx.sh b/src/Specific/montgomery32_2e448m2e224m1/compilerxx.sh
index ce52884ea..438625451 100755
--- a/src/Specific/montgomery32_2e448m2e224m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e448m2e224m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e450m2e225m1/compiler.sh b/src/Specific/montgomery32_2e450m2e225m1/compiler.sh
index 507ff6e49..7978ce3e2 100755
--- a/src/Specific/montgomery32_2e450m2e225m1/compiler.sh
+++ b/src/Specific/montgomery32_2e450m2e225m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e450m2e225m1/compilerxx.sh b/src/Specific/montgomery32_2e450m2e225m1/compilerxx.sh
index 7d0fb168d..4f4b25a38 100755
--- a/src/Specific/montgomery32_2e450m2e225m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e450m2e225m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e452m3/compiler.sh b/src/Specific/montgomery32_2e452m3/compiler.sh
index 438480588..b836adf49 100755
--- a/src/Specific/montgomery32_2e452m3/compiler.sh
+++ b/src/Specific/montgomery32_2e452m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e452m3/compilerxx.sh b/src/Specific/montgomery32_2e452m3/compilerxx.sh
index 9ea5f87d9..d0039bc1d 100755
--- a/src/Specific/montgomery32_2e452m3/compilerxx.sh
+++ b/src/Specific/montgomery32_2e452m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery32_2e468m17/compiler.sh b/src/Specific/montgomery32_2e468m17/compiler.sh
index 76b0a2eb2..e6dbae0be 100755
--- a/src/Specific/montgomery32_2e468m17/compiler.sh
+++ b/src/Specific/montgomery32_2e468m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e468m17/compilerxx.sh b/src/Specific/montgomery32_2e468m17/compilerxx.sh
index 194c773f3..c7409b21f 100755
--- a/src/Specific/montgomery32_2e468m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e468m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e480m2e240m1/compiler.sh b/src/Specific/montgomery32_2e480m2e240m1/compiler.sh
index 651f740dd..c28a70383 100755
--- a/src/Specific/montgomery32_2e480m2e240m1/compiler.sh
+++ b/src/Specific/montgomery32_2e480m2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e480m2e240m1/compilerxx.sh b/src/Specific/montgomery32_2e480m2e240m1/compilerxx.sh
index 35acfe886..253c52c1e 100755
--- a/src/Specific/montgomery32_2e480m2e240m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e480m2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e488m17/compiler.sh b/src/Specific/montgomery32_2e488m17/compiler.sh
index afe5e07cc..003bc3f89 100755
--- a/src/Specific/montgomery32_2e488m17/compiler.sh
+++ b/src/Specific/montgomery32_2e488m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e488m17/compilerxx.sh b/src/Specific/montgomery32_2e488m17/compilerxx.sh
index 805fa3cee..63f8bfc77 100755
--- a/src/Specific/montgomery32_2e488m17/compilerxx.sh
+++ b/src/Specific/montgomery32_2e488m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery32_2e489m21/compiler.sh b/src/Specific/montgomery32_2e489m21/compiler.sh
index 0b1ef4e33..229169793 100755
--- a/src/Specific/montgomery32_2e489m21/compiler.sh
+++ b/src/Specific/montgomery32_2e489m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery32_2e489m21/compilerxx.sh b/src/Specific/montgomery32_2e489m21/compilerxx.sh
index 5a7f5589e..fd80cb762 100755
--- a/src/Specific/montgomery32_2e489m21/compilerxx.sh
+++ b/src/Specific/montgomery32_2e489m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery32_2e495m31/compiler.sh b/src/Specific/montgomery32_2e495m31/compiler.sh
index f0cc13014..444c3e24e 100755
--- a/src/Specific/montgomery32_2e495m31/compiler.sh
+++ b/src/Specific/montgomery32_2e495m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery32_2e495m31/compilerxx.sh b/src/Specific/montgomery32_2e495m31/compilerxx.sh
index c47a4348a..4864fab4f 100755
--- a/src/Specific/montgomery32_2e495m31/compilerxx.sh
+++ b/src/Specific/montgomery32_2e495m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1/compiler.sh b/src/Specific/montgomery32_2e510m290x2e496m1/compiler.sh
index a18a6c589..943a6a339 100755
--- a/src/Specific/montgomery32_2e510m290x2e496m1/compiler.sh
+++ b/src/Specific/montgomery32_2e510m290x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1/compilerxx.sh b/src/Specific/montgomery32_2e510m290x2e496m1/compilerxx.sh
index fca71f27e..5a8a3790c 100755
--- a/src/Specific/montgomery32_2e510m290x2e496m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e510m290x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e511m187/compiler.sh b/src/Specific/montgomery32_2e511m187/compiler.sh
index c1f49a535..790461ed9 100755
--- a/src/Specific/montgomery32_2e511m187/compiler.sh
+++ b/src/Specific/montgomery32_2e511m187/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery32_2e511m187/compilerxx.sh b/src/Specific/montgomery32_2e511m187/compilerxx.sh
index c3578b76f..7891a0677 100755
--- a/src/Specific/montgomery32_2e511m187/compilerxx.sh
+++ b/src/Specific/montgomery32_2e511m187/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery32_2e511m481/compiler.sh b/src/Specific/montgomery32_2e511m481/compiler.sh
index d392341bd..0fec7a2c2 100755
--- a/src/Specific/montgomery32_2e511m481/compiler.sh
+++ b/src/Specific/montgomery32_2e511m481/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/montgomery32_2e511m481/compilerxx.sh b/src/Specific/montgomery32_2e511m481/compilerxx.sh
index 61b6283a1..599f3a073 100755
--- a/src/Specific/montgomery32_2e511m481/compilerxx.sh
+++ b/src/Specific/montgomery32_2e511m481/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1/compiler.sh b/src/Specific/montgomery32_2e512m491x2e496m1/compiler.sh
index 4738f3c29..095e872e9 100755
--- a/src/Specific/montgomery32_2e512m491x2e496m1/compiler.sh
+++ b/src/Specific/montgomery32_2e512m491x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1/compilerxx.sh b/src/Specific/montgomery32_2e512m491x2e496m1/compilerxx.sh
index 684208b11..5ad9a92dd 100755
--- a/src/Specific/montgomery32_2e512m491x2e496m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e512m491x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e512m569/compiler.sh b/src/Specific/montgomery32_2e512m569/compiler.sh
index 7497a5847..4f6faf684 100755
--- a/src/Specific/montgomery32_2e512m569/compiler.sh
+++ b/src/Specific/montgomery32_2e512m569/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/montgomery32_2e512m569/compilerxx.sh b/src/Specific/montgomery32_2e512m569/compilerxx.sh
index 211656b1f..3b3e82d27 100755
--- a/src/Specific/montgomery32_2e512m569/compilerxx.sh
+++ b/src/Specific/montgomery32_2e512m569/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/montgomery32_2e521m1/compiler.sh b/src/Specific/montgomery32_2e521m1/compiler.sh
index 528d555f2..c09fd9dcc 100755
--- a/src/Specific/montgomery32_2e521m1/compiler.sh
+++ b/src/Specific/montgomery32_2e521m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='17' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery32_2e521m1/compilerxx.sh b/src/Specific/montgomery32_2e521m1/compilerxx.sh
index 6d89fa68d..4ec6f1775 100755
--- a/src/Specific/montgomery32_2e521m1/compilerxx.sh
+++ b/src/Specific/montgomery32_2e521m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='32' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='17' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e127m1/compiler.sh b/src/Specific/montgomery64_2e127m1/compiler.sh
index f5917e419..dc7fae9c4 100755
--- a/src/Specific/montgomery64_2e127m1/compiler.sh
+++ b/src/Specific/montgomery64_2e127m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='2' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e127m1/compilerxx.sh b/src/Specific/montgomery64_2e127m1/compilerxx.sh
index 8f097b65d..94b6eda3c 100755
--- a/src/Specific/montgomery64_2e127m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e127m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='2' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e129m25/compiler.sh b/src/Specific/montgomery64_2e129m25/compiler.sh
index 92d05937e..7969ab76c 100755
--- a/src/Specific/montgomery64_2e129m25/compiler.sh
+++ b/src/Specific/montgomery64_2e129m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e129m25/compilerxx.sh b/src/Specific/montgomery64_2e129m25/compilerxx.sh
index 7c1abc5f0..49245ed5d 100755
--- a/src/Specific/montgomery64_2e129m25/compilerxx.sh
+++ b/src/Specific/montgomery64_2e129m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e130m5/compiler.sh b/src/Specific/montgomery64_2e130m5/compiler.sh
index a4b6ce266..0f976ed88 100755
--- a/src/Specific/montgomery64_2e130m5/compiler.sh
+++ b/src/Specific/montgomery64_2e130m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e130m5/compilerxx.sh b/src/Specific/montgomery64_2e130m5/compilerxx.sh
index c65877e89..dcbd698b6 100755
--- a/src/Specific/montgomery64_2e130m5/compilerxx.sh
+++ b/src/Specific/montgomery64_2e130m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e137m13/compiler.sh b/src/Specific/montgomery64_2e137m13/compiler.sh
index d383eb3fa..ff6b5b3cc 100755
--- a/src/Specific/montgomery64_2e137m13/compiler.sh
+++ b/src/Specific/montgomery64_2e137m13/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/montgomery64_2e137m13/compilerxx.sh b/src/Specific/montgomery64_2e137m13/compilerxx.sh
index efa77a64a..ac7b2fb61 100755
--- a/src/Specific/montgomery64_2e137m13/compilerxx.sh
+++ b/src/Specific/montgomery64_2e137m13/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/montgomery64_2e140m27/compiler.sh b/src/Specific/montgomery64_2e140m27/compiler.sh
index 92ccf5238..7f1ce64f9 100755
--- a/src/Specific/montgomery64_2e140m27/compiler.sh
+++ b/src/Specific/montgomery64_2e140m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery64_2e140m27/compilerxx.sh b/src/Specific/montgomery64_2e140m27/compilerxx.sh
index 53230595f..c7bc2cc1e 100755
--- a/src/Specific/montgomery64_2e140m27/compilerxx.sh
+++ b/src/Specific/montgomery64_2e140m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery64_2e141m9/compiler.sh b/src/Specific/montgomery64_2e141m9/compiler.sh
index 1e891bbf6..ea943c6af 100755
--- a/src/Specific/montgomery64_2e141m9/compiler.sh
+++ b/src/Specific/montgomery64_2e141m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e141m9/compilerxx.sh b/src/Specific/montgomery64_2e141m9/compilerxx.sh
index be09be9c3..01f96846d 100755
--- a/src/Specific/montgomery64_2e141m9/compilerxx.sh
+++ b/src/Specific/montgomery64_2e141m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e150m3/compiler.sh b/src/Specific/montgomery64_2e150m3/compiler.sh
index 3fd15d600..40611fa2b 100755
--- a/src/Specific/montgomery64_2e150m3/compiler.sh
+++ b/src/Specific/montgomery64_2e150m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e150m3/compilerxx.sh b/src/Specific/montgomery64_2e150m3/compilerxx.sh
index 58285be55..71223a335 100755
--- a/src/Specific/montgomery64_2e150m3/compilerxx.sh
+++ b/src/Specific/montgomery64_2e150m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e150m5/compiler.sh b/src/Specific/montgomery64_2e150m5/compiler.sh
index 714df2fa1..fdb643f88 100755
--- a/src/Specific/montgomery64_2e150m5/compiler.sh
+++ b/src/Specific/montgomery64_2e150m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e150m5/compilerxx.sh b/src/Specific/montgomery64_2e150m5/compilerxx.sh
index 398efdd89..2763165f6 100755
--- a/src/Specific/montgomery64_2e150m5/compilerxx.sh
+++ b/src/Specific/montgomery64_2e150m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e152m17/compiler.sh b/src/Specific/montgomery64_2e152m17/compiler.sh
index 3423a058a..8d68bb9c1 100755
--- a/src/Specific/montgomery64_2e152m17/compiler.sh
+++ b/src/Specific/montgomery64_2e152m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e152m17/compilerxx.sh b/src/Specific/montgomery64_2e152m17/compilerxx.sh
index a6cb07f38..224d60361 100755
--- a/src/Specific/montgomery64_2e152m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e152m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e158m15/compiler.sh b/src/Specific/montgomery64_2e158m15/compiler.sh
index 2ea248247..3274500de 100755
--- a/src/Specific/montgomery64_2e158m15/compiler.sh
+++ b/src/Specific/montgomery64_2e158m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e158m15/compilerxx.sh b/src/Specific/montgomery64_2e158m15/compilerxx.sh
index 5ed63d538..6ade1952c 100755
--- a/src/Specific/montgomery64_2e158m15/compilerxx.sh
+++ b/src/Specific/montgomery64_2e158m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e165m25/compiler.sh b/src/Specific/montgomery64_2e165m25/compiler.sh
index 26c87118e..bb787b27d 100755
--- a/src/Specific/montgomery64_2e165m25/compiler.sh
+++ b/src/Specific/montgomery64_2e165m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e165m25/compilerxx.sh b/src/Specific/montgomery64_2e165m25/compilerxx.sh
index cf05da3bf..b7b36e705 100755
--- a/src/Specific/montgomery64_2e165m25/compilerxx.sh
+++ b/src/Specific/montgomery64_2e165m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e166m5/compiler.sh b/src/Specific/montgomery64_2e166m5/compiler.sh
index f7f3ff38f..e19fe03fd 100755
--- a/src/Specific/montgomery64_2e166m5/compiler.sh
+++ b/src/Specific/montgomery64_2e166m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e166m5/compilerxx.sh b/src/Specific/montgomery64_2e166m5/compilerxx.sh
index 36079b627..81fe25449 100755
--- a/src/Specific/montgomery64_2e166m5/compilerxx.sh
+++ b/src/Specific/montgomery64_2e166m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e171m19/compiler.sh b/src/Specific/montgomery64_2e171m19/compiler.sh
index 8e532478f..86111763c 100755
--- a/src/Specific/montgomery64_2e171m19/compiler.sh
+++ b/src/Specific/montgomery64_2e171m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e171m19/compilerxx.sh b/src/Specific/montgomery64_2e171m19/compilerxx.sh
index f50eabb49..fe60dafd6 100755
--- a/src/Specific/montgomery64_2e171m19/compilerxx.sh
+++ b/src/Specific/montgomery64_2e171m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e174m17/compiler.sh b/src/Specific/montgomery64_2e174m17/compiler.sh
index 89ad9fda4..40af208fd 100755
--- a/src/Specific/montgomery64_2e174m17/compiler.sh
+++ b/src/Specific/montgomery64_2e174m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e174m17/compilerxx.sh b/src/Specific/montgomery64_2e174m17/compilerxx.sh
index 2b81bbcb1..ca8330e44 100755
--- a/src/Specific/montgomery64_2e174m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e174m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e174m3/compiler.sh b/src/Specific/montgomery64_2e174m3/compiler.sh
index 1b4513217..253546c2f 100755
--- a/src/Specific/montgomery64_2e174m3/compiler.sh
+++ b/src/Specific/montgomery64_2e174m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e174m3/compilerxx.sh b/src/Specific/montgomery64_2e174m3/compilerxx.sh
index 7dd42f5fc..675efff37 100755
--- a/src/Specific/montgomery64_2e174m3/compilerxx.sh
+++ b/src/Specific/montgomery64_2e174m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e189m25/compiler.sh b/src/Specific/montgomery64_2e189m25/compiler.sh
index fa83f9bdf..c3c15883e 100755
--- a/src/Specific/montgomery64_2e189m25/compiler.sh
+++ b/src/Specific/montgomery64_2e189m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e189m25/compilerxx.sh b/src/Specific/montgomery64_2e189m25/compilerxx.sh
index 047d8034a..1a5833b53 100755
--- a/src/Specific/montgomery64_2e189m25/compilerxx.sh
+++ b/src/Specific/montgomery64_2e189m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e190m11/compiler.sh b/src/Specific/montgomery64_2e190m11/compiler.sh
index f7fbf4e04..a95458b24 100755
--- a/src/Specific/montgomery64_2e190m11/compiler.sh
+++ b/src/Specific/montgomery64_2e190m11/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/montgomery64_2e190m11/compilerxx.sh b/src/Specific/montgomery64_2e190m11/compilerxx.sh
index 7775ea0c1..52a88ee41 100755
--- a/src/Specific/montgomery64_2e190m11/compilerxx.sh
+++ b/src/Specific/montgomery64_2e190m11/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/montgomery64_2e191m19/compiler.sh b/src/Specific/montgomery64_2e191m19/compiler.sh
index f36a62ce7..3e6272a9e 100755
--- a/src/Specific/montgomery64_2e191m19/compiler.sh
+++ b/src/Specific/montgomery64_2e191m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e191m19/compilerxx.sh b/src/Specific/montgomery64_2e191m19/compilerxx.sh
index b1adb62fe..6b18b9c9c 100755
--- a/src/Specific/montgomery64_2e191m19/compilerxx.sh
+++ b/src/Specific/montgomery64_2e191m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e192m2e64m1/compiler.sh b/src/Specific/montgomery64_2e192m2e64m1/compiler.sh
index 420815619..cdbd1a34c 100755
--- a/src/Specific/montgomery64_2e192m2e64m1/compiler.sh
+++ b/src/Specific/montgomery64_2e192m2e64m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e192m2e64m1/compilerxx.sh b/src/Specific/montgomery64_2e192m2e64m1/compilerxx.sh
index 96f444e2e..4d355e4b1 100755
--- a/src/Specific/montgomery64_2e192m2e64m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e192m2e64m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e194m33/compiler.sh b/src/Specific/montgomery64_2e194m33/compiler.sh
index db0d16ceb..f65e4ab18 100755
--- a/src/Specific/montgomery64_2e194m33/compiler.sh
+++ b/src/Specific/montgomery64_2e194m33/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/montgomery64_2e194m33/compilerxx.sh b/src/Specific/montgomery64_2e194m33/compilerxx.sh
index 2c288217d..509d01f11 100755
--- a/src/Specific/montgomery64_2e194m33/compilerxx.sh
+++ b/src/Specific/montgomery64_2e194m33/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/montgomery64_2e196m15/compiler.sh b/src/Specific/montgomery64_2e196m15/compiler.sh
index bbc0653bc..209de6967 100755
--- a/src/Specific/montgomery64_2e196m15/compiler.sh
+++ b/src/Specific/montgomery64_2e196m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e196m15/compilerxx.sh b/src/Specific/montgomery64_2e196m15/compilerxx.sh
index e2184e6c5..cb1ce38af 100755
--- a/src/Specific/montgomery64_2e196m15/compilerxx.sh
+++ b/src/Specific/montgomery64_2e196m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e198m17/compiler.sh b/src/Specific/montgomery64_2e198m17/compiler.sh
index d238f5da1..fcad35668 100755
--- a/src/Specific/montgomery64_2e198m17/compiler.sh
+++ b/src/Specific/montgomery64_2e198m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e198m17/compilerxx.sh b/src/Specific/montgomery64_2e198m17/compilerxx.sh
index 75bdd50c8..52562b714 100755
--- a/src/Specific/montgomery64_2e198m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e198m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1/compiler.sh b/src/Specific/montgomery64_2e205m45x2e198m1/compiler.sh
index fb046b614..09866129d 100755
--- a/src/Specific/montgomery64_2e205m45x2e198m1/compiler.sh
+++ b/src/Specific/montgomery64_2e205m45x2e198m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1/compilerxx.sh b/src/Specific/montgomery64_2e205m45x2e198m1/compilerxx.sh
index 192b66cac..506d67ca1 100755
--- a/src/Specific/montgomery64_2e205m45x2e198m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e205m45x2e198m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e206m5/compiler.sh b/src/Specific/montgomery64_2e206m5/compiler.sh
index 70ea901bc..4a4ffc381 100755
--- a/src/Specific/montgomery64_2e206m5/compiler.sh
+++ b/src/Specific/montgomery64_2e206m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e206m5/compilerxx.sh b/src/Specific/montgomery64_2e206m5/compilerxx.sh
index 3b9c5105c..90c782f27 100755
--- a/src/Specific/montgomery64_2e206m5/compilerxx.sh
+++ b/src/Specific/montgomery64_2e206m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e212m29/compiler.sh b/src/Specific/montgomery64_2e212m29/compiler.sh
index 97d87b1ea..23fabf462 100755
--- a/src/Specific/montgomery64_2e212m29/compiler.sh
+++ b/src/Specific/montgomery64_2e212m29/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/montgomery64_2e212m29/compilerxx.sh b/src/Specific/montgomery64_2e212m29/compilerxx.sh
index 21d0c8421..0aa468784 100755
--- a/src/Specific/montgomery64_2e212m29/compilerxx.sh
+++ b/src/Specific/montgomery64_2e212m29/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/montgomery64_2e213m3/compiler.sh b/src/Specific/montgomery64_2e213m3/compiler.sh
index 4ff262067..fa8e204c8 100755
--- a/src/Specific/montgomery64_2e213m3/compiler.sh
+++ b/src/Specific/montgomery64_2e213m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e213m3/compilerxx.sh b/src/Specific/montgomery64_2e213m3/compilerxx.sh
index d4e68aef6..5a735bc62 100755
--- a/src/Specific/montgomery64_2e213m3/compilerxx.sh
+++ b/src/Specific/montgomery64_2e213m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e216m2e108m1/compiler.sh b/src/Specific/montgomery64_2e216m2e108m1/compiler.sh
index 33eef0a8b..69fdd4445 100755
--- a/src/Specific/montgomery64_2e216m2e108m1/compiler.sh
+++ b/src/Specific/montgomery64_2e216m2e108m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e216m2e108m1/compilerxx.sh b/src/Specific/montgomery64_2e216m2e108m1/compilerxx.sh
index 38d72e51e..c645cab50 100755
--- a/src/Specific/montgomery64_2e216m2e108m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e216m2e108m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e221m3/compiler.sh b/src/Specific/montgomery64_2e221m3/compiler.sh
index bc2fdf6ec..62235d5d0 100755
--- a/src/Specific/montgomery64_2e221m3/compiler.sh
+++ b/src/Specific/montgomery64_2e221m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e221m3/compilerxx.sh b/src/Specific/montgomery64_2e221m3/compilerxx.sh
index fd6c87ca7..48d4ed089 100755
--- a/src/Specific/montgomery64_2e221m3/compilerxx.sh
+++ b/src/Specific/montgomery64_2e221m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e222m117/compiler.sh b/src/Specific/montgomery64_2e222m117/compiler.sh
index 00d815f88..376266263 100755
--- a/src/Specific/montgomery64_2e222m117/compiler.sh
+++ b/src/Specific/montgomery64_2e222m117/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/montgomery64_2e222m117/compilerxx.sh b/src/Specific/montgomery64_2e222m117/compilerxx.sh
index 57c23d767..57e95744a 100755
--- a/src/Specific/montgomery64_2e222m117/compilerxx.sh
+++ b/src/Specific/montgomery64_2e222m117/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/montgomery64_2e224m2e96p1/compiler.sh b/src/Specific/montgomery64_2e224m2e96p1/compiler.sh
index 53c52b4c7..dcd7ed5c5 100755
--- a/src/Specific/montgomery64_2e224m2e96p1/compiler.sh
+++ b/src/Specific/montgomery64_2e224m2e96p1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/montgomery64_2e224m2e96p1/compilerxx.sh b/src/Specific/montgomery64_2e224m2e96p1/compilerxx.sh
index ae53c0586..907dd7e51 100755
--- a/src/Specific/montgomery64_2e224m2e96p1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e224m2e96p1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/montgomery64_2e226m5/compiler.sh b/src/Specific/montgomery64_2e226m5/compiler.sh
index 3a74c7446..ca4b1564d 100755
--- a/src/Specific/montgomery64_2e226m5/compiler.sh
+++ b/src/Specific/montgomery64_2e226m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e226m5/compilerxx.sh b/src/Specific/montgomery64_2e226m5/compilerxx.sh
index a09fbf42c..82501cc9b 100755
--- a/src/Specific/montgomery64_2e226m5/compilerxx.sh
+++ b/src/Specific/montgomery64_2e226m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/montgomery64_2e230m27/compiler.sh b/src/Specific/montgomery64_2e230m27/compiler.sh
index a3cb8d315..494461062 100755
--- a/src/Specific/montgomery64_2e230m27/compiler.sh
+++ b/src/Specific/montgomery64_2e230m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery64_2e230m27/compilerxx.sh b/src/Specific/montgomery64_2e230m27/compilerxx.sh
index 63d74b9cc..16027da10 100755
--- a/src/Specific/montgomery64_2e230m27/compilerxx.sh
+++ b/src/Specific/montgomery64_2e230m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/montgomery64_2e235m15/compiler.sh b/src/Specific/montgomery64_2e235m15/compiler.sh
index 540e6caa6..da698d337 100755
--- a/src/Specific/montgomery64_2e235m15/compiler.sh
+++ b/src/Specific/montgomery64_2e235m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e235m15/compilerxx.sh b/src/Specific/montgomery64_2e235m15/compilerxx.sh
index c1acd6257..08f082b63 100755
--- a/src/Specific/montgomery64_2e235m15/compilerxx.sh
+++ b/src/Specific/montgomery64_2e235m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e243m9/compiler.sh b/src/Specific/montgomery64_2e243m9/compiler.sh
index 6ce1d7bfb..8261e7820 100755
--- a/src/Specific/montgomery64_2e243m9/compiler.sh
+++ b/src/Specific/montgomery64_2e243m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e243m9/compilerxx.sh b/src/Specific/montgomery64_2e243m9/compilerxx.sh
index 53fb7dc85..5ecd88488 100755
--- a/src/Specific/montgomery64_2e243m9/compilerxx.sh
+++ b/src/Specific/montgomery64_2e243m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e251m9/compiler.sh b/src/Specific/montgomery64_2e251m9/compiler.sh
index f6451ff64..48b73bc7f 100755
--- a/src/Specific/montgomery64_2e251m9/compiler.sh
+++ b/src/Specific/montgomery64_2e251m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e251m9/compilerxx.sh b/src/Specific/montgomery64_2e251m9/compilerxx.sh
index 8a7fc854f..916587178 100755
--- a/src/Specific/montgomery64_2e251m9/compilerxx.sh
+++ b/src/Specific/montgomery64_2e251m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1/compiler.sh b/src/Specific/montgomery64_2e254m127x2e240m1/compiler.sh
index e0b89e98c..fa41ef3a0 100755
--- a/src/Specific/montgomery64_2e254m127x2e240m1/compiler.sh
+++ b/src/Specific/montgomery64_2e254m127x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1/compilerxx.sh b/src/Specific/montgomery64_2e254m127x2e240m1/compilerxx.sh
index 58d5355b5..0915c8bb1 100755
--- a/src/Specific/montgomery64_2e254m127x2e240m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e254m127x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e255m19/compiler.sh b/src/Specific/montgomery64_2e255m19/compiler.sh
index dd455e4cb..cc41012e1 100755
--- a/src/Specific/montgomery64_2e255m19/compiler.sh
+++ b/src/Specific/montgomery64_2e255m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e255m19/compilerxx.sh b/src/Specific/montgomery64_2e255m19/compilerxx.sh
index d7a4db24c..07aff3348 100755
--- a/src/Specific/montgomery64_2e255m19/compilerxx.sh
+++ b/src/Specific/montgomery64_2e255m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e255m2e4m2e1m1/compiler.sh b/src/Specific/montgomery64_2e255m2e4m2e1m1/compiler.sh
index c7c108de6..51fcb6bde 100755
--- a/src/Specific/montgomery64_2e255m2e4m2e1m1/compiler.sh
+++ b/src/Specific/montgomery64_2e255m2e4m2e1m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e255m2e4m2e1m1/compilerxx.sh b/src/Specific/montgomery64_2e255m2e4m2e1m1/compilerxx.sh
index 0a490f84d..4046aae0a 100755
--- a/src/Specific/montgomery64_2e255m2e4m2e1m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e255m2e4m2e1m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e255m765/compiler.sh b/src/Specific/montgomery64_2e255m765/compiler.sh
index 9fe203f54..7f296c1b9 100755
--- a/src/Specific/montgomery64_2e255m765/compiler.sh
+++ b/src/Specific/montgomery64_2e255m765/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/montgomery64_2e255m765/compilerxx.sh b/src/Specific/montgomery64_2e255m765/compilerxx.sh
index 4cd2336b7..629f9d8e4 100755
--- a/src/Specific/montgomery64_2e255m765/compilerxx.sh
+++ b/src/Specific/montgomery64_2e255m765/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/montgomery64_2e256m189/compiler.sh b/src/Specific/montgomery64_2e256m189/compiler.sh
index da358596a..c2a7e97af 100755
--- a/src/Specific/montgomery64_2e256m189/compiler.sh
+++ b/src/Specific/montgomery64_2e256m189/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/montgomery64_2e256m189/compilerxx.sh b/src/Specific/montgomery64_2e256m189/compilerxx.sh
index 56d910010..8028b816c 100755
--- a/src/Specific/montgomery64_2e256m189/compilerxx.sh
+++ b/src/Specific/montgomery64_2e256m189/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compiler.sh b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compiler.sh
index 4a0167d3c..a9733c924 100755
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compiler.sh
+++ b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compilerxx.sh b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compilerxx.sh
index e5604de71..4b83af3df 100755
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e32m977/compiler.sh b/src/Specific/montgomery64_2e256m2e32m977/compiler.sh
index 581233ccc..25a0f2d4e 100755
--- a/src/Specific/montgomery64_2e256m2e32m977/compiler.sh
+++ b/src/Specific/montgomery64_2e256m2e32m977/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e32m977/compilerxx.sh b/src/Specific/montgomery64_2e256m2e32m977/compilerxx.sh
index 3ea7ad6c0..5b9e3ee0b 100755
--- a/src/Specific/montgomery64_2e256m2e32m977/compilerxx.sh
+++ b/src/Specific/montgomery64_2e256m2e32m977/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1/compiler.sh b/src/Specific/montgomery64_2e256m88x2e240m1/compiler.sh
index 0403ec692..76df12d49 100755
--- a/src/Specific/montgomery64_2e256m88x2e240m1/compiler.sh
+++ b/src/Specific/montgomery64_2e256m88x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1/compilerxx.sh b/src/Specific/montgomery64_2e256m88x2e240m1/compilerxx.sh
index cc062880c..2b4ef0097 100755
--- a/src/Specific/montgomery64_2e256m88x2e240m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e256m88x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e266m3/compiler.sh b/src/Specific/montgomery64_2e266m3/compiler.sh
index 1b15debc4..bb0543aa2 100755
--- a/src/Specific/montgomery64_2e266m3/compiler.sh
+++ b/src/Specific/montgomery64_2e266m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e266m3/compilerxx.sh b/src/Specific/montgomery64_2e266m3/compilerxx.sh
index e13e69b5f..fcdecf629 100755
--- a/src/Specific/montgomery64_2e266m3/compilerxx.sh
+++ b/src/Specific/montgomery64_2e266m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e285m9/compiler.sh b/src/Specific/montgomery64_2e285m9/compiler.sh
index b72250c49..343be6877 100755
--- a/src/Specific/montgomery64_2e285m9/compiler.sh
+++ b/src/Specific/montgomery64_2e285m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e285m9/compilerxx.sh b/src/Specific/montgomery64_2e285m9/compilerxx.sh
index e1289faaf..a636edb66 100755
--- a/src/Specific/montgomery64_2e285m9/compilerxx.sh
+++ b/src/Specific/montgomery64_2e285m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e291m19/compiler.sh b/src/Specific/montgomery64_2e291m19/compiler.sh
index f4e5879e4..463deb106 100755
--- a/src/Specific/montgomery64_2e291m19/compiler.sh
+++ b/src/Specific/montgomery64_2e291m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e291m19/compilerxx.sh b/src/Specific/montgomery64_2e291m19/compilerxx.sh
index 75946139d..90fd2ca9b 100755
--- a/src/Specific/montgomery64_2e291m19/compilerxx.sh
+++ b/src/Specific/montgomery64_2e291m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e321m9/compiler.sh b/src/Specific/montgomery64_2e321m9/compiler.sh
index 2ad8858e2..51f7062d3 100755
--- a/src/Specific/montgomery64_2e321m9/compiler.sh
+++ b/src/Specific/montgomery64_2e321m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e321m9/compilerxx.sh b/src/Specific/montgomery64_2e321m9/compilerxx.sh
index 109f6ac7e..b39e2625a 100755
--- a/src/Specific/montgomery64_2e321m9/compilerxx.sh
+++ b/src/Specific/montgomery64_2e321m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/montgomery64_2e322m2e161m1/compiler.sh b/src/Specific/montgomery64_2e322m2e161m1/compiler.sh
index eb1a62e74..c7113039d 100755
--- a/src/Specific/montgomery64_2e322m2e161m1/compiler.sh
+++ b/src/Specific/montgomery64_2e322m2e161m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e322m2e161m1/compilerxx.sh b/src/Specific/montgomery64_2e322m2e161m1/compilerxx.sh
index 64120e6bd..d3f5707bf 100755
--- a/src/Specific/montgomery64_2e322m2e161m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e322m2e161m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e336m17/compiler.sh b/src/Specific/montgomery64_2e336m17/compiler.sh
index b1e73e100..9ee679824 100755
--- a/src/Specific/montgomery64_2e336m17/compiler.sh
+++ b/src/Specific/montgomery64_2e336m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e336m17/compilerxx.sh b/src/Specific/montgomery64_2e336m17/compilerxx.sh
index 942deaee3..3ed6dfd4a 100755
--- a/src/Specific/montgomery64_2e336m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e336m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e336m3/compiler.sh b/src/Specific/montgomery64_2e336m3/compiler.sh
index 8fb731182..ee6b875f3 100755
--- a/src/Specific/montgomery64_2e336m3/compiler.sh
+++ b/src/Specific/montgomery64_2e336m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e336m3/compilerxx.sh b/src/Specific/montgomery64_2e336m3/compilerxx.sh
index dfc822871..52588f7b5 100755
--- a/src/Specific/montgomery64_2e336m3/compilerxx.sh
+++ b/src/Specific/montgomery64_2e336m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e338m15/compiler.sh b/src/Specific/montgomery64_2e338m15/compiler.sh
index cf36f4a7f..0c153dfed 100755
--- a/src/Specific/montgomery64_2e338m15/compiler.sh
+++ b/src/Specific/montgomery64_2e338m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e338m15/compilerxx.sh b/src/Specific/montgomery64_2e338m15/compilerxx.sh
index 7dab5138b..e6fe54e87 100755
--- a/src/Specific/montgomery64_2e338m15/compilerxx.sh
+++ b/src/Specific/montgomery64_2e338m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/montgomery64_2e369m25/compiler.sh b/src/Specific/montgomery64_2e369m25/compiler.sh
index 96f074a1f..79beed69b 100755
--- a/src/Specific/montgomery64_2e369m25/compiler.sh
+++ b/src/Specific/montgomery64_2e369m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e369m25/compilerxx.sh b/src/Specific/montgomery64_2e369m25/compilerxx.sh
index 144e829ba..51c42ad83 100755
--- a/src/Specific/montgomery64_2e369m25/compilerxx.sh
+++ b/src/Specific/montgomery64_2e369m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/montgomery64_2e379m19/compiler.sh b/src/Specific/montgomery64_2e379m19/compiler.sh
index 4443a2405..647a96dd0 100755
--- a/src/Specific/montgomery64_2e379m19/compiler.sh
+++ b/src/Specific/montgomery64_2e379m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e379m19/compilerxx.sh b/src/Specific/montgomery64_2e379m19/compilerxx.sh
index 28122757d..ba3f5222d 100755
--- a/src/Specific/montgomery64_2e379m19/compilerxx.sh
+++ b/src/Specific/montgomery64_2e379m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/montgomery64_2e382m105/compiler.sh b/src/Specific/montgomery64_2e382m105/compiler.sh
index e39383b11..b2ed92a14 100755
--- a/src/Specific/montgomery64_2e382m105/compiler.sh
+++ b/src/Specific/montgomery64_2e382m105/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/montgomery64_2e382m105/compilerxx.sh b/src/Specific/montgomery64_2e382m105/compilerxx.sh
index 65dd70a5d..36bc5a356 100755
--- a/src/Specific/montgomery64_2e382m105/compilerxx.sh
+++ b/src/Specific/montgomery64_2e382m105/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/montgomery64_2e383m187/compiler.sh b/src/Specific/montgomery64_2e383m187/compiler.sh
index 1688d3370..472f6c403 100755
--- a/src/Specific/montgomery64_2e383m187/compiler.sh
+++ b/src/Specific/montgomery64_2e383m187/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery64_2e383m187/compilerxx.sh b/src/Specific/montgomery64_2e383m187/compilerxx.sh
index b3ce712fa..09cb698c8 100755
--- a/src/Specific/montgomery64_2e383m187/compilerxx.sh
+++ b/src/Specific/montgomery64_2e383m187/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 187' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery64_2e383m31/compiler.sh b/src/Specific/montgomery64_2e383m31/compiler.sh
index 7e6138b9e..d009694cc 100755
--- a/src/Specific/montgomery64_2e383m31/compiler.sh
+++ b/src/Specific/montgomery64_2e383m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery64_2e383m31/compilerxx.sh b/src/Specific/montgomery64_2e383m31/compilerxx.sh
index 8a09fc5ab..586851390 100755
--- a/src/Specific/montgomery64_2e383m31/compilerxx.sh
+++ b/src/Specific/montgomery64_2e383m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 31' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery64_2e383m421/compiler.sh b/src/Specific/montgomery64_2e383m421/compiler.sh
index 49616c589..a9dd35cd3 100755
--- a/src/Specific/montgomery64_2e383m421/compiler.sh
+++ b/src/Specific/montgomery64_2e383m421/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
diff --git a/src/Specific/montgomery64_2e383m421/compilerxx.sh b/src/Specific/montgomery64_2e383m421/compilerxx.sh
index 1df8f40c3..bc4b1674e 100755
--- a/src/Specific/montgomery64_2e383m421/compilerxx.sh
+++ b/src/Specific/montgomery64_2e383m421/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<383) - 421' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<383) - 421' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' "$@"
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compiler.sh b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compiler.sh
index 1e2bad973..e4c316ab8 100755
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compiler.sh
+++ b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compilerxx.sh b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compilerxx.sh
index 69a0cdab5..f0b7fe8f6 100755
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e384m317/compiler.sh b/src/Specific/montgomery64_2e384m317/compiler.sh
index 7a9003665..efe00172c 100755
--- a/src/Specific/montgomery64_2e384m317/compiler.sh
+++ b/src/Specific/montgomery64_2e384m317/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/montgomery64_2e384m317/compilerxx.sh b/src/Specific/montgomery64_2e384m317/compilerxx.sh
index d26ef4d82..41255cba5 100755
--- a/src/Specific/montgomery64_2e384m317/compilerxx.sh
+++ b/src/Specific/montgomery64_2e384m317/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1/compiler.sh b/src/Specific/montgomery64_2e384m5x2e368m1/compiler.sh
index 252873e32..edfa9f1a7 100755
--- a/src/Specific/montgomery64_2e384m5x2e368m1/compiler.sh
+++ b/src/Specific/montgomery64_2e384m5x2e368m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1/compilerxx.sh b/src/Specific/montgomery64_2e384m5x2e368m1/compilerxx.sh
index e7b60ebf5..8fa9db476 100755
--- a/src/Specific/montgomery64_2e384m5x2e368m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e384m5x2e368m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1/compiler.sh b/src/Specific/montgomery64_2e384m79x2e376m1/compiler.sh
index 9c013fc8b..7792bf77a 100755
--- a/src/Specific/montgomery64_2e384m79x2e376m1/compiler.sh
+++ b/src/Specific/montgomery64_2e384m79x2e376m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1/compilerxx.sh b/src/Specific/montgomery64_2e384m79x2e376m1/compilerxx.sh
index 982d5e9d9..a2ae58cf0 100755
--- a/src/Specific/montgomery64_2e384m79x2e376m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e384m79x2e376m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e389m21/compiler.sh b/src/Specific/montgomery64_2e389m21/compiler.sh
index 32d207bcc..8d63b50d8 100755
--- a/src/Specific/montgomery64_2e389m21/compiler.sh
+++ b/src/Specific/montgomery64_2e389m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery64_2e389m21/compilerxx.sh b/src/Specific/montgomery64_2e389m21/compilerxx.sh
index a1497b056..905f743c0 100755
--- a/src/Specific/montgomery64_2e389m21/compilerxx.sh
+++ b/src/Specific/montgomery64_2e389m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<389) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<389) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery64_2e401m31/compiler.sh b/src/Specific/montgomery64_2e401m31/compiler.sh
index b891784e6..7d6d12010 100755
--- a/src/Specific/montgomery64_2e401m31/compiler.sh
+++ b/src/Specific/montgomery64_2e401m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery64_2e401m31/compilerxx.sh b/src/Specific/montgomery64_2e401m31/compilerxx.sh
index 6aba4f55a..357f439e0 100755
--- a/src/Specific/montgomery64_2e401m31/compilerxx.sh
+++ b/src/Specific/montgomery64_2e401m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery64_2e413m21/compiler.sh b/src/Specific/montgomery64_2e413m21/compiler.sh
index d8818fae4..2d2f5cdbd 100755
--- a/src/Specific/montgomery64_2e413m21/compiler.sh
+++ b/src/Specific/montgomery64_2e413m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery64_2e413m21/compilerxx.sh b/src/Specific/montgomery64_2e413m21/compilerxx.sh
index 08c063984..2fe70b174 100755
--- a/src/Specific/montgomery64_2e413m21/compilerxx.sh
+++ b/src/Specific/montgomery64_2e413m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery64_2e414m17/compiler.sh b/src/Specific/montgomery64_2e414m17/compiler.sh
index 8348477b4..1788a5acb 100755
--- a/src/Specific/montgomery64_2e414m17/compiler.sh
+++ b/src/Specific/montgomery64_2e414m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e414m17/compilerxx.sh b/src/Specific/montgomery64_2e414m17/compilerxx.sh
index 9ed889785..4e0933f3e 100755
--- a/src/Specific/montgomery64_2e414m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e414m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e416m2e208m1/compiler.sh b/src/Specific/montgomery64_2e416m2e208m1/compiler.sh
index e7c1c8cb3..f7426e705 100755
--- a/src/Specific/montgomery64_2e416m2e208m1/compiler.sh
+++ b/src/Specific/montgomery64_2e416m2e208m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e416m2e208m1/compilerxx.sh b/src/Specific/montgomery64_2e416m2e208m1/compilerxx.sh
index 489f24cc7..4626c8c4e 100755
--- a/src/Specific/montgomery64_2e416m2e208m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e416m2e208m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e444m17/compiler.sh b/src/Specific/montgomery64_2e444m17/compiler.sh
index a5c435198..dcd8b9d43 100755
--- a/src/Specific/montgomery64_2e444m17/compiler.sh
+++ b/src/Specific/montgomery64_2e444m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e444m17/compilerxx.sh b/src/Specific/montgomery64_2e444m17/compilerxx.sh
index 2614acddd..a81d59ca3 100755
--- a/src/Specific/montgomery64_2e444m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e444m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e448m2e224m1/compiler.sh b/src/Specific/montgomery64_2e448m2e224m1/compiler.sh
index 699f30d19..9de43cd6c 100755
--- a/src/Specific/montgomery64_2e448m2e224m1/compiler.sh
+++ b/src/Specific/montgomery64_2e448m2e224m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e448m2e224m1/compilerxx.sh b/src/Specific/montgomery64_2e448m2e224m1/compilerxx.sh
index fa6dc20eb..e89508af5 100755
--- a/src/Specific/montgomery64_2e448m2e224m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e448m2e224m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e450m2e225m1/compiler.sh b/src/Specific/montgomery64_2e450m2e225m1/compiler.sh
index 602cce955..44c7d3d67 100755
--- a/src/Specific/montgomery64_2e450m2e225m1/compiler.sh
+++ b/src/Specific/montgomery64_2e450m2e225m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e450m2e225m1/compilerxx.sh b/src/Specific/montgomery64_2e450m2e225m1/compilerxx.sh
index c269a1b50..ec8eeda41 100755
--- a/src/Specific/montgomery64_2e450m2e225m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e450m2e225m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e452m3/compiler.sh b/src/Specific/montgomery64_2e452m3/compiler.sh
index 1cb95fe0d..764404caa 100755
--- a/src/Specific/montgomery64_2e452m3/compiler.sh
+++ b/src/Specific/montgomery64_2e452m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e452m3/compilerxx.sh b/src/Specific/montgomery64_2e452m3/compilerxx.sh
index ae76620a1..8a55f10a4 100755
--- a/src/Specific/montgomery64_2e452m3/compilerxx.sh
+++ b/src/Specific/montgomery64_2e452m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/montgomery64_2e468m17/compiler.sh b/src/Specific/montgomery64_2e468m17/compiler.sh
index 5fc373071..911a0755d 100755
--- a/src/Specific/montgomery64_2e468m17/compiler.sh
+++ b/src/Specific/montgomery64_2e468m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e468m17/compilerxx.sh b/src/Specific/montgomery64_2e468m17/compilerxx.sh
index 2d246bb17..cf569f645 100755
--- a/src/Specific/montgomery64_2e468m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e468m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e480m2e240m1/compiler.sh b/src/Specific/montgomery64_2e480m2e240m1/compiler.sh
index 46b2f52ee..a7e89dff2 100755
--- a/src/Specific/montgomery64_2e480m2e240m1/compiler.sh
+++ b/src/Specific/montgomery64_2e480m2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e480m2e240m1/compilerxx.sh b/src/Specific/montgomery64_2e480m2e240m1/compilerxx.sh
index 4c6639215..f1ba30645 100755
--- a/src/Specific/montgomery64_2e480m2e240m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e480m2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e488m17/compiler.sh b/src/Specific/montgomery64_2e488m17/compiler.sh
index 4b76cb188..fad6335d6 100755
--- a/src/Specific/montgomery64_2e488m17/compiler.sh
+++ b/src/Specific/montgomery64_2e488m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e488m17/compilerxx.sh b/src/Specific/montgomery64_2e488m17/compilerxx.sh
index 815d21bb8..4d8591b2e 100755
--- a/src/Specific/montgomery64_2e488m17/compilerxx.sh
+++ b/src/Specific/montgomery64_2e488m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/montgomery64_2e489m21/compiler.sh b/src/Specific/montgomery64_2e489m21/compiler.sh
index b1fb857af..74326a623 100755
--- a/src/Specific/montgomery64_2e489m21/compiler.sh
+++ b/src/Specific/montgomery64_2e489m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery64_2e489m21/compilerxx.sh b/src/Specific/montgomery64_2e489m21/compilerxx.sh
index 39edea301..f12c5d43a 100755
--- a/src/Specific/montgomery64_2e489m21/compilerxx.sh
+++ b/src/Specific/montgomery64_2e489m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/montgomery64_2e495m31/compiler.sh b/src/Specific/montgomery64_2e495m31/compiler.sh
index 355b9735b..9fe7f51f0 100755
--- a/src/Specific/montgomery64_2e495m31/compiler.sh
+++ b/src/Specific/montgomery64_2e495m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery64_2e495m31/compilerxx.sh b/src/Specific/montgomery64_2e495m31/compilerxx.sh
index c5080441d..4630396e6 100755
--- a/src/Specific/montgomery64_2e495m31/compilerxx.sh
+++ b/src/Specific/montgomery64_2e495m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1/compiler.sh b/src/Specific/montgomery64_2e510m290x2e496m1/compiler.sh
index 5f78492aa..573e2ff94 100755
--- a/src/Specific/montgomery64_2e510m290x2e496m1/compiler.sh
+++ b/src/Specific/montgomery64_2e510m290x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1/compilerxx.sh b/src/Specific/montgomery64_2e510m290x2e496m1/compilerxx.sh
index ce86126bf..ab47f1b1d 100755
--- a/src/Specific/montgomery64_2e510m290x2e496m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e510m290x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e511m187/compiler.sh b/src/Specific/montgomery64_2e511m187/compiler.sh
index 583538611..2d4087a6b 100755
--- a/src/Specific/montgomery64_2e511m187/compiler.sh
+++ b/src/Specific/montgomery64_2e511m187/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery64_2e511m187/compilerxx.sh b/src/Specific/montgomery64_2e511m187/compilerxx.sh
index 35c176714..cff73c41e 100755
--- a/src/Specific/montgomery64_2e511m187/compilerxx.sh
+++ b/src/Specific/montgomery64_2e511m187/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/montgomery64_2e511m481/compiler.sh b/src/Specific/montgomery64_2e511m481/compiler.sh
index ab8207713..5c43f7832 100755
--- a/src/Specific/montgomery64_2e511m481/compiler.sh
+++ b/src/Specific/montgomery64_2e511m481/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/montgomery64_2e511m481/compilerxx.sh b/src/Specific/montgomery64_2e511m481/compilerxx.sh
index 86ad2131c..d38746c73 100755
--- a/src/Specific/montgomery64_2e511m481/compilerxx.sh
+++ b/src/Specific/montgomery64_2e511m481/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1/compiler.sh b/src/Specific/montgomery64_2e512m491x2e496m1/compiler.sh
index e1e78c3eb..1c23472b8 100755
--- a/src/Specific/montgomery64_2e512m491x2e496m1/compiler.sh
+++ b/src/Specific/montgomery64_2e512m491x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1/compilerxx.sh b/src/Specific/montgomery64_2e512m491x2e496m1/compilerxx.sh
index d77b6764d..13ab82706 100755
--- a/src/Specific/montgomery64_2e512m491x2e496m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e512m491x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e512m569/compiler.sh b/src/Specific/montgomery64_2e512m569/compiler.sh
index 886bbb33e..603e9279a 100755
--- a/src/Specific/montgomery64_2e512m569/compiler.sh
+++ b/src/Specific/montgomery64_2e512m569/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/montgomery64_2e512m569/compilerxx.sh b/src/Specific/montgomery64_2e512m569/compilerxx.sh
index 5aa29b1e9..a6aa5c766 100755
--- a/src/Specific/montgomery64_2e512m569/compilerxx.sh
+++ b/src/Specific/montgomery64_2e512m569/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/montgomery64_2e521m1/compiler.sh b/src/Specific/montgomery64_2e521m1/compiler.sh
index 4dc6e0136..f36811233 100755
--- a/src/Specific/montgomery64_2e521m1/compiler.sh
+++ b/src/Specific/montgomery64_2e521m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/montgomery64_2e521m1/compilerxx.sh b/src/Specific/montgomery64_2e521m1/compilerxx.sh
index c42ba01a7..4f0afd537 100755
--- a/src/Specific/montgomery64_2e521m1/compilerxx.sh
+++ b/src/Specific/montgomery64_2e521m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dmodulus_bytes_val='64' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -fno-peephole2 `#GCC BUG 81300` -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e127m1/compiler.sh b/src/Specific/solinas32_2e127m1/compiler.sh
index 53c900a48..354c26d63 100755
--- a/src/Specific/solinas32_2e127m1/compiler.sh
+++ b/src/Specific/solinas32_2e127m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e127m1/compilerxx.sh b/src/Specific/solinas32_2e127m1/compilerxx.sh
index ac9d1a35d..bccbc1bc3 100755
--- a/src/Specific/solinas32_2e127m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e127m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e129m25/compiler.sh b/src/Specific/solinas32_2e129m25/compiler.sh
index e6d869fc9..e6c9804e7 100755
--- a/src/Specific/solinas32_2e129m25/compiler.sh
+++ b/src/Specific/solinas32_2e129m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e129m25/compilerxx.sh b/src/Specific/solinas32_2e129m25/compilerxx.sh
index 9558bc471..2156bb612 100755
--- a/src/Specific/solinas32_2e129m25/compilerxx.sh
+++ b/src/Specific/solinas32_2e129m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e130m5/compiler.sh b/src/Specific/solinas32_2e130m5/compiler.sh
index 1df12c3ad..5e8d4bdaa 100755
--- a/src/Specific/solinas32_2e130m5/compiler.sh
+++ b/src/Specific/solinas32_2e130m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e130m5/compilerxx.sh b/src/Specific/solinas32_2e130m5/compilerxx.sh
index 5cd1bb054..ab1ebf7ff 100755
--- a/src/Specific/solinas32_2e130m5/compilerxx.sh
+++ b/src/Specific/solinas32_2e130m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e137m13/compiler.sh b/src/Specific/solinas32_2e137m13/compiler.sh
index 2106da81d..eb15ccb28 100755
--- a/src/Specific/solinas32_2e137m13/compiler.sh
+++ b/src/Specific/solinas32_2e137m13/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17.125' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/solinas32_2e137m13/compilerxx.sh b/src/Specific/solinas32_2e137m13/compilerxx.sh
index f4eda1546..fef02c69f 100755
--- a/src/Specific/solinas32_2e137m13/compilerxx.sh
+++ b/src/Specific/solinas32_2e137m13/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17.125' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,17,17}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/solinas32_2e140m27/compiler.sh b/src/Specific/solinas32_2e140m27/compiler.sh
index 2bb9069da..8c6e723ae 100755
--- a/src/Specific/solinas32_2e140m27/compiler.sh
+++ b/src/Specific/solinas32_2e140m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas32_2e140m27/compilerxx.sh b/src/Specific/solinas32_2e140m27/compilerxx.sh
index 4dc967ada..f1e55f2bf 100755
--- a/src/Specific/solinas32_2e140m27/compilerxx.sh
+++ b/src/Specific/solinas32_2e140m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas32_2e141m9/compiler.sh b/src/Specific/solinas32_2e141m9/compiler.sh
index 25e8cbd7f..4746874c5 100755
--- a/src/Specific/solinas32_2e141m9/compiler.sh
+++ b/src/Specific/solinas32_2e141m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e141m9/compilerxx.sh b/src/Specific/solinas32_2e141m9/compilerxx.sh
index 74058f51c..f9f85fcdd 100755
--- a/src/Specific/solinas32_2e141m9/compilerxx.sh
+++ b/src/Specific/solinas32_2e141m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e150m3/compiler.sh b/src/Specific/solinas32_2e150m3/compiler.sh
index 84c7f3d0e..ad006244b 100755
--- a/src/Specific/solinas32_2e150m3/compiler.sh
+++ b/src/Specific/solinas32_2e150m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e150m3/compilerxx.sh b/src/Specific/solinas32_2e150m3/compilerxx.sh
index 5a2294137..0f62d245e 100755
--- a/src/Specific/solinas32_2e150m3/compilerxx.sh
+++ b/src/Specific/solinas32_2e150m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e150m5/compiler.sh b/src/Specific/solinas32_2e150m5/compiler.sh
index 8638cfd9b..87c70adf6 100755
--- a/src/Specific/solinas32_2e150m5/compiler.sh
+++ b/src/Specific/solinas32_2e150m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e150m5/compilerxx.sh b/src/Specific/solinas32_2e150m5/compilerxx.sh
index 7e1aa885a..3f7f50b46 100755
--- a/src/Specific/solinas32_2e150m5/compilerxx.sh
+++ b/src/Specific/solinas32_2e150m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e152m17/compiler.sh b/src/Specific/solinas32_2e152m17/compiler.sh
index 427242894..04fccc459 100755
--- a/src/Specific/solinas32_2e152m17/compiler.sh
+++ b/src/Specific/solinas32_2e152m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e152m17/compilerxx.sh b/src/Specific/solinas32_2e152m17/compilerxx.sh
index d04240ca4..ccb2412d8 100755
--- a/src/Specific/solinas32_2e152m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e152m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e158m15/compiler.sh b/src/Specific/solinas32_2e158m15/compiler.sh
index 7b33bbc95..557ec9129 100755
--- a/src/Specific/solinas32_2e158m15/compiler.sh
+++ b/src/Specific/solinas32_2e158m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e158m15/compilerxx.sh b/src/Specific/solinas32_2e158m15/compilerxx.sh
index 1f57a82cb..e956eec7b 100755
--- a/src/Specific/solinas32_2e158m15/compilerxx.sh
+++ b/src/Specific/solinas32_2e158m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,27,26,26}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e165m25/compiler.sh b/src/Specific/solinas32_2e165m25/compiler.sh
index 836054a5c..ec185f487 100755
--- a/src/Specific/solinas32_2e165m25/compiler.sh
+++ b/src/Specific/solinas32_2e165m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e165m25/compilerxx.sh b/src/Specific/solinas32_2e165m25/compilerxx.sh
index 786f0580f..cb02adab2 100755
--- a/src/Specific/solinas32_2e165m25/compilerxx.sh
+++ b/src/Specific/solinas32_2e165m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,19,18,18,19,18,18}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e166m5/compiler.sh b/src/Specific/solinas32_2e166m5/compiler.sh
index c5e7b153b..aad01c818 100755
--- a/src/Specific/solinas32_2e166m5/compiler.sh
+++ b/src/Specific/solinas32_2e166m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='15 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e166m5/compilerxx.sh b/src/Specific/solinas32_2e166m5/compilerxx.sh
index 012ee5dd8..71d295eff 100755
--- a/src/Specific/solinas32_2e166m5/compilerxx.sh
+++ b/src/Specific/solinas32_2e166m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='15 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{16,15,15,15,15,15,15,15,15,15,15}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e171m19/compiler.sh b/src/Specific/solinas32_2e171m19/compiler.sh
index a2ffba17f..e2e3b54f5 100755
--- a/src/Specific/solinas32_2e171m19/compiler.sh
+++ b/src/Specific/solinas32_2e171m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e171m19/compilerxx.sh b/src/Specific/solinas32_2e171m19/compilerxx.sh
index 8a1c1fe61..168e901f9 100755
--- a/src/Specific/solinas32_2e171m19/compilerxx.sh
+++ b/src/Specific/solinas32_2e171m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e174m17/compiler.sh b/src/Specific/solinas32_2e174m17/compiler.sh
index 4e7157236..c61ac5c03 100755
--- a/src/Specific/solinas32_2e174m17/compiler.sh
+++ b/src/Specific/solinas32_2e174m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e174m17/compilerxx.sh b/src/Specific/solinas32_2e174m17/compilerxx.sh
index 5666126a3..ef637891d 100755
--- a/src/Specific/solinas32_2e174m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e174m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,20,19,19,20,19,19}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e174m3/compiler.sh b/src/Specific/solinas32_2e174m3/compiler.sh
index 74f9f85ab..5860cd8f6 100755
--- a/src/Specific/solinas32_2e174m3/compiler.sh
+++ b/src/Specific/solinas32_2e174m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='29' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e174m3/compilerxx.sh b/src/Specific/solinas32_2e174m3/compilerxx.sh
index 9b70681d4..147c5ac09 100755
--- a/src/Specific/solinas32_2e174m3/compilerxx.sh
+++ b/src/Specific/solinas32_2e174m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='29' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,29,29,29,29,29}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e189m25/compiler.sh b/src/Specific/solinas32_2e189m25/compiler.sh
index e135c491d..864f85e1c 100755
--- a/src/Specific/solinas32_2e189m25/compiler.sh
+++ b/src/Specific/solinas32_2e189m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e189m25/compilerxx.sh b/src/Specific/solinas32_2e189m25/compilerxx.sh
index bc60956f3..ed511366c 100755
--- a/src/Specific/solinas32_2e189m25/compilerxx.sh
+++ b/src/Specific/solinas32_2e189m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e190m11/compiler.sh b/src/Specific/solinas32_2e190m11/compiler.sh
index eefc6ec68..43bb4883b 100755
--- a/src/Specific/solinas32_2e190m11/compiler.sh
+++ b/src/Specific/solinas32_2e190m11/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27 + 1/7' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/solinas32_2e190m11/compilerxx.sh b/src/Specific/solinas32_2e190m11/compilerxx.sh
index 0f8586402..7c86d4aac 100755
--- a/src/Specific/solinas32_2e190m11/compilerxx.sh
+++ b/src/Specific/solinas32_2e190m11/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27 + 1/7' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/solinas32_2e191m19/compiler.sh b/src/Specific/solinas32_2e191m19/compiler.sh
index 8dfb2dbd5..ca1010621 100755
--- a/src/Specific/solinas32_2e191m19/compiler.sh
+++ b/src/Specific/solinas32_2e191m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e191m19/compilerxx.sh b/src/Specific/solinas32_2e191m19/compilerxx.sh
index 43867ea44..b1dcddc29 100755
--- a/src/Specific/solinas32_2e191m19/compilerxx.sh
+++ b/src/Specific/solinas32_2e191m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e192m2e64m1/compiler.sh b/src/Specific/solinas32_2e192m2e64m1/compiler.sh
index 7fed7d0fc..f0a7fda43 100755
--- a/src/Specific/solinas32_2e192m2e64m1/compiler.sh
+++ b/src/Specific/solinas32_2e192m2e64m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e192m2e64m1/compilerxx.sh b/src/Specific/solinas32_2e192m2e64m1/compilerxx.sh
index f30298e76..f80949c53 100755
--- a/src/Specific/solinas32_2e192m2e64m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e192m2e64m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e194m33/compiler.sh b/src/Specific/solinas32_2e194m33/compiler.sh
index d16d0da34..6c8015343 100755
--- a/src/Specific/solinas32_2e194m33/compiler.sh
+++ b/src/Specific/solinas32_2e194m33/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/solinas32_2e194m33/compilerxx.sh b/src/Specific/solinas32_2e194m33/compilerxx.sh
index 0128b9cd2..7d908b76b 100755
--- a/src/Specific/solinas32_2e194m33/compilerxx.sh
+++ b/src/Specific/solinas32_2e194m33/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/solinas32_2e196m15/compiler.sh b/src/Specific/solinas32_2e196m15/compiler.sh
index a80eee4ff..934480790 100755
--- a/src/Specific/solinas32_2e196m15/compiler.sh
+++ b/src/Specific/solinas32_2e196m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e196m15/compilerxx.sh b/src/Specific/solinas32_2e196m15/compilerxx.sh
index 5a88e1c37..c93810837 100755
--- a/src/Specific/solinas32_2e196m15/compilerxx.sh
+++ b/src/Specific/solinas32_2e196m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e198m17/compiler.sh b/src/Specific/solinas32_2e198m17/compiler.sh
index 74acf9f82..86f30fbad 100755
--- a/src/Specific/solinas32_2e198m17/compiler.sh
+++ b/src/Specific/solinas32_2e198m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e198m17/compilerxx.sh b/src/Specific/solinas32_2e198m17/compilerxx.sh
index 636f436b3..1480446cc 100755
--- a/src/Specific/solinas32_2e198m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e198m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e205m45x2e198m1/compiler.sh b/src/Specific/solinas32_2e205m45x2e198m1/compiler.sh
index 86b95ca35..e17721cd4 100755
--- a/src/Specific/solinas32_2e205m45x2e198m1/compiler.sh
+++ b/src/Specific/solinas32_2e205m45x2e198m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e205m45x2e198m1/compilerxx.sh b/src/Specific/solinas32_2e205m45x2e198m1/compilerxx.sh
index b551d51fe..5b9d4ccf3 100755
--- a/src/Specific/solinas32_2e205m45x2e198m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e205m45x2e198m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,21,20,21,20,21,20,21,20}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e206m5/compiler.sh b/src/Specific/solinas32_2e206m5/compiler.sh
index bcc470093..d2332eeb9 100755
--- a/src/Specific/solinas32_2e206m5/compiler.sh
+++ b/src/Specific/solinas32_2e206m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e206m5/compilerxx.sh b/src/Specific/solinas32_2e206m5/compilerxx.sh
index 5de98350a..ef6fba9d9 100755
--- a/src/Specific/solinas32_2e206m5/compilerxx.sh
+++ b/src/Specific/solinas32_2e206m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='17 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{18,17,17,17,17,17,18,17,17,17,17,17}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e212m29/compiler.sh b/src/Specific/solinas32_2e212m29/compiler.sh
index d562ca5b6..d28796fe2 100755
--- a/src/Specific/solinas32_2e212m29/compiler.sh
+++ b/src/Specific/solinas32_2e212m29/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/solinas32_2e212m29/compilerxx.sh b/src/Specific/solinas32_2e212m29/compilerxx.sh
index 245add80a..d6adc8c48 100755
--- a/src/Specific/solinas32_2e212m29/compilerxx.sh
+++ b/src/Specific/solinas32_2e212m29/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/solinas32_2e213m3/compiler.sh b/src/Specific/solinas32_2e213m3/compiler.sh
index bda38d19b..0ae799158 100755
--- a/src/Specific/solinas32_2e213m3/compiler.sh
+++ b/src/Specific/solinas32_2e213m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='14.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e213m3/compilerxx.sh b/src/Specific/solinas32_2e213m3/compilerxx.sh
index 2e0a25060..89549c1fd 100755
--- a/src/Specific/solinas32_2e213m3/compilerxx.sh
+++ b/src/Specific/solinas32_2e213m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='14.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{15,14,14,14,14,15,14,14,14,14,15,14,14,14,14}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e216m2e108m1/compiler.sh b/src/Specific/solinas32_2e216m2e108m1/compiler.sh
index fdf245d28..d041cdcec 100755
--- a/src/Specific/solinas32_2e216m2e108m1/compiler.sh
+++ b/src/Specific/solinas32_2e216m2e108m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e216m2e108m1/compilerxx.sh b/src/Specific/solinas32_2e216m2e108m1/compilerxx.sh
index 58b02f52b..5bb4672b1 100755
--- a/src/Specific/solinas32_2e216m2e108m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e216m2e108m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e221m3/compiler.sh b/src/Specific/solinas32_2e221m3/compiler.sh
index 88f74db0b..e0f1c4e81 100755
--- a/src/Specific/solinas32_2e221m3/compiler.sh
+++ b/src/Specific/solinas32_2e221m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e221m3/compilerxx.sh b/src/Specific/solinas32_2e221m3/compilerxx.sh
index 909bc1187..94267106b 100755
--- a/src/Specific/solinas32_2e221m3/compilerxx.sh
+++ b/src/Specific/solinas32_2e221m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,22,22,22,22}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e222m117/compiler.sh b/src/Specific/solinas32_2e222m117/compiler.sh
index d2cf9c1b9..3ca67d726 100755
--- a/src/Specific/solinas32_2e222m117/compiler.sh
+++ b/src/Specific/solinas32_2e222m117/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/solinas32_2e222m117/compilerxx.sh b/src/Specific/solinas32_2e222m117/compilerxx.sh
index 8079f2327..8d332170a 100755
--- a/src/Specific/solinas32_2e222m117/compilerxx.sh
+++ b/src/Specific/solinas32_2e222m117/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/solinas32_2e224m2e96p1/compiler.sh b/src/Specific/solinas32_2e224m2e96p1/compiler.sh
index 6e8b7ddb0..66e762ddc 100755
--- a/src/Specific/solinas32_2e224m2e96p1/compiler.sh
+++ b/src/Specific/solinas32_2e224m2e96p1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/solinas32_2e224m2e96p1/compilerxx.sh b/src/Specific/solinas32_2e224m2e96p1/compilerxx.sh
index 7f4fda169..64a646294 100755
--- a/src/Specific/solinas32_2e224m2e96p1/compilerxx.sh
+++ b/src/Specific/solinas32_2e224m2e96p1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/solinas32_2e226m5/compiler.sh b/src/Specific/solinas32_2e226m5/compiler.sh
index cc862de49..1149c445e 100755
--- a/src/Specific/solinas32_2e226m5/compiler.sh
+++ b/src/Specific/solinas32_2e226m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e226m5/compilerxx.sh b/src/Specific/solinas32_2e226m5/compilerxx.sh
index 65870de23..cd3bde2b7 100755
--- a/src/Specific/solinas32_2e226m5/compilerxx.sh
+++ b/src/Specific/solinas32_2e226m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas32_2e230m27/compiler.sh b/src/Specific/solinas32_2e230m27/compiler.sh
index 01d70be33..5e4652f6d 100755
--- a/src/Specific/solinas32_2e230m27/compiler.sh
+++ b/src/Specific/solinas32_2e230m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas32_2e230m27/compilerxx.sh b/src/Specific/solinas32_2e230m27/compilerxx.sh
index 4b0a9fa16..5cd7806b3 100755
--- a/src/Specific/solinas32_2e230m27/compilerxx.sh
+++ b/src/Specific/solinas32_2e230m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint32_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas32_2e235m15/compiler.sh b/src/Specific/solinas32_2e235m15/compiler.sh
index b6c9e9580..4ab62cbd8 100755
--- a/src/Specific/solinas32_2e235m15/compiler.sh
+++ b/src/Specific/solinas32_2e235m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e235m15/compilerxx.sh b/src/Specific/solinas32_2e235m15/compilerxx.sh
index 36620a3b2..c4387e662 100755
--- a/src/Specific/solinas32_2e235m15/compilerxx.sh
+++ b/src/Specific/solinas32_2e235m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e243m9/compiler.sh b/src/Specific/solinas32_2e243m9/compiler.sh
index 35e33abe4..931b27be9 100755
--- a/src/Specific/solinas32_2e243m9/compiler.sh
+++ b/src/Specific/solinas32_2e243m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e243m9/compilerxx.sh b/src/Specific/solinas32_2e243m9/compilerxx.sh
index b82576ae2..8c2c986c7 100755
--- a/src/Specific/solinas32_2e243m9/compilerxx.sh
+++ b/src/Specific/solinas32_2e243m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='27' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e251m9/compiler.sh b/src/Specific/solinas32_2e251m9/compiler.sh
index a7451f892..dbb9482ef 100755
--- a/src/Specific/solinas32_2e251m9/compiler.sh
+++ b/src/Specific/solinas32_2e251m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e251m9/compilerxx.sh b/src/Specific/solinas32_2e251m9/compilerxx.sh
index 14fba5e8d..aa00d224f 100755
--- a/src/Specific/solinas32_2e251m9/compilerxx.sh
+++ b/src/Specific/solinas32_2e251m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e254m127x2e240m1/compiler.sh b/src/Specific/solinas32_2e254m127x2e240m1/compiler.sh
index 1d52e8c7f..86a38c7f5 100755
--- a/src/Specific/solinas32_2e254m127x2e240m1/compiler.sh
+++ b/src/Specific/solinas32_2e254m127x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e254m127x2e240m1/compilerxx.sh b/src/Specific/solinas32_2e254m127x2e240m1/compilerxx.sh
index 6da7bbf32..4ea6c25bb 100755
--- a/src/Specific/solinas32_2e254m127x2e240m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e254m127x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/11' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='11' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e255m19/compiler.sh b/src/Specific/solinas32_2e255m19/compiler.sh
index 7015ca0ad..7bca2b51a 100755
--- a/src/Specific/solinas32_2e255m19/compiler.sh
+++ b/src/Specific/solinas32_2e255m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e255m19/compilerxx.sh b/src/Specific/solinas32_2e255m19/compilerxx.sh
index 7be8eddf4..340264d6b 100755
--- a/src/Specific/solinas32_2e255m19/compilerxx.sh
+++ b/src/Specific/solinas32_2e255m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25.5' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e255m2e4m2e1m1/compiler.sh b/src/Specific/solinas32_2e255m2e4m2e1m1/compiler.sh
index e824cc032..09597b47d 100755
--- a/src/Specific/solinas32_2e255m2e4m2e1m1/compiler.sh
+++ b/src/Specific/solinas32_2e255m2e4m2e1m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e255m2e4m2e1m1/compilerxx.sh b/src/Specific/solinas32_2e255m2e4m2e1m1/compilerxx.sh
index a1ad38459..ef68a08c2 100755
--- a/src/Specific/solinas32_2e255m2e4m2e1m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e255m2e4m2e1m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,29,28,28,29,28,28}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e255m765/compiler.sh b/src/Specific/solinas32_2e255m765/compiler.sh
index 329edd150..e5620a24c 100755
--- a/src/Specific/solinas32_2e255m765/compiler.sh
+++ b/src/Specific/solinas32_2e255m765/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/solinas32_2e255m765/compilerxx.sh b/src/Specific/solinas32_2e255m765/compilerxx.sh
index 36e201404..2bde37601 100755
--- a/src/Specific/solinas32_2e255m765/compilerxx.sh
+++ b/src/Specific/solinas32_2e255m765/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/solinas32_2e256m189/compiler.sh b/src/Specific/solinas32_2e256m189/compiler.sh
index 627be2817..65bee851e 100755
--- a/src/Specific/solinas32_2e256m189/compiler.sh
+++ b/src/Specific/solinas32_2e256m189/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/solinas32_2e256m189/compilerxx.sh b/src/Specific/solinas32_2e256m189/compilerxx.sh
index 9653263ea..c787765f1 100755
--- a/src/Specific/solinas32_2e256m189/compilerxx.sh
+++ b/src/Specific/solinas32_2e256m189/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compiler.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compiler.sh
index 32c25425d..bc68fe4d9 100755
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compiler.sh
+++ b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compilerxx.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compilerxx.sh
index 583d3e5b9..d06d58c86 100755
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e256m2e32m977/compiler.sh b/src/Specific/solinas32_2e256m2e32m977/compiler.sh
index 903ddfe82..32450349a 100755
--- a/src/Specific/solinas32_2e256m2e32m977/compiler.sh
+++ b/src/Specific/solinas32_2e256m2e32m977/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/solinas32_2e256m2e32m977/compilerxx.sh b/src/Specific/solinas32_2e256m2e32m977/compilerxx.sh
index 54c2bda58..9be4c08c3 100755
--- a/src/Specific/solinas32_2e256m2e32m977/compilerxx.sh
+++ b/src/Specific/solinas32_2e256m2e32m977/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/solinas32_2e256m88x2e240m1/compiler.sh b/src/Specific/solinas32_2e256m88x2e240m1/compiler.sh
index 458d3f658..ee766f61f 100755
--- a/src/Specific/solinas32_2e256m88x2e240m1/compiler.sh
+++ b/src/Specific/solinas32_2e256m88x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e256m88x2e240m1/compilerxx.sh b/src/Specific/solinas32_2e256m88x2e240m1/compilerxx.sh
index 76f1895b8..60038535a 100755
--- a/src/Specific/solinas32_2e256m88x2e240m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e256m88x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e266m3/compiler.sh b/src/Specific/solinas32_2e266m3/compiler.sh
index 410eed563..12347abdf 100755
--- a/src/Specific/solinas32_2e266m3/compiler.sh
+++ b/src/Specific/solinas32_2e266m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e266m3/compilerxx.sh b/src/Specific/solinas32_2e266m3/compilerxx.sh
index 4bfdd5b5e..a69101c55 100755
--- a/src/Specific/solinas32_2e266m3/compilerxx.sh
+++ b/src/Specific/solinas32_2e266m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22 + 1/6' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,22,23,22,22,22,22,22}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e285m9/compiler.sh b/src/Specific/solinas32_2e285m9/compiler.sh
index e4f596e3e..da818bf91 100755
--- a/src/Specific/solinas32_2e285m9/compiler.sh
+++ b/src/Specific/solinas32_2e285m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e285m9/compilerxx.sh b/src/Specific/solinas32_2e285m9/compilerxx.sh
index 17b216dc6..81b55200e 100755
--- a/src/Specific/solinas32_2e285m9/compilerxx.sh
+++ b/src/Specific/solinas32_2e285m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,19,19,19,19,19,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e291m19/compiler.sh b/src/Specific/solinas32_2e291m19/compiler.sh
index 34075171a..c6e1bc588 100755
--- a/src/Specific/solinas32_2e291m19/compiler.sh
+++ b/src/Specific/solinas32_2e291m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e291m19/compilerxx.sh b/src/Specific/solinas32_2e291m19/compilerxx.sh
index 73f1f3a9d..ef67df628 100755
--- a/src/Specific/solinas32_2e291m19/compilerxx.sh
+++ b/src/Specific/solinas32_2e291m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e321m9/compiler.sh b/src/Specific/solinas32_2e321m9/compiler.sh
index bf5fc147e..81d0e686c 100755
--- a/src/Specific/solinas32_2e321m9/compiler.sh
+++ b/src/Specific/solinas32_2e321m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e321m9/compilerxx.sh b/src/Specific/solinas32_2e321m9/compilerxx.sh
index 5f1725b02..89d547604 100755
--- a/src/Specific/solinas32_2e321m9/compilerxx.sh
+++ b/src/Specific/solinas32_2e321m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas32_2e322m2e161m1/compiler.sh b/src/Specific/solinas32_2e322m2e161m1/compiler.sh
index cd8a4d803..0bcea46f8 100755
--- a/src/Specific/solinas32_2e322m2e161m1/compiler.sh
+++ b/src/Specific/solinas32_2e322m2e161m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e322m2e161m1/compilerxx.sh b/src/Specific/solinas32_2e322m2e161m1/compilerxx.sh
index 80c408cf7..e3eb99a28 100755
--- a/src/Specific/solinas32_2e322m2e161m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e322m2e161m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e336m17/compiler.sh b/src/Specific/solinas32_2e336m17/compiler.sh
index cc0444967..545b4e215 100755
--- a/src/Specific/solinas32_2e336m17/compiler.sh
+++ b/src/Specific/solinas32_2e336m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e336m17/compilerxx.sh b/src/Specific/solinas32_2e336m17/compilerxx.sh
index c78607222..6e216378f 100755
--- a/src/Specific/solinas32_2e336m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e336m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='14' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e336m3/compiler.sh b/src/Specific/solinas32_2e336m3/compiler.sh
index 57b3f82c9..8874e55b5 100755
--- a/src/Specific/solinas32_2e336m3/compiler.sh
+++ b/src/Specific/solinas32_2e336m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e336m3/compilerxx.sh b/src/Specific/solinas32_2e336m3/compilerxx.sh
index ef6db28dd..d532cd692 100755
--- a/src/Specific/solinas32_2e336m3/compilerxx.sh
+++ b/src/Specific/solinas32_2e336m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='12' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e338m15/compiler.sh b/src/Specific/solinas32_2e338m15/compiler.sh
index bd47509f4..464c26fbc 100755
--- a/src/Specific/solinas32_2e338m15/compiler.sh
+++ b/src/Specific/solinas32_2e338m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e338m15/compilerxx.sh b/src/Specific/solinas32_2e338m15/compilerxx.sh
index 3e7bedb21..f9875e7f2 100755
--- a/src/Specific/solinas32_2e338m15/compilerxx.sh
+++ b/src/Specific/solinas32_2e338m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='13' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint32_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas32_2e369m25/compiler.sh b/src/Specific/solinas32_2e369m25/compiler.sh
index 47aac7fbf..bbfa49f66 100755
--- a/src/Specific/solinas32_2e369m25/compiler.sh
+++ b/src/Specific/solinas32_2e369m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e369m25/compilerxx.sh b/src/Specific/solinas32_2e369m25/compilerxx.sh
index f517bc497..6fd9bd6dc 100755
--- a/src/Specific/solinas32_2e369m25/compilerxx.sh
+++ b/src/Specific/solinas32_2e369m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint32_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas32_2e379m19/compiler.sh b/src/Specific/solinas32_2e379m19/compiler.sh
index 9bcac13a0..0e3aa7b58 100755
--- a/src/Specific/solinas32_2e379m19/compiler.sh
+++ b/src/Specific/solinas32_2e379m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/18' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e379m19/compilerxx.sh b/src/Specific/solinas32_2e379m19/compilerxx.sh
index ef74bf0e0..d3c64a295 100755
--- a/src/Specific/solinas32_2e379m19/compilerxx.sh
+++ b/src/Specific/solinas32_2e379m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/18' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas32_2e382m105/compiler.sh b/src/Specific/solinas32_2e382m105/compiler.sh
index ad168d1ab..b5e7ff15a 100755
--- a/src/Specific/solinas32_2e382m105/compiler.sh
+++ b/src/Specific/solinas32_2e382m105/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/solinas32_2e382m105/compilerxx.sh b/src/Specific/solinas32_2e382m105/compilerxx.sh
index 3ee77685e..3115a5ff5 100755
--- a/src/Specific/solinas32_2e382m105/compilerxx.sh
+++ b/src/Specific/solinas32_2e382m105/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='19.1' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{20,19,19,19,19,19,19,19,19,19,20,19,19,19,19,19,19,19,19,19}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compiler.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compiler.sh
index f6e9297c1..cf869811b 100755
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compiler.sh
+++ b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compilerxx.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compilerxx.sh
index 4b8120e4b..5d7d2ac31 100755
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e384m317/compiler.sh b/src/Specific/solinas32_2e384m317/compiler.sh
index cd9e97328..315fb77f8 100755
--- a/src/Specific/solinas32_2e384m317/compiler.sh
+++ b/src/Specific/solinas32_2e384m317/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/solinas32_2e384m317/compilerxx.sh b/src/Specific/solinas32_2e384m317/compilerxx.sh
index 95e52cd5a..a86e40103 100755
--- a/src/Specific/solinas32_2e384m317/compilerxx.sh
+++ b/src/Specific/solinas32_2e384m317/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/solinas32_2e384m5x2e368m1/compiler.sh b/src/Specific/solinas32_2e384m5x2e368m1/compiler.sh
index 5720f44ca..8ae607696 100755
--- a/src/Specific/solinas32_2e384m5x2e368m1/compiler.sh
+++ b/src/Specific/solinas32_2e384m5x2e368m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e384m5x2e368m1/compilerxx.sh b/src/Specific/solinas32_2e384m5x2e368m1/compilerxx.sh
index b4dbcd53a..aa0124781 100755
--- a/src/Specific/solinas32_2e384m5x2e368m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e384m5x2e368m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e384m79x2e376m1/compiler.sh b/src/Specific/solinas32_2e384m79x2e376m1/compiler.sh
index 9d124def9..0c7b87e6d 100755
--- a/src/Specific/solinas32_2e384m79x2e376m1/compiler.sh
+++ b/src/Specific/solinas32_2e384m79x2e376m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e384m79x2e376m1/compilerxx.sh b/src/Specific/solinas32_2e384m79x2e376m1/compilerxx.sh
index fd5e648ca..097bf323b 100755
--- a/src/Specific/solinas32_2e384m79x2e376m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e384m79x2e376m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='24' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e401m31/compiler.sh b/src/Specific/solinas32_2e401m31/compiler.sh
index 0776d6d46..bd05f620a 100755
--- a/src/Specific/solinas32_2e401m31/compiler.sh
+++ b/src/Specific/solinas32_2e401m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas32_2e401m31/compilerxx.sh b/src/Specific/solinas32_2e401m31/compilerxx.sh
index 0ae22def0..ae218013f 100755
--- a/src/Specific/solinas32_2e401m31/compilerxx.sh
+++ b/src/Specific/solinas32_2e401m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='25 + 1/16' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas32_2e414m17/compiler.sh b/src/Specific/solinas32_2e414m17/compiler.sh
index 510efaa07..dad2c2a10 100755
--- a/src/Specific/solinas32_2e414m17/compiler.sh
+++ b/src/Specific/solinas32_2e414m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e414m17/compilerxx.sh b/src/Specific/solinas32_2e414m17/compilerxx.sh
index a29667069..5777bd202 100755
--- a/src/Specific/solinas32_2e414m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e414m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='23' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e416m2e208m1/compiler.sh b/src/Specific/solinas32_2e416m2e208m1/compiler.sh
index 93d374b29..79c49a113 100755
--- a/src/Specific/solinas32_2e416m2e208m1/compiler.sh
+++ b/src/Specific/solinas32_2e416m2e208m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e416m2e208m1/compilerxx.sh b/src/Specific/solinas32_2e416m2e208m1/compilerxx.sh
index 27703e817..0580d9518 100755
--- a/src/Specific/solinas32_2e416m2e208m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e416m2e208m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e444m17/compiler.sh b/src/Specific/solinas32_2e444m17/compiler.sh
index c974e4321..95d404cd5 100755
--- a/src/Specific/solinas32_2e444m17/compiler.sh
+++ b/src/Specific/solinas32_2e444m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e444m17/compilerxx.sh b/src/Specific/solinas32_2e444m17/compilerxx.sh
index bf6caa2c9..f33f74b44 100755
--- a/src/Specific/solinas32_2e444m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e444m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='22.2' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e448m2e224m1/compiler.sh b/src/Specific/solinas32_2e448m2e224m1/compiler.sh
index 9efaa12ae..7064ced56 100755
--- a/src/Specific/solinas32_2e448m2e224m1/compiler.sh
+++ b/src/Specific/solinas32_2e448m2e224m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e448m2e224m1/compilerxx.sh b/src/Specific/solinas32_2e448m2e224m1/compilerxx.sh
index ba7078692..3678dc692 100755
--- a/src/Specific/solinas32_2e448m2e224m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e448m2e224m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e450m2e225m1/compiler.sh b/src/Specific/solinas32_2e450m2e225m1/compiler.sh
index 601756afb..685ceebcf 100755
--- a/src/Specific/solinas32_2e450m2e225m1/compiler.sh
+++ b/src/Specific/solinas32_2e450m2e225m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e450m2e225m1/compilerxx.sh b/src/Specific/solinas32_2e450m2e225m1/compilerxx.sh
index 1e170b4a6..fd8a9ac2a 100755
--- a/src/Specific/solinas32_2e450m2e225m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e450m2e225m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='15' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e452m3/compiler.sh b/src/Specific/solinas32_2e452m3/compiler.sh
index 3bdb8d2d8..324a60395 100755
--- a/src/Specific/solinas32_2e452m3/compiler.sh
+++ b/src/Specific/solinas32_2e452m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e452m3/compilerxx.sh b/src/Specific/solinas32_2e452m3/compilerxx.sh
index bfad0ab89..c27e45b5b 100755
--- a/src/Specific/solinas32_2e452m3/compilerxx.sh
+++ b/src/Specific/solinas32_2e452m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='28.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{29,28,28,28,29,28,28,28,29,28,28,28,29,28,28,28}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint32_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas32_2e468m17/compiler.sh b/src/Specific/solinas32_2e468m17/compiler.sh
index 00a9fe20e..8c97acb70 100755
--- a/src/Specific/solinas32_2e468m17/compiler.sh
+++ b/src/Specific/solinas32_2e468m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e468m17/compilerxx.sh b/src/Specific/solinas32_2e468m17/compilerxx.sh
index f7c0fb450..328ca5640 100755
--- a/src/Specific/solinas32_2e468m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e468m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='18' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e480m2e240m1/compiler.sh b/src/Specific/solinas32_2e480m2e240m1/compiler.sh
index b55e60025..dee78ee92 100755
--- a/src/Specific/solinas32_2e480m2e240m1/compiler.sh
+++ b/src/Specific/solinas32_2e480m2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e480m2e240m1/compilerxx.sh b/src/Specific/solinas32_2e480m2e240m1/compilerxx.sh
index 91ce57f46..187fb4db1 100755
--- a/src/Specific/solinas32_2e480m2e240m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e480m2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e488m17/compiler.sh b/src/Specific/solinas32_2e488m17/compiler.sh
index 8d9d39446..bf303c798 100755
--- a/src/Specific/solinas32_2e488m17/compiler.sh
+++ b/src/Specific/solinas32_2e488m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e488m17/compilerxx.sh b/src/Specific/solinas32_2e488m17/compilerxx.sh
index 35df52d17..957e36b8a 100755
--- a/src/Specific/solinas32_2e488m17/compilerxx.sh
+++ b/src/Specific/solinas32_2e488m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='20 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20,21,20,20}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint32_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas32_2e489m21/compiler.sh b/src/Specific/solinas32_2e489m21/compiler.sh
index 960fcc4ca..ef7f06474 100755
--- a/src/Specific/solinas32_2e489m21/compiler.sh
+++ b/src/Specific/solinas32_2e489m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='27' -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='27' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/solinas32_2e489m21/compilerxx.sh b/src/Specific/solinas32_2e489m21/compilerxx.sh
index 56b38aa2f..1ad133c76 100755
--- a/src/Specific/solinas32_2e489m21/compilerxx.sh
+++ b/src/Specific/solinas32_2e489m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18 + 1/9' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='27' -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18,19,18,18,18,18,18,18,18,18}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='27' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/solinas32_2e495m31/compiler.sh b/src/Specific/solinas32_2e495m31/compiler.sh
index c431f1b75..3df381a8e 100755
--- a/src/Specific/solinas32_2e495m31/compiler.sh
+++ b/src/Specific/solinas32_2e495m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='19' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas32_2e495m31/compilerxx.sh b/src/Specific/solinas32_2e495m31/compilerxx.sh
index 4c9e01cb5..75978c0f8 100755
--- a/src/Specific/solinas32_2e495m31/compilerxx.sh
+++ b/src/Specific/solinas32_2e495m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/19' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='19' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint32_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas32_2e510m290x2e496m1/compiler.sh b/src/Specific/solinas32_2e510m290x2e496m1/compiler.sh
index 280bd7519..93a613713 100755
--- a/src/Specific/solinas32_2e510m290x2e496m1/compiler.sh
+++ b/src/Specific/solinas32_2e510m290x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e510m290x2e496m1/compilerxx.sh b/src/Specific/solinas32_2e510m290x2e496m1/compilerxx.sh
index ce2086710..6489f6f54 100755
--- a/src/Specific/solinas32_2e510m290x2e496m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e510m290x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21,22,21,21,21}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e511m187/compiler.sh b/src/Specific/solinas32_2e511m187/compiler.sh
index 3b1887002..551fc73e2 100755
--- a/src/Specific/solinas32_2e511m187/compiler.sh
+++ b/src/Specific/solinas32_2e511m187/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/solinas32_2e511m187/compilerxx.sh b/src/Specific/solinas32_2e511m187/compilerxx.sh
index 076a0762a..4a91601d1 100755
--- a/src/Specific/solinas32_2e511m187/compilerxx.sh
+++ b/src/Specific/solinas32_2e511m187/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/solinas32_2e511m481/compiler.sh b/src/Specific/solinas32_2e511m481/compiler.sh
index 4c74e9303..e48d87afc 100755
--- a/src/Specific/solinas32_2e511m481/compiler.sh
+++ b/src/Specific/solinas32_2e511m481/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/solinas32_2e511m481/compilerxx.sh b/src/Specific/solinas32_2e511m481/compilerxx.sh
index ee1a48cf3..1776c2da5 100755
--- a/src/Specific/solinas32_2e511m481/compilerxx.sh
+++ b/src/Specific/solinas32_2e511m481/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='18.25' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='28' -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18,19,18,18,18}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='28' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/solinas32_2e512m491x2e496m1/compiler.sh b/src/Specific/solinas32_2e512m491x2e496m1/compiler.sh
index 79fc76bf2..a2a1e1f9f 100755
--- a/src/Specific/solinas32_2e512m491x2e496m1/compiler.sh
+++ b/src/Specific/solinas32_2e512m491x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e512m491x2e496m1/compilerxx.sh b/src/Specific/solinas32_2e512m491x2e496m1/compilerxx.sh
index 0eaf9238f..0bc02a8b9 100755
--- a/src/Specific/solinas32_2e512m491x2e496m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e512m491x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e512m569/compiler.sh b/src/Specific/solinas32_2e512m569/compiler.sh
index 34a39e812..1d00017dc 100755
--- a/src/Specific/solinas32_2e512m569/compiler.sh
+++ b/src/Specific/solinas32_2e512m569/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/solinas32_2e512m569/compilerxx.sh b/src/Specific/solinas32_2e512m569/compilerxx.sh
index b291f85fb..de852cfb4 100755
--- a/src/Specific/solinas32_2e512m569/compilerxx.sh
+++ b/src/Specific/solinas32_2e512m569/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='21 + 1/3' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='24' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint32_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/solinas32_2e521m1/compiler.sh b/src/Specific/solinas32_2e521m1/compiler.sh
index 848a2e8b5..696b3be89 100755
--- a/src/Specific/solinas32_2e521m1/compiler.sh
+++ b/src/Specific/solinas32_2e521m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/20' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas32_2e521m1/compilerxx.sh b/src/Specific/solinas32_2e521m1/compilerxx.sh
index 1df84dc9c..065a58534 100755
--- a/src/Specific/solinas32_2e521m1/compilerxx.sh
+++ b/src/Specific/solinas32_2e521m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='26 + 1/20' -Dlimb_t=uint32_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='20' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint32_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e127m1/compiler.sh b/src/Specific/solinas64_2e127m1/compiler.sh
index c0923c488..f9a15af50 100755
--- a/src/Specific/solinas64_2e127m1/compiler.sh
+++ b/src/Specific/solinas64_2e127m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e127m1/compilerxx.sh b/src/Specific/solinas64_2e127m1/compilerxx.sh
index 378a8b57b..3448738cd 100755
--- a/src/Specific/solinas64_2e127m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e127m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<127) - 1 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42}' -Dq_mpz='(1_mpz<<127) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e129m25/compiler.sh b/src/Specific/solinas64_2e129m25/compiler.sh
index 76eb58074..ee41bca43 100755
--- a/src/Specific/solinas64_2e129m25/compiler.sh
+++ b/src/Specific/solinas64_2e129m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,43,43}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e129m25/compilerxx.sh b/src/Specific/solinas64_2e129m25/compilerxx.sh
index 53189effd..e2c4f8bf4 100755
--- a/src/Specific/solinas64_2e129m25/compilerxx.sh
+++ b/src/Specific/solinas64_2e129m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<129) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,43,43}' -Dq_mpz='(1_mpz<<129) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e130m5/compiler.sh b/src/Specific/solinas64_2e130m5/compiler.sh
index aedb223d1..2c02d2fcf 100755
--- a/src/Specific/solinas64_2e130m5/compiler.sh
+++ b/src/Specific/solinas64_2e130m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{44,43,43}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e130m5/compilerxx.sh b/src/Specific/solinas64_2e130m5/compilerxx.sh
index 6df699d6c..01e00383d 100755
--- a/src/Specific/solinas64_2e130m5/compilerxx.sh
+++ b/src/Specific/solinas64_2e130m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='43 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<130) - 5 ' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{44,43,43}' -Dq_mpz='(1_mpz<<130) - 5 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e137m13/compiler.sh b/src/Specific/solinas64_2e137m13/compiler.sh
index 08f5d2665..579648dcb 100755
--- a/src/Specific/solinas64_2e137m13/compiler.sh
+++ b/src/Specific/solinas64_2e137m13/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='34.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,34,34,34}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/solinas64_2e137m13/compilerxx.sh b/src/Specific/solinas64_2e137m13/compilerxx.sh
index 3b74aa4d8..258737f95 100755
--- a/src/Specific/solinas64_2e137m13/compilerxx.sh
+++ b/src/Specific/solinas64_2e137m13/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='34.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<137) - 13' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,34,34,34}' -Dq_mpz='(1_mpz<<137) - 13' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' "$@"
diff --git a/src/Specific/solinas64_2e140m27/compiler.sh b/src/Specific/solinas64_2e140m27/compiler.sh
index 5f52101ef..5222a10da 100755
--- a/src/Specific/solinas64_2e140m27/compiler.sh
+++ b/src/Specific/solinas64_2e140m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='35' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,35,35,35}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas64_2e140m27/compilerxx.sh b/src/Specific/solinas64_2e140m27/compilerxx.sh
index c23f46f87..31761255e 100755
--- a/src/Specific/solinas64_2e140m27/compilerxx.sh
+++ b/src/Specific/solinas64_2e140m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='35' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<140) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{35,35,35,35}' -Dq_mpz='(1_mpz<<140) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas64_2e141m9/compiler.sh b/src/Specific/solinas64_2e141m9/compiler.sh
index 9f7fd47d2..f17246c7d 100755
--- a/src/Specific/solinas64_2e141m9/compiler.sh
+++ b/src/Specific/solinas64_2e141m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e141m9/compilerxx.sh b/src/Specific/solinas64_2e141m9/compilerxx.sh
index b34a1be69..7f479d1f1 100755
--- a/src/Specific/solinas64_2e141m9/compilerxx.sh
+++ b/src/Specific/solinas64_2e141m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<141) - 9' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47}' -Dq_mpz='(1_mpz<<141) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e150m3/compiler.sh b/src/Specific/solinas64_2e150m3/compiler.sh
index de4b14120..815681fce 100755
--- a/src/Specific/solinas64_2e150m3/compiler.sh
+++ b/src/Specific/solinas64_2e150m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e150m3/compilerxx.sh b/src/Specific/solinas64_2e150m3/compilerxx.sh
index 21a90a8b0..38ff2a3da 100755
--- a/src/Specific/solinas64_2e150m3/compilerxx.sh
+++ b/src/Specific/solinas64_2e150m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e150m5/compiler.sh b/src/Specific/solinas64_2e150m5/compiler.sh
index 9c6f6fcbf..a79c15e49 100755
--- a/src/Specific/solinas64_2e150m5/compiler.sh
+++ b/src/Specific/solinas64_2e150m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e150m5/compilerxx.sh b/src/Specific/solinas64_2e150m5/compilerxx.sh
index 39352a002..0d2c512b3 100755
--- a/src/Specific/solinas64_2e150m5/compilerxx.sh
+++ b/src/Specific/solinas64_2e150m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<150) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,50,50}' -Dq_mpz='(1_mpz<<150) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e152m17/compiler.sh b/src/Specific/solinas64_2e152m17/compiler.sh
index f4360de18..e04b5d2ab 100755
--- a/src/Specific/solinas64_2e152m17/compiler.sh
+++ b/src/Specific/solinas64_2e152m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{38,38,38,38}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e152m17/compilerxx.sh b/src/Specific/solinas64_2e152m17/compilerxx.sh
index 0ca6cb609..9fcda583d 100755
--- a/src/Specific/solinas64_2e152m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e152m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<152) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{38,38,38,38}' -Dq_mpz='(1_mpz<<152) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e158m15/compiler.sh b/src/Specific/solinas64_2e158m15/compiler.sh
index 4573e16ee..ec64c21e7 100755
--- a/src/Specific/solinas64_2e158m15/compiler.sh
+++ b/src/Specific/solinas64_2e158m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='39.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{40,39,40,39}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e158m15/compilerxx.sh b/src/Specific/solinas64_2e158m15/compilerxx.sh
index fe95a1683..d31f031b0 100755
--- a/src/Specific/solinas64_2e158m15/compilerxx.sh
+++ b/src/Specific/solinas64_2e158m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='39.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<158) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{40,39,40,39}' -Dq_mpz='(1_mpz<<158) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='20' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e165m25/compiler.sh b/src/Specific/solinas64_2e165m25/compiler.sh
index bf10627b0..4b61deeb6 100755
--- a/src/Specific/solinas64_2e165m25/compiler.sh
+++ b/src/Specific/solinas64_2e165m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e165m25/compilerxx.sh b/src/Specific/solinas64_2e165m25/compilerxx.sh
index 373163540..8bfa859bb 100755
--- a/src/Specific/solinas64_2e165m25/compilerxx.sh
+++ b/src/Specific/solinas64_2e165m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<165) - 25' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55}' -Dq_mpz='(1_mpz<<165) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e166m5/compiler.sh b/src/Specific/solinas64_2e166m5/compiler.sh
index 92b7f1e77..a8de0625b 100755
--- a/src/Specific/solinas64_2e166m5/compiler.sh
+++ b/src/Specific/solinas64_2e166m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e166m5/compilerxx.sh b/src/Specific/solinas64_2e166m5/compilerxx.sh
index c527fcd9c..e7b9228a2 100755
--- a/src/Specific/solinas64_2e166m5/compilerxx.sh
+++ b/src/Specific/solinas64_2e166m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<166) - 5' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55}' -Dq_mpz='(1_mpz<<166) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e171m19/compiler.sh b/src/Specific/solinas64_2e171m19/compiler.sh
index 14001ba18..9adec1b7b 100755
--- a/src/Specific/solinas64_2e171m19/compiler.sh
+++ b/src/Specific/solinas64_2e171m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e171m19/compilerxx.sh b/src/Specific/solinas64_2e171m19/compilerxx.sh
index 3e2478c74..d8c187363 100755
--- a/src/Specific/solinas64_2e171m19/compilerxx.sh
+++ b/src/Specific/solinas64_2e171m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<171) - 19' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57}' -Dq_mpz='(1_mpz<<171) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e174m17/compiler.sh b/src/Specific/solinas64_2e174m17/compiler.sh
index 434c0cd68..a3d92135a 100755
--- a/src/Specific/solinas64_2e174m17/compiler.sh
+++ b/src/Specific/solinas64_2e174m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e174m17/compilerxx.sh b/src/Specific/solinas64_2e174m17/compilerxx.sh
index 262f19136..24dff44c3 100755
--- a/src/Specific/solinas64_2e174m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e174m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 17' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e174m3/compiler.sh b/src/Specific/solinas64_2e174m3/compiler.sh
index 5e93d6306..0fe7c49cf 100755
--- a/src/Specific/solinas64_2e174m3/compiler.sh
+++ b/src/Specific/solinas64_2e174m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e174m3/compilerxx.sh b/src/Specific/solinas64_2e174m3/compilerxx.sh
index 3f91562c8..e1b176c93 100755
--- a/src/Specific/solinas64_2e174m3/compilerxx.sh
+++ b/src/Specific/solinas64_2e174m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<174) - 3' -Dmodulus_limbs='3' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,58,58}' -Dq_mpz='(1_mpz<<174) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e189m25/compiler.sh b/src/Specific/solinas64_2e189m25/compiler.sh
index 42d924992..c68628594 100755
--- a/src/Specific/solinas64_2e189m25/compiler.sh
+++ b/src/Specific/solinas64_2e189m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,47,47}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e189m25/compilerxx.sh b/src/Specific/solinas64_2e189m25/compilerxx.sh
index a783ee618..7edf2c43a 100755
--- a/src/Specific/solinas64_2e189m25/compilerxx.sh
+++ b/src/Specific/solinas64_2e189m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<189) - 25' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,47,47}' -Dq_mpz='(1_mpz<<189) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e190m11/compiler.sh b/src/Specific/solinas64_2e190m11/compiler.sh
index 7ea15a2af..34014bde5 100755
--- a/src/Specific/solinas64_2e190m11/compiler.sh
+++ b/src/Specific/solinas64_2e190m11/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,48,47}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/solinas64_2e190m11/compilerxx.sh b/src/Specific/solinas64_2e190m11/compilerxx.sh
index d740ac4d4..76b264004 100755
--- a/src/Specific/solinas64_2e190m11/compilerxx.sh
+++ b/src/Specific/solinas64_2e190m11/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<190) - 11' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,47,48,47}' -Dq_mpz='(1_mpz<<190) - 11' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' "$@"
diff --git a/src/Specific/solinas64_2e191m19/compiler.sh b/src/Specific/solinas64_2e191m19/compiler.sh
index d5c8e3c45..bc5bfb6be 100755
--- a/src/Specific/solinas64_2e191m19/compiler.sh
+++ b/src/Specific/solinas64_2e191m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e191m19/compilerxx.sh b/src/Specific/solinas64_2e191m19/compilerxx.sh
index fccfe7ae2..77e540458 100755
--- a/src/Specific/solinas64_2e191m19/compilerxx.sh
+++ b/src/Specific/solinas64_2e191m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<191) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dq_mpz='(1_mpz<<191) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e192m2e64m1/compiler.sh b/src/Specific/solinas64_2e192m2e64m1/compiler.sh
index 9004e004c..54ad742bf 100755
--- a/src/Specific/solinas64_2e192m2e64m1/compiler.sh
+++ b/src/Specific/solinas64_2e192m2e64m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e192m2e64m1/compilerxx.sh b/src/Specific/solinas64_2e192m2e64m1/compilerxx.sh
index f2886600e..5cd026312 100755
--- a/src/Specific/solinas64_2e192m2e64m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e192m2e64m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48}' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e194m33/compiler.sh b/src/Specific/solinas64_2e194m33/compiler.sh
index e6f60ddf8..cdce2687c 100755
--- a/src/Specific/solinas64_2e194m33/compiler.sh
+++ b/src/Specific/solinas64_2e194m33/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,48,49,48}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/solinas64_2e194m33/compilerxx.sh b/src/Specific/solinas64_2e194m33/compilerxx.sh
index 050569865..fc2193c7c 100755
--- a/src/Specific/solinas64_2e194m33/compilerxx.sh
+++ b/src/Specific/solinas64_2e194m33/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<194) - 33' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,48,49,48}' -Dq_mpz='(1_mpz<<194) - 33' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' "$@"
diff --git a/src/Specific/solinas64_2e196m15/compiler.sh b/src/Specific/solinas64_2e196m15/compiler.sh
index dfedf6c4a..f7c803d19 100755
--- a/src/Specific/solinas64_2e196m15/compiler.sh
+++ b/src/Specific/solinas64_2e196m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,49,49,49}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e196m15/compilerxx.sh b/src/Specific/solinas64_2e196m15/compilerxx.sh
index 26ca87af6..37eb6d8f6 100755
--- a/src/Specific/solinas64_2e196m15/compilerxx.sh
+++ b/src/Specific/solinas64_2e196m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<196) - 15' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{49,49,49,49}' -Dq_mpz='(1_mpz<<196) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e198m17/compiler.sh b/src/Specific/solinas64_2e198m17/compiler.sh
index e74ea55d9..668ae39fe 100755
--- a/src/Specific/solinas64_2e198m17/compiler.sh
+++ b/src/Specific/solinas64_2e198m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,49,50,49}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e198m17/compilerxx.sh b/src/Specific/solinas64_2e198m17/compilerxx.sh
index 39b2eea97..c88377585 100755
--- a/src/Specific/solinas64_2e198m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e198m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='49.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<198) - 17' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{50,49,50,49}' -Dq_mpz='(1_mpz<<198) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e205m45x2e198m1/compiler.sh b/src/Specific/solinas64_2e205m45x2e198m1/compiler.sh
index d97d161f8..fec6fc2f6 100755
--- a/src/Specific/solinas64_2e205m45x2e198m1/compiler.sh
+++ b/src/Specific/solinas64_2e205m45x2e198m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,51,51}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e205m45x2e198m1/compilerxx.sh b/src/Specific/solinas64_2e205m45x2e198m1/compilerxx.sh
index 7069d9920..446bf19f9 100755
--- a/src/Specific/solinas64_2e205m45x2e198m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e205m45x2e198m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,51,51}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51}' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e206m5/compiler.sh b/src/Specific/solinas64_2e206m5/compiler.sh
index 56d04bc4c..f09fd29b9 100755
--- a/src/Specific/solinas64_2e206m5/compiler.sh
+++ b/src/Specific/solinas64_2e206m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,52,51}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e206m5/compilerxx.sh b/src/Specific/solinas64_2e206m5/compilerxx.sh
index 5b4c45082..1a4cdeeff 100755
--- a/src/Specific/solinas64_2e206m5/compilerxx.sh
+++ b/src/Specific/solinas64_2e206m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<206) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,52,51}' -Dq_mpz='(1_mpz<<206) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e212m29/compiler.sh b/src/Specific/solinas64_2e212m29/compiler.sh
index a888ab5e0..4168eea62 100755
--- a/src/Specific/solinas64_2e212m29/compiler.sh
+++ b/src/Specific/solinas64_2e212m29/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,53,53,53}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/solinas64_2e212m29/compilerxx.sh b/src/Specific/solinas64_2e212m29/compilerxx.sh
index 0e7963823..954768aa2 100755
--- a/src/Specific/solinas64_2e212m29/compilerxx.sh
+++ b/src/Specific/solinas64_2e212m29/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<212) - 29' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,53,53,53}' -Dq_mpz='(1_mpz<<212) - 29' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' "$@"
diff --git a/src/Specific/solinas64_2e213m3/compiler.sh b/src/Specific/solinas64_2e213m3/compiler.sh
index 20c1ff167..67e3b5bd9 100755
--- a/src/Specific/solinas64_2e213m3/compiler.sh
+++ b/src/Specific/solinas64_2e213m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e213m3/compilerxx.sh b/src/Specific/solinas64_2e213m3/compilerxx.sh
index a0583b44b..5dbc5a450 100755
--- a/src/Specific/solinas64_2e213m3/compilerxx.sh
+++ b/src/Specific/solinas64_2e213m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<213) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53}' -Dq_mpz='(1_mpz<<213) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e216m2e108m1/compiler.sh b/src/Specific/solinas64_2e216m2e108m1/compiler.sh
index 6219b0d17..6745140d9 100755
--- a/src/Specific/solinas64_2e216m2e108m1/compiler.sh
+++ b/src/Specific/solinas64_2e216m2e108m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,54,54,54}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e216m2e108m1/compilerxx.sh b/src/Specific/solinas64_2e216m2e108m1/compilerxx.sh
index 922c87ee2..91f866af2 100755
--- a/src/Specific/solinas64_2e216m2e108m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e216m2e108m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,54,54,54}' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e221m3/compiler.sh b/src/Specific/solinas64_2e221m3/compiler.sh
index 49d7c0d14..536176ac2 100755
--- a/src/Specific/solinas64_2e221m3/compiler.sh
+++ b/src/Specific/solinas64_2e221m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55,55}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e221m3/compilerxx.sh b/src/Specific/solinas64_2e221m3/compilerxx.sh
index a11b98315..1d380f68d 100755
--- a/src/Specific/solinas64_2e221m3/compilerxx.sh
+++ b/src/Specific/solinas64_2e221m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<221) - 3' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,55,55}' -Dq_mpz='(1_mpz<<221) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e222m117/compiler.sh b/src/Specific/solinas64_2e222m117/compiler.sh
index 2f5ae06cb..271f49e57 100755
--- a/src/Specific/solinas64_2e222m117/compiler.sh
+++ b/src/Specific/solinas64_2e222m117/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/solinas64_2e222m117/compilerxx.sh b/src/Specific/solinas64_2e222m117/compilerxx.sh
index fd282db62..11513a72a 100755
--- a/src/Specific/solinas64_2e222m117/compilerxx.sh
+++ b/src/Specific/solinas64_2e222m117/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<222) - 117' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55}' -Dq_mpz='(1_mpz<<222) - 117' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' "$@"
diff --git a/src/Specific/solinas64_2e224m2e96p1/compiler.sh b/src/Specific/solinas64_2e224m2e96p1/compiler.sh
index 56a542979..cdec1cd5d 100755
--- a/src/Specific/solinas64_2e224m2e96p1/compiler.sh
+++ b/src/Specific/solinas64_2e224m2e96p1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/solinas64_2e224m2e96p1/compilerxx.sh b/src/Specific/solinas64_2e224m2e96p1/compilerxx.sh
index c2492c0ed..fdabcd5f0 100755
--- a/src/Specific/solinas64_2e224m2e96p1/compilerxx.sh
+++ b/src/Specific/solinas64_2e224m2e96p1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56}' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' "$@"
diff --git a/src/Specific/solinas64_2e226m5/compiler.sh b/src/Specific/solinas64_2e226m5/compiler.sh
index c00491392..8a0a91ddd 100755
--- a/src/Specific/solinas64_2e226m5/compiler.sh
+++ b/src/Specific/solinas64_2e226m5/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e226m5/compilerxx.sh b/src/Specific/solinas64_2e226m5/compilerxx.sh
index 787f0a98f..6685baa68 100755
--- a/src/Specific/solinas64_2e226m5/compilerxx.sh
+++ b/src/Specific/solinas64_2e226m5/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<226) - 5' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56}' -Dq_mpz='(1_mpz<<226) - 5' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' "$@"
diff --git a/src/Specific/solinas64_2e230m27/compiler.sh b/src/Specific/solinas64_2e230m27/compiler.sh
index f5e82bd23..5c83cf4da 100755
--- a/src/Specific/solinas64_2e230m27/compiler.sh
+++ b/src/Specific/solinas64_2e230m27/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,57,58,57}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas64_2e230m27/compilerxx.sh b/src/Specific/solinas64_2e230m27/compilerxx.sh
index 2ba6e34df..20776eb4f 100755
--- a/src/Specific/solinas64_2e230m27/compilerxx.sh
+++ b/src/Specific/solinas64_2e230m27/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<230) - 27' -Dmodulus_limbs='4' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{58,57,58,57}' -Dq_mpz='(1_mpz<<230) - 27' -Dlimb_t=uint64_t -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' "$@"
diff --git a/src/Specific/solinas64_2e235m15/compiler.sh b/src/Specific/solinas64_2e235m15/compiler.sh
index 83c95def8..247ce7d74 100755
--- a/src/Specific/solinas64_2e235m15/compiler.sh
+++ b/src/Specific/solinas64_2e235m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e235m15/compilerxx.sh b/src/Specific/solinas64_2e235m15/compilerxx.sh
index 6ea988bfc..33e6bc6fc 100755
--- a/src/Specific/solinas64_2e235m15/compilerxx.sh
+++ b/src/Specific/solinas64_2e235m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='47' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<235) - 15' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dq_mpz='(1_mpz<<235) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e243m9/compiler.sh b/src/Specific/solinas64_2e243m9/compiler.sh
index 18c3d6ac8..6b7b42e64 100755
--- a/src/Specific/solinas64_2e243m9/compiler.sh
+++ b/src/Specific/solinas64_2e243m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='40.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e243m9/compilerxx.sh b/src/Specific/solinas64_2e243m9/compilerxx.sh
index 02120a493..c7064cdda 100755
--- a/src/Specific/solinas64_2e243m9/compilerxx.sh
+++ b/src/Specific/solinas64_2e243m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='40.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<243) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dq_mpz='(1_mpz<<243) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e251m9/compiler.sh b/src/Specific/solinas64_2e251m9/compiler.sh
index 6acb42d22..99680b1b5 100755
--- a/src/Specific/solinas64_2e251m9/compiler.sh
+++ b/src/Specific/solinas64_2e251m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e251m9/compilerxx.sh b/src/Specific/solinas64_2e251m9/compilerxx.sh
index 38f98951a..a6e782f4c 100755
--- a/src/Specific/solinas64_2e251m9/compilerxx.sh
+++ b/src/Specific/solinas64_2e251m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<251) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dq_mpz='(1_mpz<<251) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e254m127x2e240m1/compiler.sh b/src/Specific/solinas64_2e254m127x2e240m1/compiler.sh
index fb6c7e62f..9e7dbc376 100755
--- a/src/Specific/solinas64_2e254m127x2e240m1/compiler.sh
+++ b/src/Specific/solinas64_2e254m127x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e254m127x2e240m1/compilerxx.sh b/src/Specific/solinas64_2e254m127x2e240m1/compilerxx.sh
index 43e8b0fba..e702b73ee 100755
--- a/src/Specific/solinas64_2e254m127x2e240m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e254m127x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='42 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{43,42,42,43,42,42}' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e255m19/compiler.sh b/src/Specific/solinas64_2e255m19/compiler.sh
index a9c858c2c..14aaa5353 100755
--- a/src/Specific/solinas64_2e255m19/compiler.sh
+++ b/src/Specific/solinas64_2e255m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e255m19/compilerxx.sh b/src/Specific/solinas64_2e255m19/compilerxx.sh
index a55c89ddd..1daaa7d1c 100755
--- a/src/Specific/solinas64_2e255m19/compilerxx.sh
+++ b/src/Specific/solinas64_2e255m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 19 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 19 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e255m2e4m2e1m1/compiler.sh b/src/Specific/solinas64_2e255m2e4m2e1m1/compiler.sh
index 6697269a5..b9e336274 100755
--- a/src/Specific/solinas64_2e255m2e4m2e1m1/compiler.sh
+++ b/src/Specific/solinas64_2e255m2e4m2e1m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e255m2e4m2e1m1/compilerxx.sh b/src/Specific/solinas64_2e255m2e4m2e1m1/compilerxx.sh
index d7991e8ab..c84ece3d3 100755
--- a/src/Specific/solinas64_2e255m2e4m2e1m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e255m2e4m2e1m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - (1_mpz<<4) - (1_mpz<<1) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e255m765/compiler.sh b/src/Specific/solinas64_2e255m765/compiler.sh
index 69fddc95d..a61d71a21 100755
--- a/src/Specific/solinas64_2e255m765/compiler.sh
+++ b/src/Specific/solinas64_2e255m765/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/solinas64_2e255m765/compilerxx.sh b/src/Specific/solinas64_2e255m765/compilerxx.sh
index 55c4d1745..b9e80b9a9 100755
--- a/src/Specific/solinas64_2e255m765/compilerxx.sh
+++ b/src/Specific/solinas64_2e255m765/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<255) - 765' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dq_mpz='(1_mpz<<255) - 765' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' "$@"
diff --git a/src/Specific/solinas64_2e256m189/compiler.sh b/src/Specific/solinas64_2e256m189/compiler.sh
index 8049ee9e5..b77ea98d6 100755
--- a/src/Specific/solinas64_2e256m189/compiler.sh
+++ b/src/Specific/solinas64_2e256m189/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/solinas64_2e256m189/compilerxx.sh b/src/Specific/solinas64_2e256m189/compilerxx.sh
index 4c986ab3a..cee4cefc5 100755
--- a/src/Specific/solinas64_2e256m189/compilerxx.sh
+++ b/src/Specific/solinas64_2e256m189/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 189' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 189' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' "$@"
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compiler.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compiler.sh
index d94808e05..d7f2966da 100755
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compiler.sh
+++ b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compilerxx.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compilerxx.sh
index 3b3ca5af5..4ce63f286 100755
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e256m2e32m977/compiler.sh b/src/Specific/solinas64_2e256m2e32m977/compiler.sh
index 6ff73057c..cd6230000 100755
--- a/src/Specific/solinas64_2e256m2e32m977/compiler.sh
+++ b/src/Specific/solinas64_2e256m2e32m977/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/solinas64_2e256m2e32m977/compilerxx.sh b/src/Specific/solinas64_2e256m2e32m977/compilerxx.sh
index 25e87fd9d..96ac626b3 100755
--- a/src/Specific/solinas64_2e256m2e32m977/compilerxx.sh
+++ b/src/Specific/solinas64_2e256m2e32m977/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' "$@"
diff --git a/src/Specific/solinas64_2e256m88x2e240m1/compiler.sh b/src/Specific/solinas64_2e256m88x2e240m1/compiler.sh
index f6db78b4d..040a37453 100755
--- a/src/Specific/solinas64_2e256m88x2e240m1/compiler.sh
+++ b/src/Specific/solinas64_2e256m88x2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e256m88x2e240m1/compilerxx.sh b/src/Specific/solinas64_2e256m88x2e240m1/compilerxx.sh
index 43eaf04e8..0725be4f1 100755
--- a/src/Specific/solinas64_2e256m88x2e240m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e256m88x2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e266m3/compiler.sh b/src/Specific/solinas64_2e266m3/compiler.sh
index 46a0237b4..500a4d8ea 100755
--- a/src/Specific/solinas64_2e266m3/compiler.sh
+++ b/src/Specific/solinas64_2e266m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e266m3/compilerxx.sh b/src/Specific/solinas64_2e266m3/compilerxx.sh
index 1d07565c1..f5bcf41c0 100755
--- a/src/Specific/solinas64_2e266m3/compilerxx.sh
+++ b/src/Specific/solinas64_2e266m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<266) - 3' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dq_mpz='(1_mpz<<266) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e285m9/compiler.sh b/src/Specific/solinas64_2e285m9/compiler.sh
index 57f35349b..03071dce6 100755
--- a/src/Specific/solinas64_2e285m9/compiler.sh
+++ b/src/Specific/solinas64_2e285m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e285m9/compilerxx.sh b/src/Specific/solinas64_2e285m9/compilerxx.sh
index fb54cedff..371c6950b 100755
--- a/src/Specific/solinas64_2e285m9/compilerxx.sh
+++ b/src/Specific/solinas64_2e285m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='57' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<285) - 9' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dq_mpz='(1_mpz<<285) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e291m19/compiler.sh b/src/Specific/solinas64_2e291m19/compiler.sh
index 9c3e952a7..eb7cdde0d 100755
--- a/src/Specific/solinas64_2e291m19/compiler.sh
+++ b/src/Specific/solinas64_2e291m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e291m19/compilerxx.sh b/src/Specific/solinas64_2e291m19/compilerxx.sh
index 6bd04ea6e..eef435fb2 100755
--- a/src/Specific/solinas64_2e291m19/compilerxx.sh
+++ b/src/Specific/solinas64_2e291m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<291) - 19' -Dmodulus_limbs='5' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dq_mpz='(1_mpz<<291) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e321m9/compiler.sh b/src/Specific/solinas64_2e321m9/compiler.sh
index 6131f6e84..654214616 100755
--- a/src/Specific/solinas64_2e321m9/compiler.sh
+++ b/src/Specific/solinas64_2e321m9/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e321m9/compilerxx.sh b/src/Specific/solinas64_2e321m9/compilerxx.sh
index 4fb7e7e5c..0636e975c 100755
--- a/src/Specific/solinas64_2e321m9/compilerxx.sh
+++ b/src/Specific/solinas64_2e321m9/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='53.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<321) - 9' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dq_mpz='(1_mpz<<321) - 9' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' "$@"
diff --git a/src/Specific/solinas64_2e322m2e161m1/compiler.sh b/src/Specific/solinas64_2e322m2e161m1/compiler.sh
index d9ed0c5bf..72cb4cfb0 100755
--- a/src/Specific/solinas64_2e322m2e161m1/compiler.sh
+++ b/src/Specific/solinas64_2e322m2e161m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e322m2e161m1/compilerxx.sh b/src/Specific/solinas64_2e322m2e161m1/compilerxx.sh
index 7683166a3..2d2638719 100755
--- a/src/Specific/solinas64_2e322m2e161m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e322m2e161m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e336m17/compiler.sh b/src/Specific/solinas64_2e336m17/compiler.sh
index 307c6dccc..6f6dcb632 100755
--- a/src/Specific/solinas64_2e336m17/compiler.sh
+++ b/src/Specific/solinas64_2e336m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e336m17/compilerxx.sh b/src/Specific/solinas64_2e336m17/compilerxx.sh
index 326961c23..752637ad9 100755
--- a/src/Specific/solinas64_2e336m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e336m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 17' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e336m3/compiler.sh b/src/Specific/solinas64_2e336m3/compiler.sh
index f6a90f07a..5f97c9849 100755
--- a/src/Specific/solinas64_2e336m3/compiler.sh
+++ b/src/Specific/solinas64_2e336m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e336m3/compilerxx.sh b/src/Specific/solinas64_2e336m3/compilerxx.sh
index 1dd02bde7..7e353992d 100755
--- a/src/Specific/solinas64_2e336m3/compilerxx.sh
+++ b/src/Specific/solinas64_2e336m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<336) - 3' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<336) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e338m15/compiler.sh b/src/Specific/solinas64_2e338m15/compiler.sh
index 1dec8d0fb..fb917db67 100755
--- a/src/Specific/solinas64_2e338m15/compiler.sh
+++ b/src/Specific/solinas64_2e338m15/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e338m15/compilerxx.sh b/src/Specific/solinas64_2e338m15/compilerxx.sh
index 6d3022494..6e2db2c87 100755
--- a/src/Specific/solinas64_2e338m15/compilerxx.sh
+++ b/src/Specific/solinas64_2e338m15/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<338) - 15' -Dmodulus_limbs='6' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dq_mpz='(1_mpz<<338) - 15' -Dlimb_t=uint64_t -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' "$@"
diff --git a/src/Specific/solinas64_2e369m25/compiler.sh b/src/Specific/solinas64_2e369m25/compiler.sh
index ee8b03b3f..c6d0d9361 100755
--- a/src/Specific/solinas64_2e369m25/compiler.sh
+++ b/src/Specific/solinas64_2e369m25/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e369m25/compilerxx.sh b/src/Specific/solinas64_2e369m25/compilerxx.sh
index 398ff28f8..90c436689 100755
--- a/src/Specific/solinas64_2e369m25/compilerxx.sh
+++ b/src/Specific/solinas64_2e369m25/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<369) - 25' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<369) - 25' -Dlimb_t=uint64_t -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' "$@"
diff --git a/src/Specific/solinas64_2e379m19/compiler.sh b/src/Specific/solinas64_2e379m19/compiler.sh
index ec8575ef3..19bca8e13 100755
--- a/src/Specific/solinas64_2e379m19/compiler.sh
+++ b/src/Specific/solinas64_2e379m19/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/7' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e379m19/compilerxx.sh b/src/Specific/solinas64_2e379m19/compilerxx.sh
index 6552a77a0..3c204d0ec 100755
--- a/src/Specific/solinas64_2e379m19/compilerxx.sh
+++ b/src/Specific/solinas64_2e379m19/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/7' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<379) - 19' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dq_mpz='(1_mpz<<379) - 19' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' "$@"
diff --git a/src/Specific/solinas64_2e382m105/compiler.sh b/src/Specific/solinas64_2e382m105/compiler.sh
index 0e25698d7..16c069edf 100755
--- a/src/Specific/solinas64_2e382m105/compiler.sh
+++ b/src/Specific/solinas64_2e382m105/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/solinas64_2e382m105/compilerxx.sh b/src/Specific/solinas64_2e382m105/compilerxx.sh
index 14163b5b7..5749d60e3 100755
--- a/src/Specific/solinas64_2e382m105/compilerxx.sh
+++ b/src/Specific/solinas64_2e382m105/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='38.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<382) - 105' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{39,38,38,38,38,39,38,38,38,38}' -Dq_mpz='(1_mpz<<382) - 105' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' "$@"
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compiler.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compiler.sh
index 351d32a8d..5be9a02b9 100755
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compiler.sh
+++ b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compilerxx.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compilerxx.sh
index 4735527fa..84905518b 100755
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e384m317/compiler.sh b/src/Specific/solinas64_2e384m317/compiler.sh
index 8b39a5fbc..a241c9782 100755
--- a/src/Specific/solinas64_2e384m317/compiler.sh
+++ b/src/Specific/solinas64_2e384m317/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/solinas64_2e384m317/compilerxx.sh b/src/Specific/solinas64_2e384m317/compilerxx.sh
index cc8729382..1ded2302d 100755
--- a/src/Specific/solinas64_2e384m317/compilerxx.sh
+++ b/src/Specific/solinas64_2e384m317/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 317' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 317' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' "$@"
diff --git a/src/Specific/solinas64_2e384m5x2e368m1/compiler.sh b/src/Specific/solinas64_2e384m5x2e368m1/compiler.sh
index 01b9d226a..ef80d7f7d 100755
--- a/src/Specific/solinas64_2e384m5x2e368m1/compiler.sh
+++ b/src/Specific/solinas64_2e384m5x2e368m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e384m5x2e368m1/compilerxx.sh b/src/Specific/solinas64_2e384m5x2e368m1/compilerxx.sh
index e9f826f66..edc25f0dd 100755
--- a/src/Specific/solinas64_2e384m5x2e368m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e384m5x2e368m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e384m79x2e376m1/compiler.sh b/src/Specific/solinas64_2e384m79x2e376m1/compiler.sh
index a7f8556eb..649d64bca 100755
--- a/src/Specific/solinas64_2e384m79x2e376m1/compiler.sh
+++ b/src/Specific/solinas64_2e384m79x2e376m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e384m79x2e376m1/compilerxx.sh b/src/Specific/solinas64_2e384m79x2e376m1/compilerxx.sh
index 55a71fe4f..6a6824021 100755
--- a/src/Specific/solinas64_2e384m79x2e376m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e384m79x2e376m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='48' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e401m31/compiler.sh b/src/Specific/solinas64_2e401m31/compiler.sh
index 47a71939d..96ee9515b 100755
--- a/src/Specific/solinas64_2e401m31/compiler.sh
+++ b/src/Specific/solinas64_2e401m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas64_2e401m31/compilerxx.sh b/src/Specific/solinas64_2e401m31/compilerxx.sh
index fe7df340d..c9cb357be 100755
--- a/src/Specific/solinas64_2e401m31/compilerxx.sh
+++ b/src/Specific/solinas64_2e401m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='50.125' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<401) - 31' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dq_mpz='(1_mpz<<401) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas64_2e413m21/compiler.sh b/src/Specific/solinas64_2e413m21/compiler.sh
index de6d7f556..5049117d6 100755
--- a/src/Specific/solinas64_2e413m21/compiler.sh
+++ b/src/Specific/solinas64_2e413m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='59' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/solinas64_2e413m21/compilerxx.sh b/src/Specific/solinas64_2e413m21/compilerxx.sh
index 6d9faba61..3f64ba17c 100755
--- a/src/Specific/solinas64_2e413m21/compilerxx.sh
+++ b/src/Specific/solinas64_2e413m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='59' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<413) - 21' -Dmodulus_limbs='7' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dq_mpz='(1_mpz<<413) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/solinas64_2e414m17/compiler.sh b/src/Specific/solinas64_2e414m17/compiler.sh
index fd7979c9e..353f704b8 100755
--- a/src/Specific/solinas64_2e414m17/compiler.sh
+++ b/src/Specific/solinas64_2e414m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e414m17/compilerxx.sh b/src/Specific/solinas64_2e414m17/compilerxx.sh
index 7a946628d..82e6c4904 100755
--- a/src/Specific/solinas64_2e414m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e414m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='46' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<414) - 17' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dq_mpz='(1_mpz<<414) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e416m2e208m1/compiler.sh b/src/Specific/solinas64_2e416m2e208m1/compiler.sh
index 7db599384..0a3f01e24 100755
--- a/src/Specific/solinas64_2e416m2e208m1/compiler.sh
+++ b/src/Specific/solinas64_2e416m2e208m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e416m2e208m1/compilerxx.sh b/src/Specific/solinas64_2e416m2e208m1/compilerxx.sh
index 0a05dc636..e0fc37862 100755
--- a/src/Specific/solinas64_2e416m2e208m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e416m2e208m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e444m17/compiler.sh b/src/Specific/solinas64_2e444m17/compiler.sh
index 8c46eff97..ad530ab86 100755
--- a/src/Specific/solinas64_2e444m17/compiler.sh
+++ b/src/Specific/solinas64_2e444m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e444m17/compilerxx.sh b/src/Specific/solinas64_2e444m17/compilerxx.sh
index b8dab4989..4f8b01b94 100755
--- a/src/Specific/solinas64_2e444m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e444m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<444) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dq_mpz='(1_mpz<<444) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e448m2e224m1/compiler.sh b/src/Specific/solinas64_2e448m2e224m1/compiler.sh
index 657a62a1f..843645d07 100755
--- a/src/Specific/solinas64_2e448m2e224m1/compiler.sh
+++ b/src/Specific/solinas64_2e448m2e224m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e448m2e224m1/compilerxx.sh b/src/Specific/solinas64_2e448m2e224m1/compilerxx.sh
index 408d52535..ff73cf110 100755
--- a/src/Specific/solinas64_2e448m2e224m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e448m2e224m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e450m2e225m1/compiler.sh b/src/Specific/solinas64_2e450m2e225m1/compiler.sh
index 45a7dd83f..a3624a5b8 100755
--- a/src/Specific/solinas64_2e450m2e225m1/compiler.sh
+++ b/src/Specific/solinas64_2e450m2e225m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e450m2e225m1/compilerxx.sh b/src/Specific/solinas64_2e450m2e225m1/compilerxx.sh
index eb4d17df3..508d808e8 100755
--- a/src/Specific/solinas64_2e450m2e225m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e450m2e225m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.25' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e452m3/compiler.sh b/src/Specific/solinas64_2e452m3/compiler.sh
index 32a1b1630..0d6bff7ec 100755
--- a/src/Specific/solinas64_2e452m3/compiler.sh
+++ b/src/Specific/solinas64_2e452m3/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e452m3/compilerxx.sh b/src/Specific/solinas64_2e452m3/compilerxx.sh
index 47f1133ae..9d076c5d0 100755
--- a/src/Specific/solinas64_2e452m3/compilerxx.sh
+++ b/src/Specific/solinas64_2e452m3/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='56.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<452) - 3' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dq_mpz='(1_mpz<<452) - 3' -Dlimb_t=uint64_t -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' "$@"
diff --git a/src/Specific/solinas64_2e468m17/compiler.sh b/src/Specific/solinas64_2e468m17/compiler.sh
index 51f3f7074..bb48abbf7 100755
--- a/src/Specific/solinas64_2e468m17/compiler.sh
+++ b/src/Specific/solinas64_2e468m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e468m17/compilerxx.sh b/src/Specific/solinas64_2e468m17/compilerxx.sh
index 4867bb8eb..a78dbd60a 100755
--- a/src/Specific/solinas64_2e468m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e468m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='58.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<468) - 17' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dq_mpz='(1_mpz<<468) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e480m2e240m1/compiler.sh b/src/Specific/solinas64_2e480m2e240m1/compiler.sh
index e91871b30..6a17d9ee4 100755
--- a/src/Specific/solinas64_2e480m2e240m1/compiler.sh
+++ b/src/Specific/solinas64_2e480m2e240m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='60' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e480m2e240m1/compilerxx.sh b/src/Specific/solinas64_2e480m2e240m1/compilerxx.sh
index c152863cd..c4a543c11 100755
--- a/src/Specific/solinas64_2e480m2e240m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e480m2e240m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='60' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dmodulus_limbs='8' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e488m17/compiler.sh b/src/Specific/solinas64_2e488m17/compiler.sh
index b74a175bd..fd8f8d203 100755
--- a/src/Specific/solinas64_2e488m17/compiler.sh
+++ b/src/Specific/solinas64_2e488m17/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e488m17/compilerxx.sh b/src/Specific/solinas64_2e488m17/compilerxx.sh
index bb3f10b83..4055dcceb 100755
--- a/src/Specific/solinas64_2e488m17/compilerxx.sh
+++ b/src/Specific/solinas64_2e488m17/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='30.5' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<488) - 17' -Dmodulus_limbs='16' -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{31,30,31,30,31,30,31,30,31,30,31,30,31,30,31,30}' -Dq_mpz='(1_mpz<<488) - 17' -Dlimb_t=uint64_t -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' "$@"
diff --git a/src/Specific/solinas64_2e489m21/compiler.sh b/src/Specific/solinas64_2e489m21/compiler.sh
index 8139cc2fa..e3e0bacc4 100755
--- a/src/Specific/solinas64_2e489m21/compiler.sh
+++ b/src/Specific/solinas64_2e489m21/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/solinas64_2e489m21/compilerxx.sh b/src/Specific/solinas64_2e489m21/compilerxx.sh
index 782712c37..a974ec14d 100755
--- a/src/Specific/solinas64_2e489m21/compilerxx.sh
+++ b/src/Specific/solinas64_2e489m21/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='54 + 1/3' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<489) - 21' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dq_mpz='(1_mpz<<489) - 21' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' "$@"
diff --git a/src/Specific/solinas64_2e495m31/compiler.sh b/src/Specific/solinas64_2e495m31/compiler.sh
index c9da9a290..31f795a86 100755
--- a/src/Specific/solinas64_2e495m31/compiler.sh
+++ b/src/Specific/solinas64_2e495m31/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas64_2e495m31/compilerxx.sh b/src/Specific/solinas64_2e495m31/compilerxx.sh
index fbd8a171f..fffccb9a7 100755
--- a/src/Specific/solinas64_2e495m31/compilerxx.sh
+++ b/src/Specific/solinas64_2e495m31/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='55' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<495) - 31' -Dmodulus_limbs='9' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dq_mpz='(1_mpz<<495) - 31' -Dlimb_t=uint64_t -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' "$@"
diff --git a/src/Specific/solinas64_2e510m290x2e496m1/compiler.sh b/src/Specific/solinas64_2e510m290x2e496m1/compiler.sh
index 8bbc4f42a..0c3148415 100755
--- a/src/Specific/solinas64_2e510m290x2e496m1/compiler.sh
+++ b/src/Specific/solinas64_2e510m290x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e510m290x2e496m1/compilerxx.sh b/src/Specific/solinas64_2e510m290x2e496m1/compilerxx.sh
index b35302d9d..63b585822 100755
--- a/src/Specific/solinas64_2e510m290x2e496m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e510m290x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{51,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e511m187/compiler.sh b/src/Specific/solinas64_2e511m187/compiler.sh
index cde957ebd..9fdadba35 100755
--- a/src/Specific/solinas64_2e511m187/compiler.sh
+++ b/src/Specific/solinas64_2e511m187/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/solinas64_2e511m187/compilerxx.sh b/src/Specific/solinas64_2e511m187/compilerxx.sh
index f7e6dcbbd..afa454dff 100755
--- a/src/Specific/solinas64_2e511m187/compilerxx.sh
+++ b/src/Specific/solinas64_2e511m187/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 187' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@"
diff --git a/src/Specific/solinas64_2e511m481/compiler.sh b/src/Specific/solinas64_2e511m481/compiler.sh
index cec58dc3e..ea60e3e3e 100755
--- a/src/Specific/solinas64_2e511m481/compiler.sh
+++ b/src/Specific/solinas64_2e511m481/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/solinas64_2e511m481/compilerxx.sh b/src/Specific/solinas64_2e511m481/compilerxx.sh
index 15c806c08..85dc097b6 100755
--- a/src/Specific/solinas64_2e511m481/compilerxx.sh
+++ b/src/Specific/solinas64_2e511m481/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 481' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dq_mpz='(1_mpz<<511) - 481' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' "$@"
diff --git a/src/Specific/solinas64_2e512m491x2e496m1/compiler.sh b/src/Specific/solinas64_2e512m491x2e496m1/compiler.sh
index b01ac3068..f75de2db4 100755
--- a/src/Specific/solinas64_2e512m491x2e496m1/compiler.sh
+++ b/src/Specific/solinas64_2e512m491x2e496m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e512m491x2e496m1/compilerxx.sh b/src/Specific/solinas64_2e512m491x2e496m1/compilerxx.sh
index f61edf5ff..9f0dcc0bc 100755
--- a/src/Specific/solinas64_2e512m491x2e496m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e512m491x2e496m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e512m569/compiler.sh b/src/Specific/solinas64_2e512m569/compiler.sh
index cba2786cf..44055b330 100755
--- a/src/Specific/solinas64_2e512m569/compiler.sh
+++ b/src/Specific/solinas64_2e512m569/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/solinas64_2e512m569/compilerxx.sh b/src/Specific/solinas64_2e512m569/compilerxx.sh
index d265a7936..a70e919ed 100755
--- a/src/Specific/solinas64_2e512m569/compilerxx.sh
+++ b/src/Specific/solinas64_2e512m569/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.2' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<512) - 569' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dq_mpz='(1_mpz<<512) - 569' -Dlimb_t=uint64_t -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' "$@"
diff --git a/src/Specific/solinas64_2e521m1/compiler.sh b/src/Specific/solinas64_2e521m1/compiler.sh
index 793109530..4fa94f4e2 100755
--- a/src/Specific/solinas64_2e521m1/compiler.sh
+++ b/src/Specific/solinas64_2e521m1/compiler.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
diff --git a/src/Specific/solinas64_2e521m1/compilerxx.sh b/src/Specific/solinas64_2e521m1/compilerxx.sh
index ea02de7c4..4690167e1 100755
--- a/src/Specific/solinas64_2e521m1/compilerxx.sh
+++ b/src/Specific/solinas64_2e521m1/compilerxx.sh
@@ -1,4 +1,4 @@
#!/bin/sh
set -eu
-g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='52.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<521) - 1 ' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"
+g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dq_mpz='(1_mpz<<521) - 1 ' -Dlimb_t=uint64_t -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Da_minus_two_over_four_array='{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' "$@"