https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68367
Bug ID: 68367 Summary: ICE in vectorizable_load, at tree-vect-stmts.c:6711 Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: ipa Assignee: unassigned at gcc dot gnu.org Reporter: clyon at gcc dot gnu.org Target Milestone: --- Created attachment 36718 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36718&action=edit matmul_i4.i Since r230311: PR ipa/68311 * ipa-icf.c (sem_item_optimizer::traverse_congruence_split): Replace ctor with auto_vec and initialization in a loop. I noticed an ICE in vectorizable_load, at tree-vect-stmts.c:6711 when compiling libgfortran (libgfortran/generated/matmul_i4.c). I observed this when gcc is configured with: --target=armeb-none-linux-gnueabihf --with-float=hard --with-mode=arm --with-cpu=cortex-a9 --with-fpu=neon Using --target=arm-none-linux-gnueabihf works. The backtrace is: /home/christophe.lyon/src/GCC/sources/gcc-fsf/trunk-for-crontab/libgfortran/generated/matmul_i4.c: In function 'matmul_i4': /home/christophe.lyon/src/GCC/sources/gcc-fsf/trunk-for-crontab/libgfortran/generated/matmul_i4.c:79:1: internal compiler error: in vectorizable_load, at tree-vect-stmts.c:6711 matmul_i4 (gfc_array_i4 * const restrict retarray, ^~~~~~~~~ 0xfeb563 vectorizable_load /home/christophe.lyon/src/GCC/sources/gcc-fsf/trunk-for-crontab/gcc/tree-vect-stmts.c:6711 0xfef559 vect_transform_stmt(gimple*, gimple_stmt_iterator*, bool*, _slp_tree*, _slp_instance*) /home/christophe.lyon/src/GCC/sources/gcc-fsf/trunk-for-crontab/gcc/tree-vect-stmts.c:8002 0x10074d5 vect_transform_loop(_loop_vec_info*) /home/christophe.lyon/src/GCC/sources/gcc-fsf/trunk-for-crontab/gcc/tree-vect-loop.c:6793 0x101e3ef vectorize_loops() /home/christophe.lyon/src/GCC/sources/gcc-fsf/trunk-for-crontab/gcc/tree-vectorizer.c:548 0xf019ab execute /home/christophe.lyon/src/GCC/sources/gcc-fsf/trunk-for-crontab/gcc/tree-ssa-loop.c:273 Please submit a full bug report, Using options -ftree-vectorize -O2 is sufficient to create the ICE.