From: Kenn H. <ke...@us...> - 2003-06-18 23:02:51
|
Update of /cvsroot/linux-vax/kernel-2.5/Documentation/vax In directory sc8-pr-cvs1:/tmp/cvs-serv22378/Documentation/vax Modified Files: assembler.txt Log Message: Document new assembler syntax Index: assembler.txt =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/Documentation/vax/assembler.txt,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- assembler.txt 20 May 2002 00:33:29 -0000 1.3 +++ assembler.txt 18 Jun 2003 23:02:48 -0000 1.4 @@ -1,24 +1,33 @@ -The GNU assembler in Andy's cross compilation tool set is a little +The GNU assembler in our cross compilation tool set is a little different from DEC's MACRO32 assembler. This file summarises the differences. +1. Register names are prefixed with % -1. #, ^ and @ become $, ` and * + In VAX MACRO you might write: + + movl #0, r0 + + In gas, these are written: + + movl $0, %r0 + +2. #, ^ and @ become $, ` and * In VAX MACRO you might write: - movl #0, 8(r5) + movl #0, r0 movl #0, @8(r5) movl #0, L^8(r5) In gas, these are written: - movl $0, r0 - movl $0, *8(r5) - movl $0, L`8(r5) + movl $0, %r0 + movl $0, *8(%r5) + movl $0, L`8(%r5) -2. ^X becomes 0x +3. ^X becomes 0x Hex constants are prefixed with 0x, rather than ^x Similarly, a leading zero not followed by an x implies octal. @@ -32,7 +41,7 @@ gas: - movl $64, r0 - movl $0x40, r0 - movl $0100, r0 + movl $64, %r0 + movl $0x40, %r0 + movl $0100, %r0 |