diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2020-01-16 19:20:18 +0000 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2020-01-27 10:53:33 +0000 |
commit | 7974a14692cec3ecafed24bc275df803373f3230 (patch) | |
tree | 0ba0343fa5777489879684973eae41f9dd4fe288 /gcc/dojump.c | |
parent | e97a3063fb1936d6c36eeea720134d5675f73091 (diff) |
dojump: Fix gcc.dg/torture/pr91323.c for aarch64 targets
PR91323 was fixed for x86 and sparc in target code, but aarch64
instead relies on the target-independent comparison splitters.
Since LTGT is an unordered-signalling operation, we should split
it into unordered-signalling operations for any input that could
be NaN, not just inputs that could be signalling NaNs.
2020-01-27 Richard Sandiford <richard.sandiford@arm.com>
gcc/
* dojump.c (split_comparison): Use HONOR_NANS rather than
HONOR_SNANS when splitting LTGT.
Diffstat (limited to 'gcc/dojump.c')
-rw-r--r-- | gcc/dojump.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/dojump.c b/gcc/dojump.c index 7bf578a7178..28b47b7ab6d 100644 --- a/gcc/dojump.c +++ b/gcc/dojump.c @@ -897,7 +897,7 @@ split_comparison (enum rtx_code code, machine_mode mode, return false; case LTGT: /* Do not turn a trapping comparison into a non-trapping one. */ - if (HONOR_SNANS (mode)) + if (HONOR_NANS (mode)) { *code1 = LT; *code2 = GT; |