aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2006-12-07 13:56:02 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2006-12-07 12:56:02 +0000
commite850f0281c60912faf6f19c2765f0655ff4f179c (patch)
treebb6d9248b6bfd2f58ab9017f4d526a8e805adcdf
parent5daffcc76eab6e3b4519fbc9aa8af59ff70d6ef0 (diff)
downloadgcc-e850f0281c60912faf6f19c2765f0655ff4f179c.zip
gcc-e850f0281c60912faf6f19c2765f0655ff4f179c.tar.gz
gcc-e850f0281c60912faf6f19c2765f0655ff4f179c.tar.bz2
i386.c (nocona_cost, [...]): Update preffered memcpy/memset codegen.
* i386.c (nocona_cost, pentium4_cost): Update preffered memcpy/memset codegen. From-SVN: r119620
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index aac2bb1..4c63be4 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2006-12-07 Jan Hubicka <jh@suse.cz>
+ * i386.c (nocona_cost, pentium4_cost): Update preffered memcpy/memset
+ codegen.
+
+2006-12-07 Jan Hubicka <jh@suse.cz>
+
* tree-vrp.c (compare_values): Short circuit INTEGER_CST;
use fold_constant_to_binary; tolerate wrong type constants.
(value_intersect_p): Do just two tests.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 9dc2feb..fd5c27c 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -655,9 +655,9 @@ struct processor_costs pentium4_cost = {
COSTS_N_INSNS (2), /* cost of FABS instruction. */
COSTS_N_INSNS (2), /* cost of FCHS instruction. */
COSTS_N_INSNS (43), /* cost of FSQRT instruction. */
- {{libcall, {{12, loop_1_byte}, {64, loop}, {-1, rep_prefix_4_byte}}},
+ {{libcall, {{12, loop_1_byte}, {-1, rep_prefix_4_byte}}},
DUMMY_STRINGOP_ALGS},
- {{libcall, {{6, loop_1_byte}, {64, loop}, {20480, rep_prefix_4_byte},
+ {{libcall, {{6, loop_1_byte}, {48, loop}, {20480, rep_prefix_4_byte},
{-1, libcall}}},
DUMMY_STRINGOP_ALGS},
};
@@ -713,10 +713,10 @@ struct processor_costs nocona_cost = {
COSTS_N_INSNS (3), /* cost of FABS instruction. */
COSTS_N_INSNS (3), /* cost of FCHS instruction. */
COSTS_N_INSNS (44), /* cost of FSQRT instruction. */
- {{libcall, {{12, loop_1_byte}, {64, loop}, {-1, rep_prefix_4_byte}}},
+ {{libcall, {{12, loop_1_byte}, {-1, rep_prefix_4_byte}}},
{libcall, {{32, loop}, {20000, rep_prefix_8_byte},
{100000, unrolled_loop}, {-1, libcall}}}},
- {{libcall, {{6, loop_1_byte}, {64, loop}, {20480, rep_prefix_4_byte},
+ {{libcall, {{6, loop_1_byte}, {48, loop}, {20480, rep_prefix_4_byte},
{-1, libcall}}},
{libcall, {{24, loop}, {64, unrolled_loop},
{8192, rep_prefix_8_byte}, {-1, libcall}}}}