https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85077
--- Comment #8 from Matthias Kretz <kretz at kde dot org> --- Thanks! FWIW my abs implementation now uses: template <class T, size_t N> [[gnu::optimize("finite-math-only,no-signed-zeros")]] constexpr Storage<T, N> abs(Storage<T, N> v) { return v.d < 0 ? -v.d : v.d; }