[PATCH] add IA-64 operand constraints to doc/md.texi
Steve Christiansen
smc@us.ibm.com
Wed Apr 24 13:21:00 GMT 2002
The following patch to doc/md.texi adds a list of machine-dependent
operand constraints for IA-64. One point deserves an explanation:
Normally the common constraints such as m and r are not included in
the machine lists, but I put m under IA-64 so that I could include
a warning to always use the %P print code with the m constraint.
It's easy to forget, and was the motivation for this patch in the
first place (http://gcc.gnu.org/ml/gcc/2002-04/msg00649.html).
If the patch is ok, could someone apply it? I don't have write access.
Thanks
Steve
2002-04-24 Steve Christiansen <smc@us.ibm.com>
* doc/md.texi (Machine Constraints): Add IA-64 constraints.
Index: gcc/doc/md.texi
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/doc/md.texi,v
retrieving revision 1.37
diff -c -r1.37 md.texi
*** gcc/doc/md.texi 8 Apr 2002 17:20:48 -0000 1.37
--- gcc/doc/md.texi 24 Apr 2002 19:41:47 -0000
***************
*** 1679,1684 ****
--- 1679,1747 ----
Floating point 1
@end table
+ @item Intel IA-64---@file{ia64.h}
+ @table @code
+ @item a
+ General register @code{r0} to @code{r3} for @code{addl} instruction
+
+ @item b
+ Branch register
+
+ @item c
+ Predicate register (@samp{c} as in ``conditional'')
+
+ @item d
+ Application register residing in M-unit
+
+ @item e
+ Application register residing in I-unit
+
+ @item f
+ Floating-point register
+
+ @item m
+ Memory operand.
+ Remember that @samp{m} allows postincrement and postdecrement which
+ require printing with @samp{%Pn} on IA-64.
+ Use @samp{S} to disallow postincrement and postdecrement.
+
+ @item G
+ Floating-point constant 0.0 or 1.0
+
+ @item I
+ 14-bit signed integer constant
+
+ @item J
+ 22-bit signed integer constant
+
+ @item K
+ 8-bit signed integer constant for logical instructions
+
+ @item L
+ 8-bit adjusted signed integer constant for compare pseudo-ops
+
+ @item M
+ 6-bit unsigned integer constant for shift counts
+
+ @item N
+ 9-bit signed integer constant for load and store postincrements
+
+ @item O
+ The constant zero
+
+ @item P
+ 0 or -1 for @code{dep} instruction
+
+ @item Q
+ Non-volatile memory for floating-point loads and stores
+
+ @item R
+ Integer constant in the range 1 to 4 for @code{shladd} instruction
+
+ @item S
+ Memory operand except postincrement and postdecrement
+ @end table
+
@item MIPS---@file{mips.h}
@table @code
@item d
More information about the Gcc-patches
mailing list