On 2011-03-23, at 5:08 PM, chevalma@iro.umontreal.ca wrote:
Hello,
I tested the use of 12 padding bits for 64bit boxed integers. Everything seemed to work fine, for the most part, except that a few unit tests failed with the exception:
we don't yet support multi-digit divisors
I'm guessing some of the values produced during constant propagation are outside of what is representable with a single big digit. Marc, would you have time to implement support for multiple big digit divisors?
No. But I can show you the 3 or 4 pages of Scheme code which implements the algorithm. If this is not a top priority then we can ask Olivier to work on that.
My guess is that you are trying to divide by 2^12... perhaps you could right shift by 12. Also, on machine with 64 bit words, the radix can be 2^30, and that might be big enough to make the divisions doable with a single digit divisor.
Marc