mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
33eaf5de31
PR gas/21072 * asintl.h: Fix spelling mistakes and typos. * atof-generic.c: Likewise. * bit_fix.h: Likewise. * config/atof-ieee.c: Likewise. * config/bfin-defs.h: Likewise. * config/bfin-parse.y: Likewise. * config/obj-coff-seh.h: Likewise. * config/obj-coff.c: Likewise. * config/obj-evax.c: Likewise. * config/obj-macho.c: Likewise. * config/rx-parse.y: Likewise. * config/tc-aarch64.c: Likewise. * config/tc-alpha.c: Likewise. * config/tc-arc.c: Likewise. * config/tc-arm.c: Likewise. * config/tc-avr.c: Likewise. * config/tc-bfin.c: Likewise. * config/tc-cr16.c: Likewise. * config/tc-cris.c: Likewise. * config/tc-crx.c: Likewise. * config/tc-d10v.c: Likewise. * config/tc-d30v.c: Likewise. * config/tc-dlx.c: Likewise. * config/tc-epiphany.c: Likewise. * config/tc-frv.c: Likewise. * config/tc-hppa.c: Likewise. * config/tc-i370.c: Likewise. * config/tc-i386-intel.c: Likewise. * config/tc-i386.c: Likewise. * config/tc-i960.c: Likewise. * config/tc-ia64.c: Likewise. * config/tc-m32r.c: Likewise. * config/tc-m68hc11.c: Likewise. * config/tc-m68k.c: Likewise. * config/tc-mcore.c: Likewise. * config/tc-mep.c: Likewise. * config/tc-mep.h: Likewise. * config/tc-metag.c: Likewise. * config/tc-microblaze.c: Likewise. * config/tc-mips.c: Likewise. * config/tc-mmix.c: Likewise. * config/tc-mn10200.c: Likewise. * config/tc-mn10300.c: Likewise. * config/tc-msp430.c: Likewise. * config/tc-msp430.h: Likewise. * config/tc-nds32.c: Likewise. * config/tc-nds32.h: Likewise. * config/tc-nios2.c: Likewise. * config/tc-nios2.h: Likewise. * config/tc-ns32k.c: Likewise. * config/tc-pdp11.c: Likewise. * config/tc-ppc.c: Likewise. * config/tc-pru.c: Likewise. * config/tc-rx.c: Likewise. * config/tc-s390.c: Likewise. * config/tc-score.c: Likewise. * config/tc-score7.c: Likewise. * config/tc-sh.c: Likewise. * config/tc-sh64.c: Likewise. * config/tc-sparc.c: Likewise. * config/tc-tic4x.c: Likewise. * config/tc-tic54x.c: Likewise. * config/tc-v850.c: Likewise. * config/tc-vax.c: Likewise. * config/tc-visium.c: Likewise. * config/tc-xgate.c: Likewise. * config/tc-xtensa.c: Likewise. * config/tc-z80.c: Likewise. * config/tc-z8k.c: Likewise. * config/te-vms.c: Likewise. * config/xtensa-relax.c: Likewise. * doc/as.texinfo: Likewise. * doc/c-arm.texi: Likewise. * doc/c-hppa.texi: Likewise. * doc/c-i370.texi: Likewise. * doc/c-i386.texi: Likewise. * doc/c-m32r.texi: Likewise. * doc/c-m68k.texi: Likewise. * doc/c-mmix.texi: Likewise. * doc/c-msp430.texi: Likewise. * doc/c-nds32.texi: Likewise. * doc/c-ns32k.texi: Likewise. * doc/c-riscv.texi: Likewise. * doc/c-rx.texi: Likewise. * doc/c-s390.texi: Likewise. * doc/c-tic6x.texi: Likewise. * doc/c-tilegx.texi: Likewise. * doc/c-tilepro.texi: Likewise. * doc/c-v850.texi: Likewise. * doc/c-xgate.texi: Likewise. * doc/c-xtensa.texi: Likewise. * dwarf2dbg.c: Likewise. * ecoff.c: Likewise. * itbl-ops.c: Likewise. * listing.c: Likewise. * macro.c: Likewise. * po/gas.pot: Likewise. * read.c: Likewise. * struc-symbol.h: Likewise. * symbols.h: Likewise. * testsuite/gas/arc/relocs-errors.err: Likewise. * write.c: Likewise.
209 lines
5.1 KiB
Plaintext
209 lines
5.1 KiB
Plaintext
@c Copyright (C) 2012-2017 Free Software Foundation, Inc.
|
|
@c This is part of the GAS manual.
|
|
@c For copying conditions, see the file as.texinfo.
|
|
@ifset GENERIC
|
|
@page
|
|
@node XGATE-Dependent
|
|
@chapter XGATE Dependent Features
|
|
@end ifset
|
|
@ifclear GENERIC
|
|
@node Machine Dependencies
|
|
@chapter XGATE Dependent Features
|
|
@end ifclear
|
|
|
|
@cindex XGATE support
|
|
@menu
|
|
* XGATE-Opts:: XGATE Options
|
|
* XGATE-Syntax:: Syntax
|
|
* XGATE-Directives:: Assembler Directives
|
|
* XGATE-Float:: Floating Point
|
|
* XGATE-opcodes:: Opcodes
|
|
@end menu
|
|
|
|
@node XGATE-Opts
|
|
@section XGATE Options
|
|
|
|
@cindex options, XGATE
|
|
@cindex XGATE options
|
|
The Freescale XGATE version of @code{@value{AS}} has a few machine
|
|
dependent options.
|
|
|
|
@table @code
|
|
|
|
@cindex @samp{-mshort}
|
|
@item -mshort
|
|
This option controls the ABI and indicates to use a 16-bit integer ABI.
|
|
It has no effect on the assembled instructions.
|
|
This is the default.
|
|
|
|
@cindex @samp{-mlong}
|
|
@item -mlong
|
|
This option controls the ABI and indicates to use a 32-bit integer ABI.
|
|
|
|
@cindex @samp{-mshort-double}
|
|
@item -mshort-double
|
|
This option controls the ABI and indicates to use a 32-bit float ABI.
|
|
This is the default.
|
|
|
|
@cindex @samp{-mlong-double}
|
|
@item -mlong-double
|
|
This option controls the ABI and indicates to use a 64-bit float ABI.
|
|
|
|
@cindex @samp{--print-insn-syntax}
|
|
@item --print-insn-syntax
|
|
You can use the @samp{--print-insn-syntax} option to obtain the
|
|
syntax description of the instruction when an error is detected.
|
|
|
|
@cindex @samp{--print-opcodes}
|
|
@item --print-opcodes
|
|
The @samp{--print-opcodes} option prints the list of all the
|
|
instructions with their syntax. Once the list is printed
|
|
@code{@value{AS}} exits.
|
|
|
|
@end table
|
|
|
|
@node XGATE-Syntax
|
|
@section Syntax
|
|
|
|
@cindex XGATE syntax
|
|
@cindex syntax, XGATE
|
|
|
|
In XGATE RISC syntax, the instruction name comes first and it may
|
|
be followed by up to three operands. Operands are separated by commas
|
|
(@samp{,}). @code{@value{AS}} will complain if too many operands are specified
|
|
for a given instruction. The same will happen if you specified too few
|
|
operands.
|
|
|
|
@smallexample
|
|
nop
|
|
ldl #23
|
|
CMP R1, R2
|
|
@end smallexample
|
|
|
|
@cindex line comment character, XGATE
|
|
@cindex XGATE line comment character
|
|
The presence of a @samp{;} character or a @samp{!} character anywhere
|
|
on a line indicates the start of a comment that extends to the end of
|
|
that line.
|
|
|
|
A @samp{*} or a @samp{#} character at the start of a line also
|
|
introduces a line comment, but these characters do not work elsewhere
|
|
on the line. If the first character of the line is a @samp{#} then as
|
|
well as starting a comment, the line could also be logical line number
|
|
directive (@pxref{Comments}) or a preprocessor control command
|
|
(@pxref{Preprocessing}).
|
|
|
|
@cindex line separator, XGATE
|
|
@cindex statement separator, XGATE
|
|
@cindex XGATE line separator
|
|
The XGATE assembler does not currently support a line separator
|
|
character.
|
|
|
|
@cindex XGATE addressing modes
|
|
@cindex addressing modes, XGATE
|
|
The following addressing modes are understood for XGATE:
|
|
@table @dfn
|
|
@item Inherent
|
|
@samp{}
|
|
|
|
@item Immediate 3 Bit Wide
|
|
@samp{#@var{number}}
|
|
|
|
@item Immediate 4 Bit Wide
|
|
@samp{#@var{number}}
|
|
|
|
@item Immediate 8 Bit Wide
|
|
@samp{#@var{number}}
|
|
|
|
@item Monadic Addressing
|
|
@samp{@var{reg}}
|
|
|
|
@item Dyadic Addressing
|
|
@samp{@var{reg}, @var{reg}}
|
|
|
|
@item Triadic Addressing
|
|
@samp{@var{reg}, @var{reg}, @var{reg}}
|
|
|
|
@item Relative Addressing 9 Bit Wide
|
|
@samp{*@var{symbol}}
|
|
|
|
@item Relative Addressing 10 Bit Wide
|
|
@samp{*@var{symbol}}
|
|
|
|
@item Index Register plus Immediate Offset
|
|
@samp{@var{reg}, (@var{reg}, #@var{number})}
|
|
|
|
@item Index Register plus Register Offset
|
|
@samp{@var{reg}, @var{reg}, @var{reg}}
|
|
|
|
@item Index Register plus Register Offset with Post-increment
|
|
@samp{@var{reg}, @var{reg}, @var{reg}+}
|
|
|
|
@item Index Register plus Register Offset with Pre-decrement
|
|
@samp{@var{reg}, @var{reg}, -@var{reg}}
|
|
|
|
The register can be either @samp{R0}, @samp{R1}, @samp{R2}, @samp{R3},
|
|
@samp{R4}, @samp{R5}, @samp{R6} or @samp{R7}.
|
|
|
|
@end table
|
|
|
|
Convene macro opcodes to deal with 16-bit values have been added.
|
|
|
|
@table @dfn
|
|
|
|
@item Immediate 16 Bit Wide
|
|
@samp{#@var{number}}, or @samp{*@var{symbol}}
|
|
|
|
For example:
|
|
|
|
@smallexample
|
|
ldw R1, #1024
|
|
ldw R3, timer
|
|
ldw R1, (R1, #0)
|
|
COM R1
|
|
stw R2, (R1, #0)
|
|
@end smallexample
|
|
@end table
|
|
|
|
@node XGATE-Directives
|
|
@section Assembler Directives
|
|
|
|
@cindex assembler directives, XGATE
|
|
@cindex XGATE assembler directives
|
|
|
|
The XGATE version of @code{@value{AS}} have the following
|
|
specific assembler directives:
|
|
|
|
@node XGATE-Float
|
|
@section Floating Point
|
|
|
|
@cindex floating point, XGATE
|
|
@cindex XGATE floating point
|
|
Packed decimal (P) format floating literals are not supported(yet).
|
|
|
|
The floating point formats generated by directives are these.
|
|
|
|
@table @code
|
|
@cindex @code{float} directive, XGATE
|
|
@item .float
|
|
@code{Single} precision floating point constants.
|
|
|
|
@cindex @code{double} directive, XGATE
|
|
@item .double
|
|
@code{Double} precision floating point constants.
|
|
|
|
@cindex @code{extend} directive XGATE
|
|
@cindex @code{ldouble} directive XGATE
|
|
@item .extend
|
|
@itemx .ldouble
|
|
@code{Extended} precision (@code{long double}) floating point constants.
|
|
@end table
|
|
|
|
@need 2000
|
|
@node XGATE-opcodes
|
|
@section Opcodes
|
|
|
|
@cindex XGATE opcodes
|
|
@cindex instruction set, XGATE
|
|
|