aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0354-config-rs6000-rs6000.c-rs6000_register_move_cost-Mak.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0354-config-rs6000-rs6000.c-rs6000_register_move_cost-Mak.patch')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0354-config-rs6000-rs6000.c-rs6000_register_move_cost-Mak.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0354-config-rs6000-rs6000.c-rs6000_register_move_cost-Mak.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0354-config-rs6000-rs6000.c-rs6000_register_move_cost-Mak.patch
new file mode 100644
index 0000000000..e5cfa1d72b
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0354-config-rs6000-rs6000.c-rs6000_register_move_cost-Mak.patch
@@ -0,0 +1,28 @@
+From d51320157aee7ce2a4e2478c8457eae2022192fb Mon Sep 17 00:00:00 2001
+From: pthaugen <pthaugen@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 26 May 2011 15:33:43 +0000
+Subject: [PATCH] * config/rs6000/rs6000.c (rs6000_register_move_cost): Make LR/CTR
+ moves expensive on Power7 also.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@174294 138bc75d-0d04-0410-961f-82ee72b054a4
+
+index 898a87b..b39801a 100644
+--- a/gcc/config/rs6000/rs6000.c
++++ b/gcc/config/rs6000/rs6000.c
+@@ -26670,9 +26670,10 @@ rs6000_register_move_cost (enum machine_mode mode,
+ else if (from == CR_REGS)
+ ret = 4;
+
+- /* Power6 has slower LR/CTR moves so make them more expensive than
+- memory in order to bias spills to memory .*/
+- else if (rs6000_cpu == PROCESSOR_POWER6
++ /* For those processors that have slow LR/CTR moves, make them more
++ expensive than memory in order to bias spills to memory .*/
++ else if ((rs6000_cpu == PROCESSOR_POWER6
++ || rs6000_cpu == PROCESSOR_POWER7)
+ && reg_classes_intersect_p (from, LINK_OR_CTR_REGS))
+ ret = 6 * hard_regno_nregs[0][mode];
+
+--
+1.7.0.4
+