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

--- Comment #2 from Drea Pinski <pinskia at gcc dot gnu.org> ---
The difference is:

broken:
```
  vect_uCenter_15.5_27 = _26 * { 5.0e-1, 5.0e-1, 5.0e-1, 5.0e-1 };
  _28 = VEC_PERM_EXPR <vect_uCenter_15.5_27, vect_uCenter_15.5_27, { 1, 0, 3, 2
}>;
  vect__25.6_29 = .VEC_FMADDSUB (vect_uCenter_15.5_27, vect_uCenter_15.5_27,
_28);
```
vs working:
```
  vect_uCenter_15.5_27 = _26 * { 5.0e-1, 5.0e-1, 5.0e-1, 5.0e-1 };
  _29 = VEC_PERM_EXPR <vect_uCenter_15.5_27, vect_uCenter_15.5_27, { 1, 0, 3, 2
}>;
  vect__25.6_30 = .VEC_ADDSUB (vect_uCenter_15.5_27, _29);
```

That is the broken is `_27*_27+-_28` vs `_27+-_29` (_28/_29 are the same).

Reply via email to