OSDN Git Service

* doc/tm.texi (TARGET_RTX_COSTS): Document that instruction
authorsayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 19 May 2004 13:54:15 +0000 (13:54 +0000)
committersayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 19 May 2004 13:54:15 +0000 (13:54 +0000)
costs should be based on code size when optimizing for size.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82025 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/doc/tm.texi

index 3b61615..ca2069d 100644 (file)
@@ -1,3 +1,8 @@
+2004-05-19  Roger Sayle  <roger@eyesopen.com>
+
+       * doc/tm.texi (TARGET_RTX_COSTS): Document that instruction
+       costs should be based on code size when optimizing for size.
+
 2004-05-19  Paolo Bonzini  <bonzini@gnu.org>
 
        * fold-const.c: Remove non-printable character 160.
index 43543a8..67f4b76 100644 (file)
@@ -5456,7 +5456,13 @@ instructions.
 
 On entry to the hook, @code{*@var{total}} contains a default estimate
 for the cost of the expression.  The hook should modify this value as
-necessary.
+necessary.  Traditionally, the default costs are @code{COSTS_N_INSNS (5)}
+for multiplications, @code{COSTS_N_INSNS (7)} for division and modulus
+operations, and @code{COSTS_N_INSNS (1)} for all other operations.
+
+When optimizing for code size, i.e@. when @code{optimize_size} is
+non-zero, this target hook should be used to estimate the relative
+size cost of an expression, again relative to @code{COSTS_N_INSNS}.
 
 The hook returns true when all subexpressions of @var{x} have been
 processed, and false when @code{rtx_cost} should recurse.