https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78445
Uroš Bizjak <ubizjak at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2016-11-21 Component|target |middle-end Target Milestone|--- |7.0 Ever confirmed|0 |1 --- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> --- Confirmed, middle-end tries (and fails) to expand scalar maskstore optab. (gdb) bt #0 internal_error (gmsgid=0x2232ce5 "in %s, at %s:%d") at ../../git/gcc/gcc/diagnostic.c:1379 #1 0x0000000001a44c9b in fancy_abort (file=0x1b97c60 "../../git/gcc/gcc/optabs.c", line=7013, function=0x1b9800d <maybe_gen_insn(insn_code, unsigned int, expand_operand*)::__FUNCTION__> "maybe_gen_insn") at ../../git/gcc/gcc/diagnostic.c:1447 #2 0x0000000000cc9110 in maybe_gen_insn (icode=CODE_FOR_nothing, nops=3, ops=0x7fffffffc310) at ../../git/gcc/gcc/optabs.c:7013 #3 0x0000000000cc9651 in maybe_expand_insn (icode=CODE_FOR_nothing, nops=3, ops=0x7fffffffc310) at ../../git/gcc/gcc/optabs.c:7057 #4 0x0000000000cc969b in expand_insn (icode=CODE_FOR_nothing, nops=3, ops=0x7fffffffc310) at ../../git/gcc/gcc/optabs.c:7088 #5 0x0000000000b6e7fe in expand_mask_store_optab_fn (stmt=0x2aaaae90bb28, optab=maskstore_optab) at ../../git/gcc/gcc/internal-fn.c:2193 #6 0x0000000000b6e820 in expand_MASK_STORE (fn=IFN_MASK_STORE, stmt=0x2aaaae90bb28) at ../../git/gcc/gcc/internal-fn.def:91 #7 0x0000000000b6509b in expand_internal_call (fn=IFN_MASK_STORE, stmt=0x2aaaae90bb28) at ../../git/gcc/gcc/internal-fn.c:2649 #8 0x0000000000b6511c in expand_internal_call (stmt=0x2aaaae90bb28) at ../../git/gcc/gcc/internal-fn.c:2657 (gdb) f 5 #5 0x0000000000b6e7fe in expand_mask_store_optab_fn (stmt=0x2aaaae90bb28, optab=maskstore_optab) at ../../git/gcc/gcc/internal-fn.c:2193 2193 3, ops); (gdb) list 2188 create_fixed_operand (&ops[0], mem); 2189 create_input_operand (&ops[1], reg, TYPE_MODE (type)); 2190 create_input_operand (&ops[2], mask, TYPE_MODE (TREE_TYPE (maskt))); 2191 expand_insn (convert_optab_handler (optab, TYPE_MODE (type), 2192 TYPE_MODE (TREE_TYPE (maskt))), 2193 3, ops); 2194 } 2195 2196 static void 2197 expand_ABNORMAL_DISPATCHER (internal_fn, gcall *) (gdb) p debug_rtx (mem) (mem:SI (reg/v/f:DI 89 [ nz ]) [1 *nz_8+0 S4 A32]) $1 = void (gdb) p debug_rtx (reg) (reg:SI 88 [ prephitmp_5 ]) $2 = void (gdb) p debug_rtx (mask) (reg:QI 95) $3 = void