Commutative operands in longlong.h

Brett Hale brettyhale at
Tue Jan 20 14:32:14 UTC 2015

I notice many of the umul_ppmm implementations in longlong.h do not use the
commutative constraint for inputs, e.g.,

*"%r" (m0), "r" (m1)*

Is there a reason for this? It would seem to deny the compiler better
register scheduling opportunities. e.g., ARM / AArch64.

More information about the gmp-bugs mailing list