tm.texi.in (Register Classes): Document rule for the narrowest register classes.
authorHans-Peter Nilsson <hp@axis.com>
Thu, 9 Jun 2011 23:32:32 +0000 (23:32 +0000)
committerHans-Peter Nilsson <hp@gcc.gnu.org>
Thu, 9 Jun 2011 23:32:32 +0000 (23:32 +0000)
* doc/tm.texi.in (Register Classes): Document rule for the narrowest
register classes.
* doc/tm.texi: Regenerate.

From-SVN: r174866

gcc/ChangeLog
gcc/doc/tm.texi
gcc/doc/tm.texi.in

index 4b56edc17b6b1a8120dfed1889c17c20f07a7617..b9340f26572aa4fefe320bdfdd892c5288dddc3c 100644 (file)
@@ -1,3 +1,9 @@
+2011-06-10  Hans-Peter Nilsson  <hp@axis.com>
+
+       * doc/tm.texi.in (Register Classes): Document rule for the narrowest
+       register classes.
+       * doc/tm.texi: Regenerate.
+
 2011-06-09  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        PR target/49307
index ebc876f14566036fe7599fa47b31fe047ff05b7d..b32ff89bc8e875abc98d59de3ffc95b36a4b36e5 100644 (file)
@@ -2337,6 +2337,12 @@ constraints is through machine-dependent operand constraint letters.
 You can define such letters to correspond to various classes, then use
 them in operand constraints.
 
+You must define the narrowest register classes for allocatable
+registers, so that each class either has no subclasses, or that for
+some mode, the move cost between registers within the class is
+cheaper than moving a register in the class to or from memory
+(@pxref{Costs}).
+
 You should define a class for the union of two classes whenever some
 instruction allows both classes.  For example, if an instruction allows
 either a floating point (coprocessor) register or a general register for a
index 85fcfb1cdb813908ef43c504120fb29087e59f86..667b1ef24bb63b28bdb464138764e0349caf9acd 100644 (file)
@@ -2327,6 +2327,12 @@ constraints is through machine-dependent operand constraint letters.
 You can define such letters to correspond to various classes, then use
 them in operand constraints.
 
+You must define the narrowest register classes for allocatable
+registers, so that each class either has no subclasses, or that for
+some mode, the move cost between registers within the class is
+cheaper than moving a register in the class to or from memory
+(@pxref{Costs}).
+
 You should define a class for the union of two classes whenever some
 instruction allows both classes.  For example, if an instruction allows
 either a floating point (coprocessor) register or a general register for a