https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97104
--- Comment #2 from Alex Coplan <acoplan at gcc dot gnu.org> --- For the related testcase: int a, c, d, e; long b; void f() { short g = a; for (; c; c++) { b &= a == 0 ? 1 : g / a; d |= e; } } with the same options on AArch64, we ICE with a similar (but not identical) backtrace: during GIMPLE pass: vect test.c: In function 'f': test.c:3:6: internal compiler error: in vect_get_loop_mask, at tree-vect-loop.c:8868 3 | void f() { | ^ 0x10a45cc vect_get_loop_mask(gimple_stmt_iterator*, auto_vec<rgroup_controls, 0ul>*, unsigned int, tree_node*, unsigned int) /home/alecop01/toolchain/src/gcc/gcc/tree-vect-loop.c:8867 0x1085843 vectorizable_condition /home/alecop01/toolchain/src/gcc/gcc/tree-vect-stmts.c:10195 0x109b040 vect_transform_stmt(vec_info*, _stmt_vec_info*, gimple_stmt_iterator*, _slp_tree*, _slp_instance*) /home/alecop01/toolchain/src/gcc/gcc/tree-vect-stmts.c:10831 0x10a1eb3 vect_transform_loop_stmt /home/alecop01/toolchain/src/gcc/gcc/tree-vect-loop.c:9053 0x10bee28 vect_transform_loop(_loop_vec_info*, gimple*) /home/alecop01/toolchain/src/gcc/gcc/tree-vect-loop.c:9475 0x10eb324 try_vectorize_loop_1 /home/alecop01/toolchain/src/gcc/gcc/tree-vectorizer.c:1091 0x10eba51 try_vectorize_loop /home/alecop01/toolchain/src/gcc/gcc/tree-vectorizer.c:1148 0x10ebe2b vectorize_loops() /home/alecop01/toolchain/src/gcc/gcc/tree-vectorizer.c:1229 0xf7843d execute /home/alecop01/toolchain/src/gcc/gcc/tree-ssa-loop.c:414 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.