aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@linaro.org>2018-01-11 13:11:12 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2018-01-11 13:11:12 +0000
commit0d0e0188d80f337d2d997ac787b62cc7e8387612 (patch)
tree72eed5196be40706045867aaf158fcb03671e5a7
parentf3bd950563d0a7ed8edd7231fc8f19a7e3eaf7bd (diff)
downloadgcc-0d0e0188d80f337d2d997ac787b62cc7e8387612.zip
gcc-0d0e0188d80f337d2d997ac787b62cc7e8387612.tar.gz
gcc-0d0e0188d80f337d2d997ac787b62cc7e8387612.tar.bz2
[AArch64] Extra scalar_float_mode patch
In preparation for the switch to NUM_POLY_INT_COEFFS==2. 2018-01-11 Richard Sandiford <richard.sandiford@linaro.org> gcc/ * config/aarch64/aarch64.c (aarch64_reinterpret_float_as_int): Use scalar_float_mode. From-SVN: r256531
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/aarch64/aarch64.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8654289..fbd23bf 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2018-01-11 Richard Sandiford <richard.sandiford@linaro.org>
+ * config/aarch64/aarch64.c (aarch64_reinterpret_float_as_int):
+ Use scalar_float_mode.
+
+2018-01-11 Richard Sandiford <richard.sandiford@linaro.org>
+
* config/aarch64/aarch64-simd.md
(aarch64_fml<f16mac1>l<f16quad>_low<mode>): Avoid GET_MODE_NUNITS.
(aarch64_fml<f16mac1>l<f16quad>_high<mode>): Likewise.
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 0aea458..d8ae9d2 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -4806,9 +4806,9 @@ aarch64_reinterpret_float_as_int (rtx value, unsigned HOST_WIDE_INT *intval)
return true;
}
- machine_mode mode = GET_MODE (value);
+ scalar_float_mode mode;
if (GET_CODE (value) != CONST_DOUBLE
- || !SCALAR_FLOAT_MODE_P (mode)
+ || !is_a <scalar_float_mode> (GET_MODE (value), &mode)
|| GET_MODE_BITSIZE (mode) > HOST_BITS_PER_WIDE_INT
/* Only support up to DF mode. */
|| GET_MODE_BITSIZE (mode) > GET_MODE_BITSIZE (DFmode))