aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-arm.c4
-rw-r--r--gas/testsuite/ChangeLog6
-rw-r--r--gas/testsuite/gas/arm/thumb2_it.d2
-rw-r--r--gas/testsuite/gas/arm/thumb2_it_auto.d2
-rw-r--r--gas/testsuite/gas/arm/thumb32.d4
6 files changed, 17 insertions, 6 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index bce83da..f1600c1 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-28 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
+
+ * config/tc-arm.c (do_t_mov_cmp): In unified syntax encode movs as
+ lsls and not adds.
+
2010-05-27 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* config/tc-arm.c (encode_thumb2_ldmstm): Make warning about
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index 6675935..6cf37b1 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -10369,8 +10369,8 @@ do_t_mov_cmp (void)
case T_MNEM_movs:
/* We know we have low registers at this point.
- Generate ADD Rd, Rs, #0. */
- inst.instruction = T_OPCODE_ADD_I3;
+ Generate LSLS Rd, Rs, #0. */
+ inst.instruction = T_OPCODE_LSL_I;
inst.instruction |= Rn;
inst.instruction |= Rm << 3;
break;
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 26df217..b488019 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2010-05-28 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
+
+ * gas/arm/thumb2_it_auto.d: Update for change in movs encoding.
+ gas/arm/thumb2_it.d: Likewise.
+ gas/arm/thumb32.d: Likewise.
+
2010-05-27 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
* gas/arm/thumb2_ldmstm.d: Add new testcases.
diff --git a/gas/testsuite/gas/arm/thumb2_it.d b/gas/testsuite/gas/arm/thumb2_it.d
index ab31cdb..b55bc67 100644
--- a/gas/testsuite/gas/arm/thumb2_it.d
+++ b/gas/testsuite/gas/arm/thumb2_it.d
@@ -45,7 +45,7 @@ Disassembly of section .text:
0+062 <[^>]+> bf08 it eq
0+064 <[^>]+> 4640 moveq r0, r8
0+066 <[^>]+> 4608 mov r0, r1
-0+068 <[^>]+> 1c08 adds r0, r1, #0
+0+068 <[^>]+> 0008 lsls r0, r1, #0
0+06a <[^>]+> ea5f 0008 movs.w r0, r8
0+06e <[^>]+> bf01 itttt eq
0+070 <[^>]+> 43c8 mvneq r0, r1
diff --git a/gas/testsuite/gas/arm/thumb2_it_auto.d b/gas/testsuite/gas/arm/thumb2_it_auto.d
index 3cd465d..91d82ca 100644
--- a/gas/testsuite/gas/arm/thumb2_it_auto.d
+++ b/gas/testsuite/gas/arm/thumb2_it_auto.d
@@ -45,7 +45,7 @@ Disassembly of section .text:
0+062 <[^>]+> bf08 it eq
0+064 <[^>]+> 4640 moveq r0, r8
0+066 <[^>]+> 4608 mov r0, r1
-0+068 <[^>]+> 1c08 adds r0, r1, #0
+0+068 <[^>]+> 0008 lsls r0, r1, #0
0+06a <[^>]+> ea5f 0008 movs.w r0, r8
0+06e <[^>]+> bf01 itttt eq
0+070 <[^>]+> 43c8 mvneq r0, r1
diff --git a/gas/testsuite/gas/arm/thumb32.d b/gas/testsuite/gas/arm/thumb32.d
index 530b86b..31278d8 100644
--- a/gas/testsuite/gas/arm/thumb32.d
+++ b/gas/testsuite/gas/arm/thumb32.d
@@ -618,9 +618,9 @@ Disassembly of section .text:
0[0-9a-f]+ <[^>]+> eb10 0f09 cmn\.w r0, r9
0[0-9a-f]+ <[^>]+> f110 0f81 cmn\.w r0, #129 ; 0x81
0[0-9a-f]+ <[^>]+> f115 0f81 cmn\.w r5, #129 ; 0x81
-0[0-9a-f]+ <[^>]+> 1c00 adds r0, r0, #0
+0[0-9a-f]+ <[^>]+> 0000 lsls r0, r0, #0
0[0-9a-f]+ <[^>]+> 4600 mov r0, r0
-0[0-9a-f]+ <[^>]+> 1c05 adds r5, r0, #0
+0[0-9a-f]+ <[^>]+> 0005 lsls r5, r0, #0
0[0-9a-f]+ <[^>]+> 4628 mov r0, r5
0[0-9a-f]+ <[^>]+> ea4f 4065 mov\.w r0, r5, asr #17
0[0-9a-f]+ <[^>]+> ea4f 0000 mov\.w r0, r0