summaryrefslogtreecommitdiff
path: root/gcc/doc/md.texi
diff options
context:
space:
mode:
authortsmigiel <tsmigiel@138bc75d-0d04-0410-961f-82ee72b054a4>2006-11-21 01:35:42 +0000
committertsmigiel <tsmigiel@138bc75d-0d04-0410-961f-82ee72b054a4>2006-11-21 01:35:42 +0000
commit644459d010da636f231ef4b70f9142c96d6ed9e9 (patch)
tree660a6a760b01414d76e3d26c200e8946444802a6 /gcc/doc/md.texi
parent8543a44827ae51f7ae6f3ba02b9472746cbc825c (diff)
downloadgcc-644459d010da636f231ef4b70f9142c96d6ed9e9.tar.gz
ChangeLog
* configure.in (skipdirs) : Don't build target-libiberty for SPU. * configure : Rebuilt. gcc/ChangeLog * config.gcc : Add target for SPU. * config/spu/constraints.md : New file. * config/spu/crt0.c : New file. * config/spu/crtend.c : New file. * config/spu/crti.asm : New file. * config/spu/crtn.asm : New file. * config/spu/float_unsdidf.c : New file. * config/spu/float_unssidf.c : New file. * config/spu/predicates.md : New file. * config/spu/spu-builtins.def : New file. * config/spu/spu-builtins.h : New file. * config/spu/spu-builtins.md : New file. * config/spu/spu-c.c : New file. * config/spu/spu-elf.h : New file. * config/spu/spu-modes.def : New file. * config/spu/spu-protos.h : New file. * config/spu/spu.c : New file. * config/spu/spu.h : New file. * config/spu/spu.md : New file. * config/spu/spu.opt : New file. * config/spu/spu_internals.h : New file. * config/spu/spu_intrinsics.h : New file. * config/spu/spu_mfcio.h : New file. * config/spu/t-spu-elf : New file. * config/spu/vec_types.h : New file. * config/spu/vmx2spu.h : New file. * doc/contrib.texi : Document SPU contributor. * doc/extend.texi : Document SPU extensions. * doc/invoke.texi : Document SPU options. * doc/md.texi : Document SPU constraints. libcpp/ChangeLog * configure.ac (need_64bit_hwint): Need 64bit hwint for SPU. * configure : Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119041 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/md.texi')
-rw-r--r--gcc/doc/md.texi70
1 files changed, 70 insertions, 0 deletions
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
index 26be25c1f2d..2696eca7ebf 100644
--- a/gcc/doc/md.texi
+++ b/gcc/doc/md.texi
@@ -2630,6 +2630,76 @@ Vector zero
@end table
+@item SPU---@file{config/spu/spu.h}
+@table @code
+@item a
+An immediate which can be loaded with the il/ila/ilh/ilhu instructions. const_int is treated as a 64 bit value.
+
+@item c
+An immediate for and/xor/or instructions. const_int is treated as a 64 bit value.
+
+@item d
+An immediate for the @code{iohl} instruction. const_int is treated as a 64 bit value.
+
+@item f
+An immediate which can be loaded with @code{fsmbi}.
+
+@item A
+An immediate which can be loaded with the il/ila/ilh/ilhu instructions. const_int is treated as a 32 bit value.
+
+@item B
+An immediate for most arithmetic instructions. const_int is treated as a 32 bit value.
+
+@item C
+An immediate for and/xor/or instructions. const_int is treated as a 32 bit value.
+
+@item D
+An immediate for the @code{iohl} instruction. const_int is treated as a 32 bit value.
+
+@item I
+A constant in the range [-64, 63] for shift/rotate instructions.
+
+@item J
+An unsigned 7-bit constant for conversion/nop/channel instructions.
+
+@item K
+A signed 10-bit constant for most arithmetic instructions.
+
+@item M
+A signed 16 bit immediate for @code{stop}.
+
+@item N
+An unsigned 16-bit constant for @code{iohl} and @code{fsmbi}.
+
+@item O
+An unsigned 7-bit constant whose 3 least significant bits are 0.
+
+@item P
+An unsigned 3-bit constant for 16-byte rotates and shifts
+
+@item R
+Call operand, reg, for indirect calls
+
+@item S
+Call operand, symbol, for relative calls.
+
+@item T
+Call operand, const_int, for absolute calls.
+
+@item U
+An immediate which can be loaded with the il/ila/ilh/ilhu instructions. const_int is sign extended to 128 bit.
+
+@item W
+An immediate for shift and rotate instructions. const_int is treated as a 32 bit value.
+
+@item Y
+An immediate for and/xor/or instructions. const_int is sign extended as a 128 bit.
+
+@item Z
+An immediate for the @code{iohl} instruction. const_int is sign extended to 128 bit.
+
+@end table
+
@item TMS320C3x/C4x---@file{config/c4x/c4x.h}
@table @code
@item a