sorry, didn't notice this part before. I am not a asm expert (to say at least;) but On 10/05, Li Nan wrote: > > When (a * mul) overflows, a divide 0 error occurs in > mul_u64_u64_div_u64(). Just in case... No, iirc it is divq which triggers #DE when the result of division doesn't fit u64. (a * mul) can't overflow, the result is 128-bit rax:rdx number. Oleg.