Hi,
I introduced a dormant buglet when I committed the patch that skips
multiplication of zeroes. The loop to determine the lower precision
of the two input numbers is buggy since it checks X[i] * Y[i] to be
non-zero to ensure that both mantissa digits are non-zero. This is a
wrong check though since we could have numbers that have mantissa as
such:
X = {1, 0, 0, 1, 0, 0}
Y = {1, 1, 1, 0, 0, 0}
Here, the higher precision (ip2) ought to be 3 and the lower (ip)
ought to be 2. The product check however makes the lower one as 0. I
didn't find any input that actually triggered this bug, but here's a
patch to fix it anyway. I had written it some time back, but it was
on another branch and had forgotten to update the submitted patch;
sorry about that.
Verified that it does not cause any regressions in the testsuite. OK
to commit?