fn mulNoAlias(rma: *Mutable, a: Const, b: Const, allocator: ?Allocator) void

rma = a * b

rma may not alias with a or b. a and b may alias with each other.

Asserts the result fits in rma. An upper bound on the number of limbs needed by rma is given by a.limbs.len + b.limbs.len.

If allocator is provided, it will be used for temporary storage to improve multiplication performance. error.OutOfMemory is handled with a fallback algorithm.

Parameters

rma: *Mutable,
a: Const,
b: Const,
allocator: ?Allocator,