for sld.w.
(OP_501): Similarly.
More bugs exposed by tda testing.
Thu Oct 24 12:26:35 1996 Jeffrey A Law (law@cygnus.com)
+ * simops.c (OP_500): Mask off low bit in displacement
+ for sld.w.
+ (OP_501): Similarly.
+
* simops.c (OP_500): Fix displacement handling for sld.w.
(OP_501): Similarly for sst.w.
trace_input ("sld.w", OP_LOAD16, 4);
temp = OP[1];
- temp &= 0x7f;
+ temp &= 0x7e;
op2 = temp << 1;
result = load_mem (State.regs[30] + op2, 4);
State.regs[OP[0]] = result;
trace_input ("sst.w", OP_STORE16, 4);
op0 = State.regs[OP[0]];
temp = OP[1];
- temp &= 0x7f;
+ temp &= 0x7e;
op1 = temp << 1;
store_mem (State.regs[30] + op1, 4, op0);
trace_output (OP_STORE16);