------- Comment #3 from rguenth at gcc dot gnu dot org 2009-04-04 09:34 ------- Subject: Bug 37892
Author: rguenth Date: Sat Apr 4 09:34:32 2009 New Revision: 145533 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145533 Log: 2009-04-04 Richard Guenther <rguent...@suse.de> PR tree-optimization/8781 PR tree-optimization/37892 * tree-ssa-sccvn.h (vn_reference_fold_indirect): Declare. * tree-ssa-sccvn.c (vn_reference_fold_indirect): New function. (valueize_refs): Call it for *& valueizations. (shared_reference_ops_from_ref): Rename to ... (valueize_shared_reference_ops_from_ref): ... this and valueize. (shared_reference_ops_from_call): Rename to ... (valueize_shared_reference_ops_from_call): ... this and valueize. (vn_reference_lookup): Update. (visit_reference_op_call): Likewise. * tree-ssa-pre.c (phi_translate_1): Fold *&. (eliminate): Value-replace the call address in call statements. * g++.dg/tree-ssa/pr8781.C: New testcase. * gcc.dg/tree-ssa/ssa-pre-25.c: Likewise. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr8781.C trunk/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-25.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-pre.c trunk/gcc/tree-ssa-sccvn.c trunk/gcc/tree-ssa-sccvn.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37892