summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2015-07-09 20:35:56 +0000
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2015-07-09 20:35:56 +0000
commitcbcdee0010178d75db0a3ff01f4597cbd52b78ee (patch)
tree61de275553353261af02b15f9f3dc51705498159
parentd66793efb5aed8267585914b3831046905841ff8 (diff)
downloadgcc-cbcdee0010178d75db0a3ff01f4597cbd52b78ee.tar.gz
Adjust variable shift costs for IA MCU
We reduce code size for IA MCU by adjusting variable shift costs for IA MCU PR target/66821 * config/i386/i386.c (iamcu_cost): Adjust variable shift costs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225635 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c05f3dfea27..f86571193dd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2015-07-09 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/66821
+ * config/i386/i386.c (iamcu_cost): Adjust variable shift costs.
+
2015-07-09 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000-protos.h (rs6000_secondary_reload_memory):
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 54ee6f3d4fd..a18c733d211 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -420,7 +420,7 @@ static const
struct processor_costs iamcu_cost = {
COSTS_N_INSNS (1), /* cost of an add instruction */
COSTS_N_INSNS (1) + 1, /* cost of a lea instruction */
- COSTS_N_INSNS (4), /* variable shift costs */
+ COSTS_N_INSNS (1), /* variable shift costs */
COSTS_N_INSNS (1), /* constant shift costs */
{COSTS_N_INSNS (11), /* cost of starting multiply for QI */
COSTS_N_INSNS (11), /* HI */