Hi,
Here is version 3 of the patch series, rebased on 6d0c39a293. The main tweak was to tweak per John N's suggestion and utilize only the 16-bit unsigned mod/div for the utility routines. The breakdown of the patch series is the same as the last one, but re-including the descriptions here:
Preparation phase:
0001 - add utility script for retokenizing all necessary scripts.
This is mainly for my own use in generating 0003, which is a simple
rename/preparation patch to change all symbols from their UPPER_CASE
to lower_case form, with several exceptions in renames.
0002 - add script to harness 0001 and apply to the relevant files in the repo
0003 - capture the effects of 0002 on the repo
The other patches in this series are as follows:
0004 - the "main" variable blocksize patch where the bulk of the code
changes take place - see comments here
0005 - utility functions for fast div/mod operations; basically
montgomery multiplication
0006 - use fastdiv code in the visiblity map, the main place where
this change is required
0007 - (optional) add/use libdivide for division which is license
compatible with other headers we bundle
0008 - (optional) tweaks to libdivide to make compiler/CI happy
Best,
David