aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2009-06-18 16:36:05 +0000
committerNick Clifton <nickc@redhat.com>2009-06-18 16:36:05 +0000
commit3a21c15a776c549411131dbb9f26d4e0f9b87d57 (patch)
treeab7aaa3dedcc05125fc05e15f786c28b140a2df4 /gas/testsuite
parentc2e61a4e9360e392834047c62d7ef60eb2d77a40 (diff)
downloadgdb-3a21c15a776c549411131dbb9f26d4e0f9b87d57.zip
gdb-3a21c15a776c549411131dbb9f26d4e0f9b87d57.tar.gz
gdb-3a21c15a776c549411131dbb9f26d4e0f9b87d57.tar.bz2
PR 10169
* gas/tc-arm.c (do_t_ssat): Move common code from here... (do_t_usat): ... and here to... (do_t_ssat_usat): New function: ... here. Add code to check that the shift value, if present, is in range. * gas/arm/thumb2_bad_reg.s: Add tests for SSAT and USAT with an out of range shift. * gas/arm/thumb2_bad_reg.l: Update expected error messages.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog5
-rw-r--r--gas/testsuite/gas/arm/thumb2_bad_reg.l2
-rw-r--r--gas/testsuite/gas/arm/thumb2_bad_reg.s2
3 files changed, 9 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 5bac61e..a71903f 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,5 +1,10 @@
2009-06-18 Nick Clifton <nickc@redhat.com>
+ PR 10169
+ * gas/arm/thumb2_bad_reg.s: Add tests for SSAT and USAT with an
+ out of range shift.
+ * gas/arm/thumb2_bad_reg.l: Update expected error messages.
+
PR 10288
* gas/arm/align.s: Add labels so that COFF based targets can
correctly locate THUMB code.
diff --git a/gas/testsuite/gas/arm/thumb2_bad_reg.l b/gas/testsuite/gas/arm/thumb2_bad_reg.l
index f22df10..1da7bac 100644
--- a/gas/testsuite/gas/arm/thumb2_bad_reg.l
+++ b/gas/testsuite/gas/arm/thumb2_bad_reg.l
@@ -504,6 +504,7 @@
[^:]*:[0-9]+: Error: r15 not allowed here -- `ssat r15,#1,r0'
[^:]*:[0-9]+: Error: r13 not allowed here -- `ssat r0,#1,r13'
[^:]*:[0-9]+: Error: r15 not allowed here -- `ssat r0,#1,r15'
+[^:]*:[0-9]+: Error: shift expression is too large -- `ssat r1,#1,r3,asr#32'
[^:]*:[0-9]+: Error: r13 not allowed here -- `ssat16 r13,#1,r0'
[^:]*:[0-9]+: Error: r15 not allowed here -- `ssat16 r15,#1,r0'
[^:]*:[0-9]+: Error: r13 not allowed here -- `ssat16 r0,#1,r13'
@@ -731,6 +732,7 @@
[^:]*:[0-9]+: Error: r15 not allowed here -- `usat r15,#1,r0'
[^:]*:[0-9]+: Error: r13 not allowed here -- `usat r0,#1,r13'
[^:]*:[0-9]+: Error: r15 not allowed here -- `usat r0,#1,r15'
+[^:]*:[0-9]+: Error: shift expression is too large -- `usat r1,#1,r3,asr#32'
[^:]*:[0-9]+: Error: r13 not allowed here -- `usat16 r13,#1,r0'
[^:]*:[0-9]+: Error: r15 not allowed here -- `usat16 r15,#1,r0'
[^:]*:[0-9]+: Error: r13 not allowed here -- `usat16 r0,#1,r13'
diff --git a/gas/testsuite/gas/arm/thumb2_bad_reg.s b/gas/testsuite/gas/arm/thumb2_bad_reg.s
index 90c82e6..20a26e0 100644
--- a/gas/testsuite/gas/arm/thumb2_bad_reg.s
+++ b/gas/testsuite/gas/arm/thumb2_bad_reg.s
@@ -630,6 +630,7 @@ test:
ssat r15, #1, r0
ssat r0, #1, r13
ssat r0, #1, r15
+ ssat r1, #1, r3,asr #32
@ SSAT16
ssat16 r13, #1, r0
ssat16 r15, #1, r0
@@ -909,6 +910,7 @@ test:
usat r15, #1, r0
usat r0, #1, r13
usat r0, #1, r15
+ usat r1, #1, r3,asr #32
@ USAT16
usat16 r13, #1, r0
usat16 r15, #1, r0