diff options
author | Xi Ruoyao <xry111@xry111.site> | 2022-09-24 20:47:22 +0800 |
---|---|---|
committer | Xi Ruoyao <xry111@xry111.site> | 2022-09-28 17:55:01 +0800 |
commit | b48d7ff3570fa0ebe7790275cf020d8885120338 (patch) | |
tree | 373e4a0e2d5e8b22fb5c5f7a4f33eb8304ad61b4 /gcc/cp/tree.cc | |
parent | 9a8212db2dd8373f5649ccd21028edd14303eb82 (diff) | |
download | gcc-b48d7ff3570fa0ebe7790275cf020d8885120338.zip gcc-b48d7ff3570fa0ebe7790275cf020d8885120338.tar.gz gcc-b48d7ff3570fa0ebe7790275cf020d8885120338.tar.bz2 |
LoongArch: Use UNSPEC for fmin/fmax RTL pattern [PR105414]
I made a mistake defining fmin/fmax RTL patterns in r13-2085: I used
smin and smax in the definition mistakenly. This causes the optimizer
to perform constant folding as if fmin/fmax was "really" smin/smax
operations even with -fsignaling-nans. Then pr105414.c fails.
We don't have fmin/fmax RTL codes for now (PR107013) so we can only use
an UNSPEC for fmin and fmax patterns.
gcc/ChangeLog:
PR tree-optimization/105414
* config/loongarch/loongarch.md (UNSPEC_FMAX): New unspec.
(UNSPEC_FMIN): Likewise.
(fmax<mode>3): Use UNSPEC_FMAX instead of smax.
(fmin<mode>3): Use UNSPEC_FMIN instead of smin.
Diffstat (limited to 'gcc/cp/tree.cc')
0 files changed, 0 insertions, 0 deletions