On Fri, 12 Jul 2019 at 13:21, John Maddock via Boost-users <boost-users@lists.boost.org> wrote:
That's only possible with assembly level add/multiply/divide.

Right.

Ah OK, just looked at MPIR on win64 with the mpir_gc backend, and they
do use 64-bit limbs, but rely on GNU's longlong.h for
add/subtract/multiply which appears not to use inline assembly for msvc,
but instead breaks the inputs into high/low parts and then does
schoolbook multplication.

The mpir_gc ([g]eneric [c]) backend will by definition not use assembly, one needs to build something a bit closer to one's hardware (run the mpir_config.py script [in the msvc sub-folder] to configure, generate solution files and build) to get any performance. It requires yasm as assembler [installed and properly integrated into VS20XX]. Altogether it's neither obvious nor trivial to get something [a binary] that works well.

degski
--
@realdegski
"Anyone who believes that exponential growth can go on forever in a finite world is either a madman or an economist" - Kenneth E. Boulding