OSDN Git Service

Add LDM and STM instructions which are unpredictable because of their use of
authornickc <nickc>
Mon, 23 Sep 2002 16:46:32 +0000 (16:46 +0000)
committernickc <nickc>
Mon, 23 Sep 2002 16:46:32 +0000 (16:46 +0000)
the writeback bit.

gas/testsuite/ChangeLog
gas/testsuite/gas/arm/armv1-bad.l
gas/testsuite/gas/arm/armv1-bad.s

index 467605e..9523d48 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-23  Nick Clifton  <nickc@redhat.com>
+
+       * gas/arm/armv1-bad.s: Add LDM and STM instructions which are
+       unpredictable because of their use of the writeback bit.
+
 2002-09-21  Nick Clifton  <nickc@redhat.com>
 
        * gas/arm/inst.s: Fix UNPREDICATABLE use of writeback in LDM/STM
index 96d9e73..19a7e9a 100644 (file)
@@ -6,3 +6,7 @@
 [^:]*:8: Error: invalid constant -- `mov r0,#0x1ff'
 [^:]*:9: Error: bad instruction `cmpl r0,r0'
 [^:]*:10: Error: selected processor does not support `strh r0,\[r1\]'
+[^:]*:11: Warning: writeback of base register is UNPREDICTABLE
+[^:]*:12: Warning: writeback of base register when in register list is UNPREDICTABLE
+[^:]*:13: Warning: writeback of base register is UNPREDICTABLE
+[^:]*:15: Warning: if writeback register is in list, it must be the lowest reg in the list
index c879a73..751aefe 100644 (file)
@@ -8,3 +8,8 @@ entry:
        mov     r0, #0x1ff
        cmpl    r0, r0
        strh    r0, [r1]
+       ldmfa   r4!, {r8, r9}^
+       ldmfa   r4!, {r4, r8, r9}
+       stmfa   r4!, {r8, r9}^
+       stmdb   r4!, {r4, r8, r9}       @ This is OK.
+       stmdb   r8!, {r4, r8, r9}