Module Name:    src
Committed By:   matt
Date:           Thu Feb  7 01:18:09 UTC 2013

Modified Files:
        src/gnu/dist/binutils/gas/config [matt-nb6-plus]: tc-arm.c

Log Message:
Support the movt instruction


To generate a diff of this commit:
cvs rdiff -u -r1.6.6.5 -r1.6.6.6 src/gnu/dist/binutils/gas/config/tc-arm.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/gnu/dist/binutils/gas/config/tc-arm.c
diff -u src/gnu/dist/binutils/gas/config/tc-arm.c:1.6.6.5 src/gnu/dist/binutils/gas/config/tc-arm.c:1.6.6.6
--- src/gnu/dist/binutils/gas/config/tc-arm.c:1.6.6.5	Mon Dec 24 22:16:18 2012
+++ src/gnu/dist/binutils/gas/config/tc-arm.c	Thu Feb  7 01:18:07 2013
@@ -6757,7 +6757,7 @@ do_dsb (char * str)
 }
 
 static void
-do_movw (char * str)
+do_movwt (char * str)
 {
   expressionS expr;
   int reg;
@@ -6791,7 +6791,7 @@ do_movw (char * str)
       return;
     }
 
-  if ((expr.X_add_number >> 16) != 0)
+  if ((expr.X_add_number & 0xffff0000) != 0)
     {
       inst.error = _("invalid unsigned 16-bit value");
       return;
@@ -10245,7 +10245,8 @@ static const struct asm_opcode insns[] =
   { "dmb",       0xf57ff05f, 0,  ARM_EXT_V7A,      do_dsb},
   { "dsb",       0xf57ff04f, 0,  ARM_EXT_V7A,      do_dsb},
   { "isb",       0xf57ff06f, 0,  ARM_EXT_V7A,      do_dsb},
-  { "movw",	 0xe3000000, 2,  ARM_EXT_V7A,      do_movw},
+  { "movw",	 0xe3000000, 2,  ARM_EXT_V7A,      do_movwt},
+  { "movt",	 0xe3400000, 2,  ARM_EXT_V7A,      do_movwt},
   { "sbfx",      0xe7a00050, 4,  ARM_EXT_V7A,      do_bfx},
   { "ubfx",      0xe7e00050, 4,  ARM_EXT_V7A,      do_bfx},
 

Reply via email to