https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86123
Bug ID: 86123 Summary: [8/9 Regression] ICE in prepare_cmp_insn, at optabs.c:3967 Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Introduced between 20170924 and 20171008, at -O[gs123] : $ cat z1.c _Bool f1(_Complex unsigned x, _Complex unsigned y) { _Complex unsigned t1 = x / y; _Bool t2 = (t1 != 0); return t2; } _Bool f2(_Complex unsigned x, _Complex unsigned y) { _Complex unsigned t1 = x / y; _Bool t2 = (t1 == 0); return t2; } $ gcc-8-20170924 -c z1.c -O2 $ $ gcc-9-20180610 -c z1.c -O2 during RTL pass: expand z1.c: In function 'f1': z1.c:5:10: internal compiler error: in prepare_cmp_insn, at optabs.c:3967 return t2; ^~ 0x9b3ae3 prepare_cmp_insn ../../gcc/optabs.c:3967 0x9b3b65 emit_cmp_and_jump_insns(rtx_def*, rtx_def*, rtx_code, rtx_def*, machine_mode, int, rtx_def*, profile_probability) ../../gcc/optabs.c:4113 0x76decb do_compare_rtx_and_jump(rtx_def*, rtx_def*, rtx_code, int, machine_mode, rtx_def*, rtx_code_label*, rtx_code_label*, profile_probability) ../../gcc/dojump.c:1164 0x7e89a2 emit_store_flag_force(rtx_def*, rtx_code, rtx_def*, rtx_def*, machine_mode, int, int) ../../gcc/expmed.c:6149 0x805c7f do_store_flag ../../gcc/expr.c:11582 0x805c7f expand_expr_real_2(separate_ops*, rtx_def*, machine_mode, expand_modifier) ../../gcc/expr.c:9299 0x7f6ef4 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) ../../gcc/expr.c:9828 0x7052ce expand_expr ../../gcc/expr.h:279 0x7052ce expand_return ../../gcc/cfgexpand.c:3504 0x7052ce expand_gimple_stmt_1 ../../gcc/cfgexpand.c:3607 0x7052ce expand_gimple_stmt ../../gcc/cfgexpand.c:3734 0x706243 expand_gimple_basic_block ../../gcc/cfgexpand.c:5762 0x70b5e6 execute ../../gcc/cfgexpand.c:6365