Module Name:    src
Committed By:   matt
Date:           Sat Feb 15 16:16:39 UTC 2014

Modified Files:
        src/gnu/dist/binutils/gas/config [matt-nb5-mips64]: tc-arm.c
        src/gnu/dist/binutils/opcodes [matt-nb5-mips64]: arm-dis.c

Log Message:
Add pli support


To generate a diff of this commit:
cvs rdiff -u -r1.5.32.1 -r1.5.32.2 src/gnu/dist/binutils/gas/config/tc-arm.c
cvs rdiff -u -r1.1.1.3.32.1 -r1.1.1.3.32.2 \
    src/gnu/dist/binutils/opcodes/arm-dis.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.5.32.1 src/gnu/dist/binutils/gas/config/tc-arm.c:1.5.32.2
--- src/gnu/dist/binutils/gas/config/tc-arm.c:1.5.32.1	Wed Dec 18 14:07:30 2013
+++ src/gnu/dist/binutils/gas/config/tc-arm.c	Sat Feb 15 16:16:39 2014
@@ -5521,7 +5521,7 @@ do_pld (char * str)
 	  ++str;
 	}
       else /* [Rn] */
-	inst.instruction |= INDEX_UP | PRE_INDEX;
+	inst.instruction |= INDEX_UP;
     }
   else /* [Rn, ...] */
     {
@@ -5550,8 +5550,6 @@ do_pld (char * str)
 	  inst.error = _("writeback used in preload instruction");
 	  ++ str;
 	}
-
-      inst.instruction |= PRE_INDEX;
     }
 
   end_of_line (str);
@@ -10124,7 +10122,7 @@ static const struct asm_opcode insns[] =
   {"qdsub",      0xe1600050, 5,  ARM_EXT_V5ExP,    do_qadd},
 
   /*  ARM Architecture 5TE.  */
-  {"pld",        0xf450f000, 0,  ARM_EXT_V5E,      do_pld},
+  {"pld",        0xf550f000, 0,  ARM_EXT_V5E,      do_pld},
   {"ldrd",       0xe00000d0, 3,  ARM_EXT_V5E,      do_ldrd},
   {"strd",       0xe00000f0, 3,  ARM_EXT_V5E,      do_ldrd},
 
@@ -10261,6 +10259,7 @@ static const struct asm_opcode insns[] =
   { "movt",	 0xe3400000, 2,  ARM_EXT_V7A,      do_movwt},
   { "sbfx",      0xe7a00050, 4,  ARM_EXT_V7A,      do_bfx},
   { "ubfx",      0xe7e00050, 4,  ARM_EXT_V7A,      do_bfx},
+  { "pli",       0xf450f000, 0,  ARM_EXT_V7A,      do_pld},
 
   /* Core FPA instruction set (V1).  */
   {"wfs",        0xee200110, 3,  FPU_FPA_EXT_V1,   do_fpa_ctrl},

Index: src/gnu/dist/binutils/opcodes/arm-dis.c
diff -u src/gnu/dist/binutils/opcodes/arm-dis.c:1.1.1.3.32.1 src/gnu/dist/binutils/opcodes/arm-dis.c:1.1.1.3.32.2
--- src/gnu/dist/binutils/opcodes/arm-dis.c:1.1.1.3.32.1	Wed Dec 18 18:31:22 2013
+++ src/gnu/dist/binutils/opcodes/arm-dis.c	Sat Feb 15 16:16:39 2014
@@ -82,6 +82,7 @@
    %C			print the PSR sub type.
    %E			print the LSB and WIDTH fields of a BFI or BFC instruction.
    %F			print the COUNT field of a LFM/SFM instruction.
+   %Y			print address for pli instruction.
 IWMMXT specific format options:
    %<bitfield>g         print as an iWMMXt 64-bit register
    %<bitfield>G         print as an iWMMXt general purpose or control register
@@ -130,6 +131,7 @@ static const struct arm_opcode arm_opcod
   {ARM_EXT_V7A, 0xf57ff050, 0xfffffff0, "dsb\t%#0-3d"},
   {ARM_EXT_V7A, 0xf57ff06f, 0xffffffff, "isb"},
   {ARM_EXT_V7A, 0xf57ff060, 0xfffffff0, "isb\t%#0-3d"},
+  {ARM_EXT_V7A, 0xf450f000, 0xff70f000, "pli\t%Y"},
 
   /* ARM V6Z instructions.  */
   {ARM_EXT_V6Z, 0x01600070, 0x0ff000f0, "smi%c\t%e"},
@@ -353,7 +355,7 @@ static const struct arm_opcode arm_opcod
   /* V5E "El Segundo" Instructions.  */    
   {ARM_EXT_V5E, 0x000000d0, 0x0e1000f0, "ldr%cd\t%12-15r, %s"},
   {ARM_EXT_V5E, 0x000000f0, 0x0e1000f0, "str%cd\t%12-15r, %s"},
-  {ARM_EXT_V5E, 0xf450f000, 0xfc70f000, "pld\t%a"},
+  {ARM_EXT_V5E, 0xf550f000, 0xff70f000, "pld\t%a"},
   {ARM_EXT_V5ExP, 0x01000080, 0x0ff000f0, "smlabb%c\t%16-19r, %0-3r, %8-11r, %12-15r"},
   {ARM_EXT_V5ExP, 0x010000a0, 0x0ff000f0, "smlatb%c\t%16-19r, %0-3r, %8-11r, %12-15r"},
   {ARM_EXT_V5ExP, 0x010000c0, 0x0ff000f0, "smlabt%c\t%16-19r, %0-3r, %8-11r, %12-15r"},
@@ -957,6 +959,9 @@ print_insn_arm (pc, info, given)
 		      func (stream, "%%");
 		      break;
 
+		    case 'Y':
+		      given |= 0x01000000;
+		      /*FALLTHROUGH*/
 		    case 'a':
 		      if (((given & 0x000f0000) == 0x000f0000)
 			  && ((given & 0x02000000) == 0))

Reply via email to