[Bug target/50281] result registers are overwritten giving incorrect result

pinskia at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sat Sep 3 01:13:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50281

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> 2011-09-03 01:13:00 UTC ---
I think your inline-asm is broken.
You have:
    : "=&r" (answer)
    : "r" (a_u4), "r" (b_u4)
    : "r2","r3","r4","r5","r6","r7","r20"

But you modify %1 and %2 which causes what you are seeing and GCC thinks your
inline-asm does not modify those registers.



More information about the Gcc-bugs mailing list