If you could show the generated code (after gcc's register allocation)
*and* point out precisely where things go wrong, that would be helpful.
Regards,
/Niels
The generated code is on the compiler explorer link I provided:
http://franke.ms/cex/z/oG53bK
There you see the original code on the
"se...@t-online.de" writes:
Can you explain why __umul_tmp1 should not be an "early-clobber output"?
Because it is not written to before we're done with the input.
(I wrote this code close to 30 years ago. It is stll possible that it
is buggy, but it looks correct to me and it has been in
> With his change the tests pass so I think the change is reasonable.
>I disagree. If I am right that the inline asm is correct, changing it
>to avoid triggering a compiler bug is not a reasonable change. But
>perhaps I am wrong and the inline asm is buggy, but then somebody needs
>to explain
gmp-bugs-ow...@gmplib.org writes:
With his change the tests pass so I think the change is reasonable.
I disagree. If I am right that the inline asm is correct, changing it
to avoid triggering a compiler bug is not a reasonable change. But
perhaps I am wrong and the inline asm is buggy, but
>The current code looks correct to me. Please explain why you think it
>is not correct.
>
>
>--
>Torbjörn
Hello,
thank you for looking into my report.
I am not an assembler expert. I compiled the lib with and without -O2 and found
without -O2 the tests worked. So I started compiling the