[TUHS] Design of the AT&T assembly syntax
Warner Losh
imp at bsdimp.com
Tue Oct 29 08:29:26 AEST 2019
On Mon, Oct 28, 2019 at 4:24 PM Robert Clausecker <fuz at fuz.su> wrote:
> Hi Warner,
>
> On Mon, Oct 28, 2019 at 04:08:53PM -0600, Warner Losh wrote:
> > VENIX 2.0 had this. It was a Pure AT&T syntax w/o % signs:
> >
> > eg
> > |
> > | VENIX/86 start off (bootstrap starts execution at location 0 `start').
> > |
> > | Relocate complete kernel down to low memory.
> > .text
> > start: cli
> > mov dx,#LOWMEM | base of relocated kernel
> > mov cx,cs
> > cmp cx,dx | are we there (put there by bootstrap) ?
> > beq L0002 | Yes.
> > mov ds,cx
> >
> > which is clearly op dst, src.
>
> op dst, src is Intel syntax. AT&T syntax has op src, dst like MACRO-11.
> There are a number of other differences: (a) | instead of / or # as a
> comment
> character (b) different mnemonics (beq instead of je) and (c) # instead of
> $
> as the comment character.
>
> Without seeing some more code, I'd say it's not AT&T syntax.
>
Doh! I've been mixing the two up since the 90s :(. Yea, this stuff isn't
AT&T syntax... It's from a compiler from MIT... I should have taken the
hint that it used MIT sequence :)
Warner
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20191028/957a3a2a/attachment.html>
More information about the TUHS
mailing list