Add support for two new moxie sign-extension instructions
[deliverable/binutils-gdb.git] / sim / moxie / interp.c
index a3f238a00669b2e93ce071a6da976a04459d694a..4362c66bb5492d0eacf7f16d246198c623f36f8c 100644 (file)
@@ -586,8 +586,24 @@ sim_resume (sd, step, siggnal)
              break;
            case 0x0f: /* nop */
              break;
-           case 0x10: /* bad */
-           case 0x11: /* bad */
+           case 0x10: /* sex.b */
+             {
+               int a = (inst >> 4) & 0xf;
+               int b = inst & 0xf;
+               signed char bv = cpu.asregs.regs[b];
+               TRACE("sex.b");
+               cpu.asregs.regs[a] = (int) bv;
+             }
+             break;
+           case 0x11: /* sex.s */
+             {
+               int a = (inst >> 4) & 0xf;
+               int b = inst & 0xf;
+               signed short bv = cpu.asregs.regs[b];
+               TRACE("sex.s");
+               cpu.asregs.regs[a] = (int) bv;
+             }
+             break;
            case 0x12: /* bad */
            case 0x13: /* bad */
            case 0x14: /* bad */
This page took 0.024227 seconds and 4 git commands to generate.