aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2002-10-03 23:37:17 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2002-10-03 21:37:17 +0000
commitb72b1c298b49fad325e93e125b011c8a55780262 (patch)
treea83a30d6ad7383144a6a4bb6f8673da399c51373
parent92b7a2a514865e5284143beeacfe3b57341cec79 (diff)
downloadgcc-b72b1c298b49fad325e93e125b011c8a55780262.zip
gcc-b72b1c298b49fad325e93e125b011c8a55780262.tar.gz
gcc-b72b1c298b49fad325e93e125b011c8a55780262.tar.bz2
* i386.c (athlon_cost): Fix the move costs.
From-SVN: r57791
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/i386/i386.c18
2 files changed, 13 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6361287..0850ea3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Thu Oct 3 23:35:51 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (athlon_cost): Fix the move costs.
+
Thu Oct 3 23:20:58 CEST 2002 Jan Hubicka <jh@suse.cz>
* final.c (final): Use symbol name as function name for profiling.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index b018c9e..f912fa9 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -285,25 +285,25 @@ struct processor_costs athlon_cost = {
8, /* "large" insn */
9, /* MOVE_RATIO */
4, /* cost for loading QImode using movzbl */
- {4, 5, 4}, /* cost of loading integer registers
+ {3, 4, 3}, /* cost of loading integer registers
in QImode, HImode and SImode.
Relative to reg-reg move (2). */
- {2, 3, 2}, /* cost of storing integer registers */
+ {3, 4, 3}, /* cost of storing integer registers */
4, /* cost of reg,reg fld/fst */
- {6, 6, 20}, /* cost of loading fp registers
+ {4, 4, 12}, /* cost of loading fp registers
in SFmode, DFmode and XFmode */
- {4, 4, 16}, /* cost of loading integer registers */
+ {6, 6, 8}, /* cost of loading integer registers */
2, /* cost of moving MMX register */
- {2, 2}, /* cost of loading MMX registers
+ {4, 4}, /* cost of loading MMX registers
in SImode and DImode */
- {2, 2}, /* cost of storing MMX registers
+ {4, 4}, /* cost of storing MMX registers
in SImode and DImode */
2, /* cost of moving SSE register */
- {2, 2, 8}, /* cost of loading SSE registers
+ {4, 4, 6}, /* cost of loading SSE registers
in SImode, DImode and TImode */
- {2, 2, 8}, /* cost of storing SSE registers
+ {4, 4, 5}, /* cost of storing SSE registers
in SImode, DImode and TImode */
- 6, /* MMX or SSE register to integer */
+ 5, /* MMX or SSE register to integer */
64, /* size of prefetch block */
6, /* number of parallel prefetches */
};