Trent Piepho <[EMAIL PROTECTED]> writes: > On Wed, 21 May 2008, Andreas Schwab wrote: >> Trent Piepho <[EMAIL PROTECTED]> writes: >> >>> It's the _le versions that have a problem, since we can't get gcc to just >>> use >>> the register indexed mode. It seems like an obvious thing to have a >>> constraint for, but I guess there weren't enough instructions that only come >>> in 'x' versions to bother with it. There is a 'Z' constraint, "Memory >>> operand >>> that is an indexed or indirect from a register", but I tried it and it can >>> use >>> both "rb,ri" and "disp(rb)" forms. Actually, I'm not sure how 'Z' is any >>> different than "m"? >> >> 'Z' will never emit a non-zero constant displacement. > > It's too bad gas doesn't appear to be smart enough to turn: > stwbrx 0, 0(3) -or- stwbr 0, 0(3)
Use the %y modifier when substituting the operand. Andreas. -- Andreas Schwab, SuSE Labs, [EMAIL PROTECTED] SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev