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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu.org

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
I think this is a pass ordering issue between complex lowering, forwprop and
powcabs.

This is also a missed CSE opportunity in PREs VN instance:

  _5 = REALPART_EXPR <(*a_9(D))[_1]>;
  _2 = (*a_9(D))[_1];
  _4 = IMAGPART_EXPR <(*a_9(D))[_1]>;
  cabs_11 = REALPART_EXPR <_2>;

here the realpart of _2 should have been CSEd to _5.

I wonder if we shouldn't do CABS expansion during complex lowering instead?
Both are technically to get closer to the target.

I'm putting it on my TODO but I don't expect to have cycles to look at
any of the above.

Reply via email to