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

Marc Glisse <glisse at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|libstdc++                   |tree-optimization

--- Comment #3 from Marc Glisse <glisse at gcc dot gnu.org> ---
That's not a libstdc++ issue, more likely tree-optimization, rtl-optimization
or target. The compiler already notices that the if/return construct is
equivalent to the ?: one (ifcvt). And the loop is vectorized (cmpltps+andnps).
Now gimple passes and the target (or some RTL pass) don't seem to agree on when
it is safe to replace ?: with MAX (or maybe the target is inconsistent between
scalars and vectors).

Reply via email to