https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87871

--- Comment #51 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
(In reply to Segher Boessenkool from comment #50)
> The insn is
> 
> (insn 7 3 8 2 (parallel [
>             (set (reg:CC 100 cc)
>                 (compare:CC (reg:SI 0 r0 [116])
>                     (const_int 0 [0])))
>             (set (reg/v:SI 4 r4 [orig:112 a ] [112])
>                 (reg:SI 0 r0 [116]))
>         ]) "ira-shrinkwrap-prep-1.c":17:6 188 {*movsi_compare0}
>      (nil))
> 
> and that isn't split, and then prepare_shrink_wrap gives up on it.

In the more general case splitting this would produce worse code, not better,
since then we'd end up with two instructions rather than one.

Reply via email to