Re: [Xen-devel] [PATCH] fix asm syntax

John Levon
Tue, 17 Oct 2006 16:04:25 -0000

On Tue, Oct 17, 2006 at 04:49:09PM +0100, Keir Fraser wrote:

> On 17/10/06 16:42, "John Levon" <levon@movementarian.org>
wrote:
>
> > The standard GNU ld is currently still 2.15 on Solaris. If
there''s
> > serious objections to not using the newer syntax, we can always keep
it
> > as a local hack until we''ve updated. We''re releasing
our sources after
> > all.
>
> 2.15 supports the rex64/ syntax, I''m certain. It''s the
default binutils on
> my Debian build box. If you get a build failure with that version,
that''s
> rather suspect.

You''re right. I looked closer at the problem. It''s this code:

   1689       if (!is_space_char (*l)
   1690           && *l != END_OF_INSN
   1691           && (intel_syntax
   1692               || (*l != PREFIX_SEPARATOR
   1693                   && *l != '','')))
   1694         {
   1695           as_bad (_("invalid character %s in mnemonic"),
   1696                   output_invalid (*l));

On sysv targets:

    211 #define PREFIX_SEPARATOR ''\\''

Possibly --divide should alter the semantics in this case too. It''s
something I need to bring up on the binutils list, but in the meantime,
it seems like a bug we have to work around.

regards
john