https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68134
Bug ID: 68134 Summary: vector-of-one-int64_t comparison ICE on aarch64-none-elf Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: jgreenhalgh at gcc dot gnu.org Target Milestone: --- Created attachment 36605 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36605&action=edit Failing testcase After r229128 I get an ICE at O0 on aarch64 targets when compiling the attached testcase: $ gcc random-test.c -O0 In file included from random-test.c:1:0: ..../build-aarch64-none-elf/install/lib/gcc/aarch64-none-elf/6.0.0/include/arm_neon.h: In function 'foo': ..../build-aarch64-none-elf/install/lib/gcc/aarch64-none-elf/6.0.0/include/arm_neon.h:11941:28: internal compiler error: in prepare_cmp_insn, at optabs.c:3820 return (uint64x1_t) (__a == __b); ^ 0x996e40 prepare_cmp_insn ..../src/gcc/gcc/optabs.c:3820 0x997396 emit_cmp_and_jump_insns(rtx_def*, rtx_def*, rtx_code, rtx_def*, machine_mode, int, rtx_def*, int) ..../src/gcc/gcc/optabs.c:3967 0x72e934 do_compare_rtx_and_jump(rtx_def*, rtx_def*, rtx_code, int, machine_mode, rtx_def*, rtx_code_label*, rtx_code_label*, int) ..../src/gcc/gcc/dojump.c:1149 0x72f52a do_compare_and_jump ..../src/gcc/gcc/dojump.c:1228 0x73134f do_jump_1(tree_code, tree_node*, tree_node*, rtx_code_label*, rtx_code_label*, int) ..../src/gcc/gcc/dojump.c:240 0x731c68 jumpifnot_1(tree_code, tree_node*, tree_node*, rtx_code_label*, int) ..../src/gcc/gcc/dojump.c:148 0x7c6e47 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode, expand_modifier) ..../src/gcc/gcc/expr.c:9030 0x6c5ad9 expand_gimple_stmt_1 ..../src/gcc/gcc/cfgexpand.c:3617 0x6c5ad9 expand_gimple_stmt ..../src/gcc/gcc/cfgexpand.c:3677 0x6c8316 expand_gimple_basic_block ..../src/gcc/gcc/cfgexpand.c:5681 0x6cb8c4 execute ..../src/gcc/gcc/cfgexpand.c:6293 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions.