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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|target                      |tree-optimization
   Target Milestone|---                         |14.0
           Keywords|                            |ice-checking,
                   |                            |ice-on-valid-code
   Last reconfirmed|                            |2023-06-24
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This is a bug in backprop rather than a target issue.

We start with:
  _7 = VIEW_CONVERT_EXPR<vector(4) intD.6>(XMM0_2(D));
  _8 = ABSU_EXPR <_7>;
  _5 = VIEW_CONVERT_EXPR<vector(4) unsigned intD.9>(XMM0_2(D));
  _6 = _5 * _8;
  _3 = _6 * _6;
  _4 = VIEW_CONVERT_EXPR<__m128iD.5706>(_3);


And backprop changes it into:
  _7 = VIEW_CONVERT_EXPR<vector(4) intD.6>(XMM0_2(D));
  _8 = ABSU_EXPR <_7>;
  _5 = VIEW_CONVERT_EXPR<vector(4) unsigned intD.9>(XMM0_2(D));
  _6 = _5 * _7;
  _3 = _6 * _6;
  _4 = VIEW_CONVERT_EXPR<__m128iD.5706>(_3);

But misses the conversion

Reply via email to