On 1/04/2015 6:35 a.m., Niels Möller wrote:
nisse@lysator.liu.se (Niels Möller) writes:
I've made an rc2 tarball, fixing known issues, except for the w64 problems which I haven't had time to debug yet.
I think I have found the w64 problem. It breaks with mini-gmp.
The problem is, x86_64 assembly files like, e.g, x86_64/ecc-244-modp.asm assumes that GMP_NUMB_BITS == 64. And when building with mini-gmp, mp_limb_t is unsigned long, and with the microsoft w64 ABI, that's a 32-bit type, so we get GMP_NUMB_BITS == 32.
I think the correct way is to add some markup to the assembly files saying what value of GMP_NUMB_BITS they need, and exclude files which expect a value different from the one detected by configure.
Sounds like a good idea to me.
If this mp_limb_t type being long is a generic thing it is likely affecting other 32-bit OS with mini-gmp in the same way.
Amos