| To: | "Maciej W. Rozycki" <macro@ds2.pg.gda.pl> |
|---|---|
| Subject: | Re: [patch] linux 2.4.9: Bad code in xchg_u32() |
| From: | Ralf Baechle <ralf@oss.sgi.com> |
| Date: | Wed, 17 Oct 2001 00:29:47 +0200 |
| Cc: | linux-mips@fnet.fr, linux-mips@oss.sgi.com |
| In-reply-to: | <Pine.GSO.3.96.1011016161735.19676E-100000@delta.ds2.pg.gda.pl>; from macro@ds2.pg.gda.pl on Tue, Oct 16, 2001 at 07:06:40PM +0200 |
| References: | <Pine.GSO.3.96.1011016161735.19676E-100000@delta.ds2.pg.gda.pl> |
| User-agent: | Mutt/1.2.5i |
On Tue, Oct 16, 2001 at 07:06:40PM +0200, Maciej W. Rozycki wrote: > > Unfortunately, gcc 2.95.3 doesn't want to accept a "=R" output constraint > here so I had to use "=m". It looks like a bug in gcc. Until it is fixed > the "R" input constraint here is sufficient for gcc to know it has m > already available in one of registers. I added ".set nomacro" to make > sure the second ll fits in the BDS as well. I've added the "memory" clobber back; xchg() is expected to imply a memory barrier. "R" indeed seems to be fishy; I can't compile the kernel if I remove the volatile from the first argument of xchg_u32(). I'd feel safer if we could use "m" until we can be sure "R" works fine. Ralf |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [patch] linux 2.4.9: Bad code in xchg_u32(), Maciej W. Rozycki |
|---|---|
| Next by Date: | Re: [patch] linux 2.4.9: Bad code in xchg_u32(), Jun Sun |
| Previous by Thread: | [patch] linux 2.4.9: Bad code in xchg_u32(), Maciej W. Rozycki |
| Next by Thread: | Re: [patch] linux 2.4.9: Bad code in xchg_u32(), Jun Sun |
| Indexes: | [Date] [Thread] [Top] [All Lists] |