https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124002
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Or r16-7241-g075aadae398431b23d34dfc7204e297b8676dd59 or r16-7304-gbcdc17211a70f290d46e5d10164c4bc776a89d1a or r16-7353-gbd67b5a8c90194f7499981bbbc247fd45f8de6b9 The widening_mul changes are: # _6 = PHI <0.0(2), sigmoid_x.0_3(3)> - # .MEM_4 = VDEF <.MEM_2(D)> - _1 = pow (_6, 2.0e+0); - _5 = _6 - _1; - # VUSE <.MEM_4> + _7 = -_6; + _5 = .FNMA (_6, _6, _6); + # VUSE <_4> return _5; so pow had vops before but was removed without the vdef being adjusted. And I wonder if it is valid at all given that pow can change errno and the new code will not.
