[Bug rtl-optimization/82058] ICE in process_alt_operands, at lra-constraints.c:2954 (after adding early clobber in .md)
vries at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Aug 31 16:46:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82058
--- Comment #2 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #0)
> At r251537, with this patch:
> ...
> diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
> index d61afcf..a42358d 100644
> --- a/gcc/config/i386/sse.md
> +++ b/gcc/config/i386/sse.md
> @@ -1741,7 +1741,7 @@
> (set_attr "mode" "<MODE>")])
>
> (define_insn "srcp14<mode>_mask"
> - [(set (match_operand:VF_128 0 "register_operand" "=v")
> + [(set (match_operand:VF_128 0 "register_operand" "=&v")
> (vec_merge:VF_128
> (vec_merge:VF_128
> (unspec:VF_128
> ...
>
Written to make it easy to reproduce an ICE encountered for target gcn on
branch gcn for this insn from gcn-valu.md:
...
(define_insn "*mov<mode>"
[(set (match_operand:VEC_2REG_MODE 0 "register_operand" "=&v")
(vec_merge:VEC_2REG_MODE
(match_operand:VEC_2REG_MODE 1 "gcn_alu_operand" "0vB")
(match_operand:VEC_2REG_MODE 3 "gcn_register_or_unspec_operand"
"0U")
(match_operand:DI 2 "gcn_exec_reg_operand" "e")))]
"!memory_operand (operands[0], VOIDmode) || register_operand (operands[1],
VOIDmode)"
"v_mov_b32\t%L0, %L1\n\tv_mov_b32\t%H0, %H1"
[(set_attr "type" "vop1")
(set_attr "mode" "<MODE>")])
...
More information about the Gcc-bugs
mailing list