x86_64 gas documentation

Alan Modra alan@linuxcare.com.au
Fri Jan 5 17:48:00 GMT 2001


On Fri, 5 Jan 2001, Jan Hubicka wrote:

> ! Select the word size, either 32 bits or 64 bits. The 32-bit implies
The 32-bit -> Selecting 32-bit
> ! Intel i386 architecture, while 64-bit imply AMD x86-64 architecture.
imply -> implies
>   
> + These options are only available with the ELF object file format,
> + and require that the necessary BFD support has been included.
It might be a good idea to tell people how "the necessary BFD support" is
enabled, and how it might be that the support is not available.

> + @samp{cdo} --- sign-extend quad in @samp{%rax} to octal in
octal -> octuple

>   the 8 floating point register stack @samp{%st} or equivalently
>   @samp{%st(0)}, @samp{%st(1)}, @samp{%st(2)}, @samp{%st(3)},
>   @samp{%st(4)}, @samp{%st(5)}, @samp{%st(6)}, and @samp{%st(7)}.
> + Overloaded by 8 MMX registers @samp{%mm0}, @samp{%mm1}, @samp{%mm2},
Overloaded -> These registers are overloaded

> ! @emph{must} specify its size (byte, word, long, or quadrupple) with an
quadrupple -> quadruple

> ! The x86-64 architecture adds an RIP (instruction pointer) relative
> ! addressing.  The encoding in AT&T syntax is using the @samp{rip}
> ! pointer.  Only constant offsets are valid. For example:
The x86-64 architecture adds a RIP (instruction pointer relative)
addressing mode.  This addressing mode is specified by using @samp{rip} as
a base register.  Only....

> ! @item AT&T: @samp{symbol(%rip)}, Intel: @samp{[symbol + 1234]}
Intel example is wrong.
> ! Points to the @code{symbol} in RIP relative way, this is shorter than
> ! the default absolute addressing.
Is it always shorter?

> ! Other addressing modes remains unchanged in x86-64 architecture, except
remains -> remain

-- 
Linuxcare.  Support for the Revolution.



More information about the Binutils mailing list