summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4>2013-05-23 14:16:50 +0000
committermshawcroft <mshawcroft@138bc75d-0d04-0410-961f-82ee72b054a4>2013-05-23 14:16:50 +0000
commita5ebd4c477e0fe8c7f5bbfa439aff05a84539b65 (patch)
treef5572cb8f722fc732a77621f87002a38b956b1fe
parentfda698d7edfee9ef12c926ed713c1563df39ffc6 (diff)
downloadgcc-a5ebd4c477e0fe8c7f5bbfa439aff05a84539b65.tar.gz
[AArch64] Remove Usa constraint.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199260 138bc75d-0d04-0410-961f-82ee72b054a4
-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 3ba9d4eae3e..4db76e3065a 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 b27bcdaa97c..e1ec48f5522 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 18ac16a3160..d9c18e692ea 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 3d65a53c892..8c72c850852 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