aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-loop-manip.c
diff options
context:
space:
mode:
authorienkovich <ienkovich@138bc75d-0d04-0410-961f-82ee72b054a4>2015-07-23 11:13:00 +0000
committerienkovich <ienkovich@138bc75d-0d04-0410-961f-82ee72b054a4>2015-07-23 11:13:00 +0000
commit480233e783e450444f97f9631ea2d1ab5a3174a8 (patch)
tree1de329752b88f9cd2f13eaf58dc596d6a7efa8cb /gcc/tree-vect-loop-manip.c
parentddb5dd6d66acc530e31dfda32129ca3c9c1ad931 (diff)
gcc/
PR tree-optimization/66926,66951 * tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Delete INNER_LOOP and fix up condition for renaming virtual operands. gcc/testsuite/ PR tree-optimization/66926,66951 * gcc.dg/vect/pr66951.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226103 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-loop-manip.c')
-rw-r--r--gcc/tree-vect-loop-manip.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/gcc/tree-vect-loop-manip.c b/gcc/tree-vect-loop-manip.c
index bafd1297488..efcc4bb0336 100644
--- a/gcc/tree-vect-loop-manip.c
+++ b/gcc/tree-vect-loop-manip.c
@@ -1178,7 +1178,6 @@ slpeel_tree_peel_loop_to_edge (struct loop *loop, struct loop *scalar_loop,
int bound1, int bound2)
{
struct loop *new_loop = NULL, *first_loop, *second_loop;
- struct loop *inner_loop = NULL;
edge skip_e;
tree pre_condition = NULL_TREE;
basic_block bb_before_second_loop, bb_after_second_loop;
@@ -1199,9 +1198,6 @@ slpeel_tree_peel_loop_to_edge (struct loop *loop, struct loop *scalar_loop,
if (!slpeel_can_duplicate_loop_p (loop, e))
return NULL;
- if (loop->inner)
- inner_loop = loop->inner;
-
/* We might have a queued need to update virtual SSA form. As we
delete the update SSA machinery below after doing a regular
incremental SSA update during loop copying make sure we don't
@@ -1237,9 +1233,8 @@ slpeel_tree_peel_loop_to_edge (struct loop *loop, struct loop *scalar_loop,
add_phi_arg (new_phi, vop, exit_e, UNKNOWN_LOCATION);
gimple_phi_set_result (new_phi, new_vop);
FOR_EACH_IMM_USE_STMT (stmt, imm_iter, vop)
- if (stmt != new_phi && gimple_bb (stmt) != loop->header
- /* Do not rename PHI arguments in inner-loop. */
- && (!inner_loop || gimple_bb (stmt) != inner_loop->header))
+ if (stmt != new_phi
+ && !flow_bb_inside_loop_p (loop, gimple_bb (stmt)))
FOR_EACH_IMM_USE_ON_STMT (use_p, imm_iter)
SET_USE (use_p, new_vop);
}