From dd6f2cf98c132d493c9ba7c5602d2ade2efa97f4 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Wed, 20 Jan 2016 08:36:32 +0000 Subject: re PR target/69345 (459.GemsFDTD regression) 2016-01-20 Richard Biener PR tree-optimization/69345 * tree-ssa-sccvn.h (VN_INFO_RANGE_INFO): New inline function. (VN_INFO_PTR_INFO): Likewise. * tree-ssa-sccvn.c (set_ssa_val_to): Avoid clearing points-to info when it is equal between non-dominating SSA names. * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Make sure to look at original SSA infos. From-SVN: r232603 --- gcc/tree-ssa-pre.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'gcc/tree-ssa-pre.c') diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index 1f1b055..311663d 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -4033,22 +4033,22 @@ eliminate_dom_walker::before_dom_children (basic_block b) { basic_block sprime_b = gimple_bb (SSA_NAME_DEF_STMT (sprime)); if (POINTER_TYPE_P (TREE_TYPE (lhs)) - && SSA_NAME_PTR_INFO (lhs) - && !SSA_NAME_PTR_INFO (sprime)) + && VN_INFO_PTR_INFO (lhs) + && ! VN_INFO_PTR_INFO (sprime)) { duplicate_ssa_name_ptr_info (sprime, - SSA_NAME_PTR_INFO (lhs)); + VN_INFO_PTR_INFO (lhs)); if (b != sprime_b) mark_ptr_info_alignment_unknown (SSA_NAME_PTR_INFO (sprime)); } - else if (!POINTER_TYPE_P (TREE_TYPE (lhs)) - && SSA_NAME_RANGE_INFO (lhs) - && !SSA_NAME_RANGE_INFO (sprime) + else if (INTEGRAL_TYPE_P (TREE_TYPE (lhs)) + && VN_INFO_RANGE_INFO (lhs) + && ! VN_INFO_RANGE_INFO (sprime) && b == sprime_b) duplicate_ssa_name_range_info (sprime, SSA_NAME_RANGE_TYPE (lhs), - SSA_NAME_RANGE_INFO (lhs)); + VN_INFO_RANGE_INFO (lhs)); } /* Inhibit the use of an inserted PHI on a loop header when -- cgit v1.1