aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99392.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99392.patch')
-rw-r--r--recipes/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99392.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/recipes/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99392.patch b/recipes/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99392.patch
new file mode 100644
index 0000000000..9a9d5940c8
--- /dev/null
+++ b/recipes/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99392.patch
@@ -0,0 +1,33 @@
+2010-09-10 Nathan Froyd <froydnj@codesourcery.com>
+
+ Issue #9120
+
+ * release-notes-csl.xml (Compiler optimization improvements): New
+ bullet.
+
+ gcc/
+ * gimple.c (is_gimple_min_invariant): Check for constant INDIRECT_REFs.
+
+ 2010-09-08 Tom de Vries <tom@codesourcery.com>
+
+ gcc/
+
+=== modified file 'gcc/gimple.c'
+--- old/gcc/gimple.c 2010-06-22 17:23:11 +0000
++++ new/gcc/gimple.c 2010-09-15 16:47:52 +0000
+@@ -2591,7 +2591,13 @@
+
+ op = strip_invariant_refs (TREE_OPERAND (t, 0));
+
+- return op && (CONSTANT_CLASS_P (op) || decl_address_invariant_p (op));
++ if (!op)
++ return false;
++
++ if (TREE_CODE (op) == INDIRECT_REF)
++ return CONSTANT_CLASS_P (TREE_OPERAND (op, 0));
++ else
++ return CONSTANT_CLASS_P (op) || decl_address_invariant_p (op);
+ }
+
+ /* Return true if T is a gimple invariant address at IPA level
+