This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [m68k] asm regression with 3.3/3.4/3.5


On Wed, May 12, 2004 at 12:13:17PM -0400, Ian Lance Taylor wrote:
> In the asm statement, you said that the input _bn could be in any
> register.  You didn't say that it had to be in A6.

Actually, he did -- he passed a hard register varible a6 to the asm.
GCC is supposed to *not* cse hard register variables from asms
specifically for this case -- making syscalls.

No, the likely problem here is that a6 is the frame pointer, and
screwy things happen when you try to use it for other things.

> If you must use A6 for other reasons--if the subroutine expects
> it--then you need to declare _bn to be volatile.

Volatile registers aren't.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]