Subject: RE: assembler syntax
To: None <k.heinz.jun.zwei@onlinehome.de>
From: Michael L. Hitch <mhitch@msu.oscs.montana.edu>
List: port-m68k
Date: 06/30/2002 12:09:23
Klaus Heinz <k.heinz.jun.zwei@onlinehome.de> writes: 
> I am unfamiliar with gcc/as assembler syntax (gcc 2.95.3, as 2.11.2,
> NetBSD 1.6_BETA3). The following code has a problem:
> 
>   int vgar(volatile caddr_t ba, int idx)
>   {
>   register int erg;
>   asm volatile ("movel %1, a0;\
>                   movel %2,d1;
>                   movel a0@(d1), %0;" :\
>                   "=r" (erg):\
>                   "g" (ba), "d" (idx) :\
>                   "a0", "d0", "d1");
>   return erg;
>   }
[...]
> Can someone confirm this?
> 
> As the cvs log tells me this functions's file was last modified in 1997,
> I suppose there has been some change in assembler syntax since then?
> 
> Can anyone tell me where to find more information about the changes?
> I fear there will be some more places which need to be changed.

  I have committed the changes to fix these - the Amiga X server should
compile now.

  One possible problem left is the AGA display code.  I seem to recall some
kind of problem I ran into with this with the ELF toolchain, but I can't
remember what it was at the time.  I can't easily test this at the moment
(my A4000 is running 1.5.1, and I'm not quite ready to upgrade it to 1.6
yet).

Michael
---
Michael L. Hitch                        mhitch@montana.edu
Operations Consulting,  Information Technology Center
Montana State University, Bozeman, MT     USA