h = f + g
// Can overlap h with f or g.
//
// Preconditions:
// |f| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc.
// |g| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc.
//
// Postconditions:
// |h| bounded by 1.1*2^26,1.1*2^25,1.1*2^26,1.1*2^25,etc.
Conditional move.
Replace (f,g) with (g,g) if b == 1;
replace (f,g) with (f,g) if b == 0.
h = f + g // Can overlap h with f or g. // // Preconditions: // |f| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc. // |g| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc. // // Postconditions: // |h| bounded by 1.1*2^26,1.1*2^25,1.1*2^26,1.1*2^25,etc. Conditional move. Replace (f,g) with (g,g) if b == 1; replace (f,g) with (f,g) if b == 0.