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

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #3)
> 
> I think both:
>   /* -A - 1 -> ~A */
>   (simplify
>    (minus (convert? (negate @0)) integer_each_onep)
>    (if (!TYPE_OVERFLOW_TRAPS (type)
>         && tree_nop_conversion_p (type, TREE_TYPE (@0)))
>     (bit_not (convert @0))))
> 
>   /* -1 - A -> ~A */
>   (simplify
>    (minus integer_all_onesp @0)
>    (bit_not @0))
> needs to punt for COMPLEX_TYPE.

Yes agreed. In fact that is basically what I wrote to the original patch on the
mailing list a few minutes ago.

Reply via email to