aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorFaraz Shahbazker <fshahbazker@wavecomp.com>2019-05-13 17:19:37 -0700
committerFaraz Shahbazker <fshahbazker@wavecomp.com>2019-05-21 09:28:24 -0700
commitcd4797ee054654160fe6c4b6fbecd636b7961e19 (patch)
tree32ffbea3f566a32ed45fbb668a121a21bed2b820 /gas
parent3734320dc054bd9f6632607e9e5c901c57450791 (diff)
downloadgdb-cd4797ee054654160fe6c4b6fbecd636b7961e19.zip
gdb-cd4797ee054654160fe6c4b6fbecd636b7961e19.tar.gz
gdb-cd4797ee054654160fe6c4b6fbecd636b7961e19.tar.bz2
MIPS/gas: Reject $0 as source register for DAUI instruction
The MIPS64R6 TRM requires that the source register for DAUI not be r0. [1] "MIPS Architecture for Programmers Volume II-A: The MIPS64 Instruction Set Manual", Imagination Technologies Ltd., Document Number: MD00087, Revision 6.06, December 15, 2016, Section 3.2 "Alphabetical List of Instructions", pp. 67-68. gas/ * testsuite/gas/mips/r6-branch-constraints.s: Rename to ... * testsuite/gas/mips/r6-reg-constraints.s: this and add test case for DAUI. * testsuite/gas/mips/r6-branch-constraints.l: Rename to ... * testsuite/gas/mips/r6-reg-constraints.l: this and add test for DAUI. * testsuite/gas/mips/mips.exp: Rename test from r6-branch-constraints to r6-reg-constraints. opcodes/ * mips-opc.c (mips_builtin_opcodes): Change source register constraint for DAUI.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog11
-rw-r--r--gas/testsuite/gas/mips/mips.exp2
-rw-r--r--gas/testsuite/gas/mips/r6-reg-constraints.l (renamed from gas/testsuite/gas/mips/r6-branch-constraints.l)1
-rw-r--r--gas/testsuite/gas/mips/r6-reg-constraints.s (renamed from gas/testsuite/gas/mips/r6-branch-constraints.s)1
4 files changed, 14 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index dfd5d6f..f25c2dc 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,14 @@
+2019-05-21 Faraz Shahbazker <fshahbazker@wavecomp.com>
+
+ * testsuite/gas/mips/r6-branch-constraints.s: Rename to ...
+ * testsuite/gas/mips/r6-reg-constraints.s: this and add test
+ case for DAUI.
+ * testsuite/gas/mips/r6-branch-constraints.l: Rename to ...
+ * testsuite/gas/mips/r6-reg-constraints.l: this and add test
+ for DAUI.
+ * testsuite/gas/mips/mips.exp: Rename test from
+ r6-branch-constraints to r6-reg-constraints.
+
2019-05-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
PR 24559
diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp
index c8ecd04..eaeb488 100644
--- a/gas/testsuite/gas/mips/mips.exp
+++ b/gas/testsuite/gas/mips/mips.exp
@@ -2074,7 +2074,7 @@ if { [istarget mips*-*-vxworks*] } {
run_list_test_arches "r6-removed" "-32" [mips_arch_list_matching mips32r6]
run_list_test_arches "r6-64-removed" [mips_arch_list_matching mips64r6]
- run_list_test_arches "r6-branch-constraints" "-32" \
+ run_list_test_arches "r6-reg-constraints" "-32" \
[mips_arch_list_matching mips32r6]
run_dump_test_arches "crc" [mips_arch_list_matching mips32r6]
diff --git a/gas/testsuite/gas/mips/r6-branch-constraints.l b/gas/testsuite/gas/mips/r6-reg-constraints.l
index bdeea9f..c898073 100644
--- a/gas/testsuite/gas/mips/r6-branch-constraints.l
+++ b/gas/testsuite/gas/mips/r6-reg-constraints.l
@@ -23,3 +23,4 @@
.*:23: Error: the source register must not be \$0 `bnec \$0,\$2,.'
.*:24: Error: invalid operands `bnec \$2,\$0,.'
.*:25: Error: invalid operands `bnec \$2,\$2,.'
+.*:26: Error: the source register must not be \$0 `daui \$2,\$0,1'
diff --git a/gas/testsuite/gas/mips/r6-branch-constraints.s b/gas/testsuite/gas/mips/r6-reg-constraints.s
index 62ca893..b29527c 100644
--- a/gas/testsuite/gas/mips/r6-branch-constraints.s
+++ b/gas/testsuite/gas/mips/r6-reg-constraints.s
@@ -23,3 +23,4 @@
bnec $0,$2,.
bnec $2,$0,.
bnec $2,$2,.
+ daui $2,$0,1