This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RFA: hook signture patches (6/11): TARGET_MEMORY_MOVE_COST
- From: Joern Rennecke <amylaar at spamcop dot net>
- To: gcc-patches at gcc dot gnu dot org
- Date: Tue, 29 Jun 2010 22:03:04 -0400
- Subject: RFA: hook signture patches (6/11): TARGET_MEMORY_MOVE_COST
2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
* target.def (memory_move_cost): Use DEFHOOK.
* doc/tm.texi.in (TARGET_MEMORY_MOVE_COST): Use @hook.
Rename regclass AKA class to rclass.
* doc/tm.texi: Regenerate.
Index: doc/tm.texi
===================================================================
--- doc/tm.texi (revision 161563)
+++ doc/tm.texi (working copy)
@@ -6170,9 +6170,9 @@ These macros are obsolete, new ports sho
@code{TARGET_MEMORY_MOVE_COST} instead.
@end defmac
-@deftypefn {Target Hook} int TARGET_MEMORY_MOVE_COST (enum machine_mode @var{mode}, enum reg_class @var{regclass}, bool @var{in})
+@deftypefn {Target Hook} int TARGET_MEMORY_MOVE_COST (enum machine_mode @var{mode}, enum reg_class @var{rclass}, bool @var{in})
This target hook should return the cost of moving data of mode @var{mode}
-between a register of class @var{class} and memory; @var{in} is @code{false}
+between a register of class @var{rclass} and memory; @var{in} is @code{false}
if the value is to be written to memory, @code{true} if it is to be read in.
This cost is relative to those in @code{TARGET_REGISTER_MOVE_COST}.
If moving between registers and memory is more expensive than between two
@@ -6181,7 +6181,7 @@ registers, you should add this target ho
If you do not add this target hook, GCC uses a default cost of 4 plus
the cost of copying via a secondary reload register, if one is
needed. If your machine requires a secondary reload register to copy
-between memory and a register of @var{class} but the reload mechanism is
+between memory and a register of @var{rclass} but the reload mechanism is
more complex than copying via an intermediate, use this target hook to
reflect the actual cost of the move.
Index: doc/tm.texi.in
===================================================================
--- doc/tm.texi.in (revision 161563)
+++ doc/tm.texi.in (working copy)
@@ -6170,9 +6170,9 @@ These macros are obsolete, new ports sho
@code{TARGET_MEMORY_MOVE_COST} instead.
@end defmac
-@deftypefn {Target Hook} int TARGET_MEMORY_MOVE_COST (enum machine_mode @var{mode}, enum reg_class @var{regclass}, bool @var{in})
+@hook TARGET_MEMORY_MOVE_COST
This target hook should return the cost of moving data of mode @var{mode}
-between a register of class @var{class} and memory; @var{in} is @code{false}
+between a register of class @var{rclass} and memory; @var{in} is @code{false}
if the value is to be written to memory, @code{true} if it is to be read in.
This cost is relative to those in @code{TARGET_REGISTER_MOVE_COST}.
If moving between registers and memory is more expensive than between two
@@ -6181,7 +6181,7 @@ registers, you should add this target ho
If you do not add this target hook, GCC uses a default cost of 4 plus
the cost of copying via a secondary reload register, if one is
needed. If your machine requires a secondary reload register to copy
-between memory and a register of @var{class} but the reload mechanism is
+between memory and a register of @var{rclass} but the reload mechanism is
more complex than copying via an intermediate, use this target hook to
reflect the actual cost of the move.
Index: target.def
===================================================================
--- target.def (revision 161563)
+++ target.def (working copy)
@@ -1378,7 +1368,7 @@ DEFHOOK
/* Compute cost of moving registers to/from memory. */
/* ??? Documenting the argument types for this hook requires a GFDL
license grant. Also, the documentation uses a different name for RCLASS. */
-DEFHOOK_UNDOC
+DEFHOOK
(memory_move_cost,
"",
int, (enum machine_mode mode, enum reg_class rclass, bool in),