diff options
author | Roger Sayle <roger@eyesopen.com> | 2004-06-24 20:38:59 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2004-06-24 20:38:59 +0000 |
commit | 79066482014cb25e9743b44622fb304b6633b24b (patch) | |
tree | 828057c4687d4f96aef70cc16e0b9d50417bc785 | |
parent | 3db4a9b428b760809fdff522272b95c378949e9b (diff) | |
download | gcc-79066482014cb25e9743b44622fb304b6633b24b.zip gcc-79066482014cb25e9743b44622fb304b6633b24b.tar.gz gcc-79066482014cb25e9743b44622fb304b6633b24b.tar.bz2 |
re PR middle-end/15239 (suboptimal mult-by-const expansion cost limit)
PR middle-end/15239
* expmed.c (expand_mult): Remove artificial restriction on the
maximum cost of a synthetic multiplication sequence.
From-SVN: r83610
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/expmed.c | 1 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a08ab3f..d0c4473 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-06-24 Roger Sayle <roger@eyesopen.com> + + PR middle-end/15239 + * expmed.c (expand_mult): Remove artificial restriction on the + maximum cost of a synthetic multiplication sequence. + 2004-06-24 Eric Christopher <echristo@redhat.com> * combine.c (distribute_notes): Don't delete sets to diff --git a/gcc/expmed.c b/gcc/expmed.c index ae76695..c862503 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -2664,7 +2664,6 @@ expand_mult (enum machine_mode mode, rtx op0, rtx op1, rtx target, && (unsignedp || !flag_trapv)) { int mult_cost = rtx_cost (gen_rtx_MULT (mode, op0, op1), SET); - mult_cost = MIN (12 * add_cost[mode], mult_cost); if (choose_mult_variant (mode, INTVAL (const_op1), &algorithm, &variant, mult_cost)) |