diff options
author | Paul Brook <paul@codesourcery.com> | 2006-03-17 14:03:36 +0000 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2006-03-17 14:03:36 +0000 |
commit | c704be9929c7b1e0757c6ac01fc84949c365bb24 (patch) | |
tree | 66b94cda9f0757b933c2ac5b64dc87a070185901 /gas | |
parent | 94549ecacc1371cc205b034c7ed725c1b840a82e (diff) | |
download | binutils-redhat-c704be9929c7b1e0757c6ac01fc84949c365bb24.tar.gz |
2006-03-17 Paul Brook <paul@codesourcery.com>
gas/
* config/tc-arm.c (insns): Add ldm and stm.
gas/testsuite/
* gas/arm/thumb32.d: Add ldm and stm tests.
* gas/arm/thumb32.s: Ditto.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 4 | ||||
-rw-r--r-- | gas/config/tc-arm.c | 2 | ||||
-rw-r--r-- | gas/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/thumb32.d | 10 | ||||
-rw-r--r-- | gas/testsuite/gas/arm/thumb32.s | 11 |
5 files changed, 32 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index d20d9bd369..42816c4830 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2006-03-17 Paul Brook <paul@codesourcery.com> + + * config/tc-arm.c (insns): Add ldm and stm. + 2006-03-17 Ben Elliston <bje@au.ibm.com> PR gas/2446 diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 3ca5bd4230..573c1227b9 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -8944,8 +8944,10 @@ static const struct asm_opcode insns[] = tCE(str, 4000000, str, 2, (RR, ADDR), ldst, t_ldst), tC3(strb, 4400000, strb, 2, (RR, ADDR), ldst, t_ldst), + tCE(stm, 8800000, stmia, 2, (RRw, REGLST), ldmstm, t_ldmstm), tC3(stmia, 8800000, stmia, 2, (RRw, REGLST), ldmstm, t_ldmstm), tC3(stmea, 8800000, stmia, 2, (RRw, REGLST), ldmstm, t_ldmstm), + tCE(ldm, 8900000, ldmia, 2, (RRw, REGLST), ldmstm, t_ldmstm), tC3(ldmia, 8900000, ldmia, 2, (RRw, REGLST), ldmstm, t_ldmstm), tC3(ldmfd, 8900000, ldmia, 2, (RRw, REGLST), ldmstm, t_ldmstm), diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index bf1fdc0257..982f74b246 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-03-17 Paul Brook <paul@codesourcery.com> + + * gas/arm/thumb32.d: Add ldm and stm tests. + * gas/arm/thumb32.s: Ditto. + 2006-03-16 Bernd Schmidt <bernd.schmidt@analog.com> * gas/bfin/shift2.s: Add new tests. diff --git a/gas/testsuite/gas/arm/thumb32.d b/gas/testsuite/gas/arm/thumb32.d index 0aac53a0ca..ae2ebf7f43 100644 --- a/gas/testsuite/gas/arm/thumb32.d +++ b/gas/testsuite/gas/arm/thumb32.d @@ -944,3 +944,13 @@ Disassembly of section .text: 0[0-9a-f]+ <[^>]+> f85d 8b04 ldr.w r8, \[sp\], #4 0[0-9a-f]+ <[^>]+> e930 0580 ldmdb r0!, \{r7, r8, sl\} 0[0-9a-f]+ <[^>]+> e920 0580 stmdb r0!, \{r7, r8, sl\} +0[0-9a-f]+ <[^>]+> c806 ldmia r0!, \{r1, r2\} +0[0-9a-f]+ <[^>]+> c006 stmia r0!, \{r1, r2\} +0[0-9a-f]+ <[^>]+> e890 0300 ldmia.w r0, \{r8, r9\} +0[0-9a-f]+ <[^>]+> e880 0300 stmia.w r0, \{r8, r9\} +0[0-9a-f]+ <[^>]+> bf01 itttt eq +0[0-9a-f]+ <[^>]+> c806 ldmia r0!, \{r1, r2\} +0[0-9a-f]+ <[^>]+> c006 stmia r0!, \{r1, r2\} +0[0-9a-f]+ <[^>]+> e890 0300 ldmia.w r0, \{r8, r9\} +0[0-9a-f]+ <[^>]+> e880 0300 stmia.w r0, \{r8, r9\} +0[0-9a-f]+ <[^>]+> bf00 nop diff --git a/gas/testsuite/gas/arm/thumb32.s b/gas/testsuite/gas/arm/thumb32.s index 5f4dc68856..b75a0850f3 100644 --- a/gas/testsuite/gas/arm/thumb32.s +++ b/gas/testsuite/gas/arm/thumb32.s @@ -758,3 +758,14 @@ xta: ldmdb r0!, {r7,r8,r10} stmdb r0!, {r7,r8,r10} + + ldm r0!, {r1, r2} + stm r0!, {r1, r2} + ldm r0, {r8, r9} + stm r0, {r8, r9} + itttt eq + ldmeq r0!, {r1, r2} + stmeq r0!, {r1, r2} + ldmeq r0, {r8, r9} + stmeq r0, {r8, r9} + nop |