Hi, in gmp-6.1.2 (and in the daily snapshot gmp-6.1.99-20180214), the head of mpn/rsblsh2_n.asm on x86_64 says: dnl AMD64 mpn_addlsh2_n -- rp[] = up[] + (vp[] << 1) dnl AMD64 mpn_rsblsh2_n -- rp[] = (vp[] << 1) - up[] I guess it should be: dnl AMD64 mpn_addlsh2_n -- rp[] = up[] + (vp[] << 2) dnl AMD64 mpn_rsblsh2_n -- rp[] = (vp[] << 2) - up[] Best regards, Paul