aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTamar Christina <tamar.christina@arm.com>2017-08-01 09:56:31 +0000
committerTamar Christina <tnfchris@gcc.gnu.org>2017-08-01 09:56:31 +0000
commit35c38fa674ab01152c743f421226f3cbc829cd94 (patch)
tree62ba8f71dcccacf4a6fa226d0f40947acf6d4be5 /gcc
parent5e19d4371e4e2c7e8251f9f560abe4c43208e63a (diff)
downloadgcc-35c38fa674ab01152c743f421226f3cbc829cd94.zip
gcc-35c38fa674ab01152c743f421226f3cbc829cd94.tar.gz
gcc-35c38fa674ab01152c743f421226f3cbc829cd94.tar.bz2
2017-08-01 Tamar Christina <tamar.christina@arm.com>
* config/aarch64/aarch64.c (aarch64_can_const_movi_rtx_p): Move 0 check. From-SVN: r250766
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/aarch64/aarch64.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 10c10c7..aba2550 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2017-08-01 Tamar Christina <tamar.christina@arm.com>
+
+ * config/aarch64/aarch64.c
+ (aarch64_can_const_movi_rtx_p): Move 0 check.
+
2017-08-01 Bin Cheng <bin.cheng@arm.com>
* tree.h (POINTER_TYPE_OVERFLOW_UNDEFINED): Delete.
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 055ebaf..5a2ad7e 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -4787,10 +4787,6 @@ aarch64_can_const_movi_rtx_p (rtx x, machine_mode mode)
if (!TARGET_SIMD)
return false;
- /* We make a general exception for 0. */
- if (aarch64_float_const_zero_rtx_p (x))
- return true;
-
machine_mode vmode, imode;
unsigned HOST_WIDE_INT ival;
@@ -4800,6 +4796,10 @@ aarch64_can_const_movi_rtx_p (rtx x, machine_mode mode)
if (!aarch64_reinterpret_float_as_int (x, &ival))
return false;
+ /* We make a general exception for 0. */
+ if (aarch64_float_const_zero_rtx_p (x))
+ return true;
+
imode = int_mode_for_mode (mode);
}
else if (GET_CODE (x) == CONST_INT