diff options
author | liuhongt <hongtao.liu@intel.com> | 2021-11-08 09:32:17 +0800 |
---|---|---|
committer | liuhongt <hongtao.liu@intel.com> | 2021-11-08 09:34:35 +0800 |
commit | a1f7ead09cd41d32e2feffff902eb32e587c36e7 (patch) | |
tree | d10f0a792bd886eaa664f6f944d72e46ebd6ef3f /gcc/tree-vectorizer.h | |
parent | 2ad1e8081f4797a99a96b513ffe14c7305e9b3d8 (diff) | |
download | gcc-a1f7ead09cd41d32e2feffff902eb32e587c36e7.zip gcc-a1f7ead09cd41d32e2feffff902eb32e587c36e7.tar.gz gcc-a1f7ead09cd41d32e2feffff902eb32e587c36e7.tar.bz2 |
Add !HONOR_SNANS to simplifcation: (trunc)copysign((extend)a, (extend)b) to copysign (a, b).
> Note that this is not safe with -fsignaling-nans, so needs to be disabled
> for that option (if there isn't already logic somewhere with that effect),
> because the extend will convert a signaling NaN to quiet (raising
> "invalid"), but copysign won't, so this transformation could result in a
> signaling NaN being wrongly returned when the original code would never
> have returned a signaling NaN.
>
> --
> Joseph S. Myers
> joseph@codesourcery.com
gcc/ChangeLog
PR target/102464
* match.pd (Simplifcation (trunc)copysign((extend)a, (extend)b)
to .COPYSIGN (a, b)): Add !HONOR_SNANS.
Diffstat (limited to 'gcc/tree-vectorizer.h')
0 files changed, 0 insertions, 0 deletions