Messages in this thread | | | Date | Thu, 23 Mar 2000 18:42:29 +0100 | From | Marc Mutz <> | Subject | Re: cx register problem in loop_cast.c |
| |
Alan Modra wrote: > > On Wed, 22 Mar 2000, Dale Amon wrote: > > > It may not yet concern the core kernel group but > > perhaps it soon will if things go well... > > > > I get a compile error from /drivers/block/loop_cast.c, > > part of the kerneli patches. > > > > It doesn't like: > > > > #if defined(__GNUC__) && (defined(i386) || defined(i486)) > > __asm__ ( > > "roll %%cl,%0" > > : "r" (data) > > : "0" (data), "c" (count) > > : "cx" > > ); > > and so forth > > > > where the error occurs on the cx register: > > > > fixed or forbidden register 2 (cx) was spilled for class CREG. > > > > occurs many times before the kernel compiles bails out. > > > > Is there any trivial fix? > > In this case, just delete the `: "cx"' line. There's no reason to have it > as "roll" doesn't modify cx, except of course if you're doing > `rol %cl,%ecx', which is unlikely but quite legal. BTW, the > "r" constraint can be relaxed to "g" here to give gcc a little more > latitude with register allocation. > <snip>
Huh? I thought CAST support was broken and only included to motivate people to fix it to use the CryptoAPI? Please tell me if that has changed!
Marc
-- Marc Mutz <Marc@Mutz.com> http://marc.mutz.com/Encryption-HOWTO/ University of Bielefeld, Dep. of Mathematics / Dep. of Physics
PGP-keyID's: 0xd46ce9ab (RSA), 0x7ae55b9e (DSS/DH)
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |