Re: Fix asm constraint in put_user

Andreas Schwab
2005-11-21T21:26:37Z

James E Wilson <wilson@tuliptree.org> writes:

> On Mon, 2005-11-21 at 07:12, Andreas Schwab wrote:
>> The st insn on the ia64 does not allow the post-increment to come from a
>> register (only ld does). Thus the "m" constraint is not suitable for the
>> asm statement in __put_user_size.
>
> You could use the "S" constraint here. This isn't used anywhere in
> gcc. This exists solely for use by asms that need a non-postinc MEM.

Alas, it does not work:

sound/oss/rme96xx.c:744: error: 'asm' operand requires impossible reload

That's exactly the place where gcc would like to use a POST_MODIFY with a
register operand.

Andreas.

--
Andreas Schwab, SuSE Labs, schwab@suse.de
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."