]> git.ipfire.org Git - thirdparty/gcc.git/commit
s390x: Fix fmin/fmax patterns
authorJuergen Christ <jchrist@linux.ibm.com>
Mon, 15 Sep 2025 10:13:22 +0000 (12:13 +0200)
committerJuergen Christ <jchrist@linux.ibm.com>
Fri, 10 Oct 2025 13:16:51 +0000 (15:16 +0200)
commit05e1cda2bd6ef370de19599d174c1146bd730ccf
tree7f30e5d50b43c114c58c017ce545e8bf9a0e2fda
parent08970b2cb27931cf7e28842948b8a96a777be2a3
s390x: Fix fmin/fmax patterns

s390x floating point minimum and maximum functions unfortunately do
not canonicalize NaNs.  Hence, test pr105414.c fails since
c476f554e3f.  Fix this by only allowing fmin/fmax pattern if signaling
NaNs are disabled.

gcc/ChangeLog:

* config/s390/vector.md (fmax<mode>3): Restrict to no trapping
math.
(fmin<mode>3): Ditto.

gcc/testsuite/ChangeLog:

* gcc.target/s390/fminmax-1.c: Disable for signaling NaNs.
* gcc.target/s390/fminmax-2.c: Ditto.
* gcc.target/s390/vector/reduc-minmax-1.c: Ditto.

Signed-off-by: Juergen Christ <jchrist@linux.ibm.com>
gcc/config/s390/vector.md
gcc/testsuite/gcc.target/s390/fminmax-1.c
gcc/testsuite/gcc.target/s390/fminmax-2.c
gcc/testsuite/gcc.target/s390/vector/reduc-minmax-1.c