From 6cdb0ee3658b05acfd6e3ffa51047dc4558b14cb Mon Sep 17 00:00:00 2001 From: Richard Guenther Date: Sat, 28 Mar 2009 10:11:14 +0000 Subject: re PR tree-optimization/38513 (Only postreload will remove a no-op store) 2009-03-28 Richard Guenther PR tree-optimization/38513 * tree-ssa-pre.c (eliminate): Remove redundant stores. * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle EXC_PTR_EXPR and FILTER_EXPR. (get_ref_from_reference_ops): Likewise. * gcc.dg/tree-ssa/ssa-fre-21.c: New testcase. * gcc.dg/tree-ssa/ssa-dse-11.c: Adjust. * gcc.dg/vect/vect-reduc-dot-u8a.c: Likewise. * gcc.dg/vect/vect-reduc-dot-u8b.c: Likewise. * gcc.dg/vect/slp-widen-mult-u8.c: Likewise. * gcc.dg/vect/vect-multitypes-16.c: Likewise. * gcc.dg/vect/vect-35.c: Likewise. * gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c: Likewise. * gcc.dg/vect/vect-multitypes-17.c: Likewise. * gcc.dg/vect/slp-widen-mult-s16.c: Likewise. From-SVN: r145172 --- gcc/tree-ssa-sccvn.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc/tree-ssa-sccvn.c') diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c index dc55676..fb90392 100644 --- a/gcc/tree-ssa-sccvn.c +++ b/gcc/tree-ssa-sccvn.c @@ -658,6 +658,8 @@ copy_reference_ops_from_ref (tree ref, VEC(vn_reference_op_s, heap) **result) case CONST_DECL: case RESULT_DECL: case SSA_NAME: + case EXC_PTR_EXPR: + case FILTER_EXPR: temp.op0 = ref; break; case ADDR_EXPR: @@ -750,6 +752,8 @@ get_ref_from_reference_ops (VEC(vn_reference_op_s, heap) *ops) case CONST_DECL: case RESULT_DECL: case SSA_NAME: + case FILTER_EXPR: + case EXC_PTR_EXPR: *op0_p = op->op0; break; -- cgit v1.1