aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Schlumberger-Socha <chris.schlumberger-socha@arm.com>2013-05-23 14:16:50 +0000
committerMarcus Shawcroft <mshawcroft@gcc.gnu.org>2013-05-23 14:16:50 +0000
commit4e1949126511bce6782106460e7df1907eeea1e2 (patch)
treef5572cb8f722fc732a77621f87002a38b956b1fe
parent83f8c41484c57a38a8749128ecdceb8dd963a69c (diff)
downloadgcc-4e1949126511bce6782106460e7df1907eeea1e2.zip
gcc-4e1949126511bce6782106460e7df1907eeea1e2.tar.gz
gcc-4e1949126511bce6782106460e7df1907eeea1e2.tar.bz2
[AArch64] Remove Usa constraint.
Co-Authored-By: Marcus Shawcroft <marcus.shawcroft@arm.com> From-SVN: r199260
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/aarch64/aarch64.md4
-rw-r--r--gcc/config/aarch64/constraints.md5
-rw-r--r--gcc/doc/md.texi3
4 files changed, 9 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3ba9d4e..4db76e3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,6 +1,13 @@
2013-05-23 Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
Marcus Shawcroft <marcus.shawcroft@arm.com>
+ * config/aarch64/aarch64.md (*movdi_aarch64): Replace Usa with S.
+ * config/aarch64/constraints.md (Usa): Remove.
+ * doc/md.texi (AArch64 Usa): Remove.
+
+2013-05-23 Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
+ Marcus Shawcroft <marcus.shawcroft@arm.com>
+
* config/aarch64/aarch64-protos.h (aarch64_mov_operand_p): Define.
* config/aarch64/aarch64.c (aarch64_mov_operand_p): Define.
* config/aarch64/predicates.md (aarch64_const_address): Remove.
diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
index b27bcda..e1ec48f 100644
--- a/gcc/config/aarch64/aarch64.md
+++ b/gcc/config/aarch64/aarch64.md
@@ -829,8 +829,8 @@
)
(define_insn "*movdi_aarch64"
- [(set (match_operand:DI 0 "nonimmediate_operand" "=r,k,r,r,r,*w,m, m,r, r, *w, r,*w,w")
- (match_operand:DI 1 "aarch64_mov_operand" " r,r,k,N,m, m,rZ,*w,Usa,Ush,rZ,*w,*w,Dd"))]
+ [(set (match_operand:DI 0 "nonimmediate_operand" "=r,k,r,r,r,*w,m, m,r,r, *w, r,*w,w")
+ (match_operand:DI 1 "aarch64_mov_operand" " r,r,k,N,m, m,rZ,*w,S,Ush,rZ,*w,*w,Dd"))]
"(register_operand (operands[0], DImode)
|| aarch64_reg_or_zero (operands[1], DImode))"
"@
diff --git a/gcc/config/aarch64/constraints.md b/gcc/config/aarch64/constraints.md
index 18ac16a..d9c18e6 100644
--- a/gcc/config/aarch64/constraints.md
+++ b/gcc/config/aarch64/constraints.md
@@ -75,11 +75,6 @@
"Integer constant zero."
(match_test "op == const0_rtx"))
-(define_constraint "Usa"
- "A constraint that matches an absolute symbolic address."
- (and (match_code "const,symbol_ref")
- (match_test "aarch64_symbolic_address_p (op)")))
-
(define_constraint "Ush"
"A constraint that matches an absolute symbolic address high part."
(and (match_code "high")
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
index 3d65a53..8c72c85 100644
--- a/gcc/doc/md.texi
+++ b/gcc/doc/md.texi
@@ -1711,9 +1711,6 @@ Floating point constant zero
@item Z
Integer constant zero
-@item Usa
-An absolute symbolic address
-
@item Ush
The high part (bits 12 and upwards) of the pc-relative address of a symbol
within 4GB of the instruction