------- Comment #8 from pinskia at gcc dot gnu dot org  2008-05-05 20:50 -------
That is:
Index: gcc/gcc/tree-ssa-forwprop.c
===================================================================
--- gcc/gcc/tree-ssa-forwprop.c (revision 134951)
+++ gcc/gcc/tree-ssa-forwprop.c (working copy)
@@ -657,6 +657,9 @@ forward_propagate_addr_expr_1 (tree name
       && TREE_OPERAND (rhs, 0) == name
       && TYPE_SIZE (TREE_TYPE (rhs))
       && TYPE_SIZE (TREE_TYPE (TREE_OPERAND (def_rhs, 0)))
+      /* Function decls should not be used for VCE either as it could be
+        a function descriptor that we want and not the actual function code. 
*/
+      && TREE_CODE (TREE_OPERAND (def_rhs, 0)) != FUNCTION_DECL
       /* We should not convert volatile loads to non volatile loads. */
       && !TYPE_VOLATILE (TREE_TYPE (rhs))
       && !TYPE_VOLATILE (TREE_TYPE (TREE_OPERAND (def_rhs, 0)))


If you could test that on ia64-linux too, that would be nice.

Thanks,
Andrew Pinski


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36141

Reply via email to