Date: Sun, 22 Mar 1998 21:54:35 -0800 (PST) Message-Id: <199803230554.VAA24614@adit.ap.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: jasonp AT Glue DOT umd DOT edu (Jason Stratos Papadopoulos), djgpp AT delorie DOT com From: Nate Eldredge Subject: Re: is this an inline asm bug? Precedence: bulk At 08:43 3/22/1998 GMT, Jason Stratos Papadopoulos wrote: >Hello. In the course of writing some high-speed modular multiplication >I came across this problem with gcc's inline assembly. > >The full code is too lengthy to post, but I have some inline assembly >for which eax is on the clobber list. More specifically, the function >it's in looks like this: [deleted] >Why is gcc using eax to address memory when I specifically put it on >the clobber list?! This has actually happened once or twice before, the >only way around it is to use all the register names directly, rather than >leave it up to the compiler. > >Is this a bug? I think this is a bug, especially since the documentation says: "The input operands are guaranteed not to use any of the clobbered registers..." Upgrade to version 2.8.0 if possible, and if it does not go away, report it. The GCC docs say how to do this; however, I think the address has changed to `bug-gcc AT gnu DOT org'. I think I saw something like this once before, but it was with ebp instead. I figured that was pathological, and didn't worry about it. Nate Eldredge eldredge AT ap DOT net