This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch, moxie, committed] Add zex instructions to moxie simulator


I've committed the following small patch to add support for the zex
instructions to the moxie simulator.  GCC and binutils already support
these instructions.

Thanks,

AG


in sim/moxie...

2014-12-12  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add zex instructions.


diff --git a/sim/moxie/interp.c b/sim/moxie/interp.c
index 4362c66..fdb6528 100644
--- a/sim/moxie/interp.c
+++ b/sim/moxie/interp.c
@@ -604,8 +604,24 @@ sim_resume (sd, step, siggnal)
 		cpu.asregs.regs[a] = (int) bv;
 	      }
 	      break;
-	    case 0x12: /* bad */
-	    case 0x13: /* bad */
+	    case 0x12: /* zex.b */
+	      {
+		int a = (inst >> 4) & 0xf;
+		int b = inst & 0xf;
+		signed char bv = cpu.asregs.regs[b];
+		TRACE("zex.b");
+		cpu.asregs.regs[a] = (int) bv & 0xff;
+	      }
+	      break;
+	    case 0x13: /* zex.s */
+	      {
+		int a = (inst >> 4) & 0xf;
+		int b = inst & 0xf;
+		signed short bv = cpu.asregs.regs[b];
+		TRACE("zex.s");
+		cpu.asregs.regs[a] = (int) bv & 0xffff;
+	      }
+	      break;
 	    case 0x14: /* bad */
 	    case 0x15: /* bad */
 	    case 0x16: /* bad */


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]