------- 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