aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99348.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99348.patch')
-rw-r--r--meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99348.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99348.patch b/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99348.patch
new file mode 100644
index 0000000000..f99938a7f1
--- /dev/null
+++ b/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99348.patch
@@ -0,0 +1,37 @@
+ 2010-02-23 Julian Brown <julian@codesourcery.com>
+
+ gcc/
+ * calls.c (precompute_register_parameters): Avoid generating a
+ register move if optimizing for size.
+
+2010-07-26 Julian Brown <julian@codesourcery.com>
+
+ Merge from Sourcery G++ 4.4:
+
+ 2010-02-15 Julian Brown <julian@codesourcery.com>
+
+ Issue #7486
+
+=== modified file 'gcc/calls.c'
+--- old/gcc/calls.c 2010-04-02 18:54:46 +0000
++++ new/gcc/calls.c 2010-08-13 10:50:45 +0000
+@@ -703,7 +703,9 @@
+
+ For small register classes, also do this if this call uses
+ register parameters. This is to avoid reload conflicts while
+- loading the parameters registers. */
++ loading the parameters registers.
++
++ Avoid creating the extra move if optimizing for size. */
+
+ else if ((! (REG_P (args[i].value)
+ || (GET_CODE (args[i].value) == SUBREG
+@@ -711,6 +713,7 @@
+ && args[i].mode != BLKmode
+ && rtx_cost (args[i].value, SET, optimize_insn_for_speed_p ())
+ > COSTS_N_INSNS (1)
++ && !optimize_size
+ && ((SMALL_REGISTER_CLASSES && *reg_parm_seen)
+ || optimize))
+ args[i].value = copy_to_mode_reg (args[i].mode, args[i].value);
+