public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: hjl@lucon.org (H.J. Lu)
To: alan@SPRI.Levels.UniSA.Edu.Au (Alan Modra)
Cc: binutils@sourceware.cygnus.com
Subject: Re: An i386 fp register name patch
Date: Sat, 28 Aug 1999 08:38:00 -0000	[thread overview]
Message-ID: <19990828153810.183978EEE@ocean.lucon.org> (raw)
In-Reply-To: <Pine.LNX.4.10.9908282145190.31737-100000@mullet.itr.unisa.edu.au>

> 
> 
> On Fri, 27 Aug 1999, H.J. Lu wrote:
> 
> > Here is a patch to handle spaces ina i386 FP register names. I am
> > enclosing a testcase here.
> 
> Hello HJ,
>   As you probably know, we already allow spaces in lots of places.  eg.
> 	mov % al , 5 ( % ebp , % ebx , 1 )
> Notice that no spaces are allowed *in* a register name, or for that
> matter in an instruction mnemonic.  eg.
> 	mov $1, % a l
> is illegal.
> 
> So there is a philosophical question as to whether "st(1)" is really an
> indivisible register name token or not.  You seem to say that the register
> name is "st" with an index, so therefore we should allow spaces, eg.
> "st ( 1 )".  I'm inclined to say that "st(1)" is really just a name like
> any other register name, so spaces shouldn't be allowed (or if we do
> allow spaces here then why not in "% a l" - something I don't like).
> 
> Where did you run into a need for spaces in fp reg names?  C asm macros?
> 
> 

I got a report from Mesa people. FWIW, assembler on Solaris &/x86 takes

        fxch   %st( 1) 
        fxch   %st( 1 )
        fxch   %st ( 1 )
        fxch   %st (1) 
        fxch   %st(1)  

But not

        fxch   % st(1) 
        fxch   %           st(1)   

I got

# cat foo.s
        fxch   %st( 1)
        fxch   %st( 1 )
        fxch   %st ( 1 )
        fxch   %st (1)
        fxch   %st(1)
        fxch   % st(1)
        fxch   %           st(1)
# /usr/ccs/bin/as -o foo.o foo.s 
Assembler: 
        aline 6 : Illegal register
        aline 6 : syntax error
        aline 7 : Illegal register
        aline 7 : syntax error

It looks like gas has some extensions, but doesn't have features
supported by other x86 assemblers. In any case, I will support it
in the Linux version of binutils.

-- 
H.J. Lu (hjl@gnu.org)

  reply	other threads:[~1999-08-28  8:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-08-27 12:18 H.J. Lu
1999-08-28  6:05 ` Alan Modra
1999-08-28  8:38   ` H.J. Lu [this message]
1999-08-29 14:05   ` Ian Lance Taylor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=19990828153810.183978EEE@ocean.lucon.org \
    --to=hjl@lucon.org \
    --cc=alan@SPRI.Levels.UniSA.Edu.Au \
    --cc=binutils@sourceware.cygnus.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).