https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97761
Bug ID: 97761 Summary: [11 Regression] ICE in vectorizable_live_operation, at tree-vect-loop.c:8689 Product: gcc Version: 11.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: powerpc-*-linux-gnu Created attachment 49522 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49522&action=edit Testcase gfortran-11.0.0-alpha20201108 snapshot (g:b642fca1c31b2e2175e0860daf32b4ee0d918085) ICEs when compiling the attached testcase w/ -mvsx -O1 -ftree-slp-vectorize -fvect-cost-model=unlimited: % powerpc-e300c3-linux-gnu-gfortran-11.0.0 -mvsx -O1 -ftree-slp-vectorize -fvect-cost-model=unlimited -c ar6dubil.f90 during GIMPLE pass: slp ar6dubil.f90:11:15: 11 | subroutine ni (ps, bf) | ^ internal compiler error: in vectorizable_live_operation, at tree-vect-loop.c:8689 0x6f1f2c vectorizable_live_operation(vec_info*, _stmt_vec_info*, gimple_stmt_iterator*, _slp_tree*, _slp_instance*, int, bool, vec<stmt_info_for_cost, va_heap, vl_ptr>*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-loop.c:8689 0x10b8087 can_vectorize_live_stmts /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-stmts.c:10510 0x10df928 vect_transform_stmt(vec_info*, _stmt_vec_info*, gimple_stmt_iterator*, _slp_tree*, _slp_instance*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-stmts.c:10894 0x1111726 vect_schedule_slp_node /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:5437 0x111d0bc vect_schedule_scc /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:5599 0x111ce2f vect_schedule_scc /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:5580 0x111ce2f vect_schedule_scc /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:5580 0x111ce2f vect_schedule_scc /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:5580 0x111d40c vect_schedule_slp(vec_info*, vec<_slp_instance*, va_heap, vl_ptr>) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:5715 0x111ebba vect_slp_region /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:4264 0x111ebba vect_slp_bbs /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:4374 0x111fa9c vect_slp_function(function*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vect-slp.c:4460 0x112208b execute /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201108/work/gcc-11-20201108/gcc/tree-vectorizer.c:1437