Fix shift by register in interpreter
Only the LSB byte is actually used.
This commit is contained in:
parent
c2c2564e4a
commit
8fabfaf2a8
2
cpu.c
2
cpu.c
|
@ -345,7 +345,7 @@ void print_register_usage(void)
|
||||||
|
|
||||||
|
|
||||||
#define get_shift_register(dest) \
|
#define get_shift_register(dest) \
|
||||||
u32 shift = reg[(opcode >> 8) & 0x0F]; \
|
u32 shift = reg[(opcode >> 8) & 0x0F] & 0xFF; \
|
||||||
using_register(arm, ((opcode >> 8) & 0x0F), op_shift); \
|
using_register(arm, ((opcode >> 8) & 0x0F), op_shift); \
|
||||||
dest = reg[rm]; \
|
dest = reg[rm]; \
|
||||||
if(rm == 15) \
|
if(rm == 15) \
|
||||||
|
|
Loading…
Reference in New Issue