[Bug target/105922] autovectorizer does not handle fp exceptions correctly for SVE

2024-02-28 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105922

Andrew Pinski  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #3 from Andrew Pinski  ---
Dup of bug 96373.

*** This bug has been marked as a duplicate of bug 96373 ***

[Bug target/105922] autovectorizer does not handle fp exceptions correctly for SVE

2022-06-14 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105922

Richard Biener  changed:

   What|Removed |Added

   Keywords||wrong-code

--- Comment #2 from Richard Biener  ---
(In reply to Andrew Pinski from comment #1)
> Confirmed. The division should have been predicated on the same as the
> load/store but currently GCC does not do that.
> 
> GCC does not really support looking into fpu status bits or exceptions while
> vectorizing either.

It effectively "supports" it by failing to vectorize when exception state
builtins are used in the vectorized region and otherwise it just accumulates
exception bits (but it doesn't support in-order traps if you enable exceptions
to trap).

Note there's a bit of confusion as to what exactly controls FP exception
bit correctness and the documentation should probably be clarified.

[Bug target/105922] autovectorizer does not handle fp exceptions correctly for SVE

2022-06-12 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105922

Andrew Pinski  changed:

   What|Removed |Added

Summary|AArch64 SVE instruction |autovectorizer does not
   |generated with all SIMD |handle fp exceptions
   |lane active and zero-divide |correctly for SVE
   |exception flag raised   |
 Status|UNCONFIRMED |NEW
 Ever confirmed|0   |1
   Last reconfirmed||2022-06-12

--- Comment #1 from Andrew Pinski  ---
Confirmed. The division should have been predicated on the same as the
load/store but currently GCC does not do that.

GCC does not really support looking into fpu status bits or exceptions while
vectorizing either.