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 | f5208ef27a2b7493d0664a2d673c6e153fd7baa1 (patch) | |
tree | c96dbcc5c1978df6156cc8f6c87941e52b2fd604 | |
parent | e1710606c993baab0555429f130bbfd7a2fe3971 (diff) | |
download | gdb-f5208ef27a2b7493d0664a2d673c6e153fd7baa1.zip gdb-f5208ef27a2b7493d0664a2d673c6e153fd7baa1.tar.gz gdb-f5208ef27a2b7493d0664a2d673c6e153fd7baa1.tar.bz2 |
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.
-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 d20d9bd..42816c4 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 3ca5bd4..573c122 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 bf1fdc0..982f74b 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 0aac53a..ae2ebf7 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 5f4dc68..b75a085 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 |