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

Reply via email to