diff options
author | Richard Biener <rguenth@gcc.gnu.org> | 2018-11-05 14:55:53 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2018-11-05 14:55:53 +0000 |
commit | 733441e2e1d207a1ab0a4a255dea03ee7c6c8774 (patch) | |
tree | 62bd882842e65e9ca1e9b1bfc1b94458f8753104 /gcc/tree-ssa-loop-manip.h | |
parent | 546f678c5cc27adf9ca02cbcc578b2ddaffc0d81 (diff) | |
download | gcc-733441e2e1d207a1ab0a4a255dea03ee7c6c8774.zip gcc-733441e2e1d207a1ab0a4a255dea03ee7c6c8774.tar.gz gcc-733441e2e1d207a1ab0a4a255dea03ee7c6c8774.tar.bz2 |
re PR tree-optimization/87873 (ICE: verify_gimple failed (error: incompatible types in PHI argument 0))
2018-11-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/87873
* tree-ssa-loop-manip.h (split_loop_exit_edge): Add copy_constants_p
argument.
* tree-ssa-loop-manip.c (split_loop_exit_edge): Likewise.
* tree-vect-loop.c (vect_transform_loop): When splitting the
loop exit also create forwarder PHIs for constants.
* tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges):
Handle constant to_arg, add extra checking we match up the correct
PHIs.
* gcc.dg/pr87873.c: New testcase.
From-SVN: r265812
Diffstat (limited to 'gcc/tree-ssa-loop-manip.h')
-rw-r--r-- | gcc/tree-ssa-loop-manip.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-ssa-loop-manip.h b/gcc/tree-ssa-loop-manip.h index 390ac6f..ddda5cf 100644 --- a/gcc/tree-ssa-loop-manip.h +++ b/gcc/tree-ssa-loop-manip.h @@ -37,7 +37,7 @@ checking_verify_loop_closed_ssa (bool verify_ssa_p, struct loop *loop = NULL) verify_loop_closed_ssa (verify_ssa_p, loop); } -extern basic_block split_loop_exit_edge (edge); +extern basic_block split_loop_exit_edge (edge, bool = false); extern basic_block ip_end_pos (struct loop *); extern basic_block ip_normal_pos (struct loop *); extern void standard_iv_increment_position (struct loop *, |