https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119092
Matthias Kretz (Vir) <mkretz at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mkretz at gcc dot gnu.org
--- Comment #8 from Matthias Kretz (Vir) <mkretz at gcc dot gnu.org> ---
I think the "assume there's a library implementation" (if the backend doesn't
have a better answer) approach is sensible.
The ABI could default to the glibc vector ABI. We also already have
-mveclibabi.
On the question of ABI, the x86_64 psABI allows returning in XMM0 *and* XMM1,
and I would really like to be able to leverage that in math calls. Many math
functions can benefit (in throughput / IPC) from being called with two vector
inputs and two vector outputs. I have experimented with doing that and
preliminary experiments have shown some speedup from fusing two iterations of a
math function.
On reductions, I agree they are probably sufficiently different. I think these
should typically not turn into function calls.
Both, element-wise math and vector reductions are necessary for making the
std::simd implementation become what it's supposed to be: Communicate intent to
the compiler, rather than communicating instruction sequences.