diff options
author | twinaphex | 2014-12-12 06:48:20 +0100 |
---|---|---|
committer | twinaphex | 2014-12-12 06:48:20 +0100 |
commit | 701e2bbf501229175d8ef210d3ed985db757567b (patch) | |
tree | fed3a4c97162de1d666b10306e592ac02dd9c30d | |
parent | 4a6d527b1c1af36676be85bb332f95c24d3ce458 (diff) | |
download | picogpsp-701e2bbf501229175d8ef210d3ed985db757567b.tar.gz picogpsp-701e2bbf501229175d8ef210d3ed985db757567b.tar.bz2 picogpsp-701e2bbf501229175d8ef210d3ed985db757567b.zip |
CPU interpreter - group THUMB cases 0x38 to 0x3F (SUB) together
-rw-r--r-- | cpu.c | 23 |
1 files changed, 1 insertions, 22 deletions
@@ -3360,42 +3360,21 @@ thumb_loop: case 0x38: /* SUB r0, imm */ - thumb_sub(imm, 0, reg[0], imm); - break; - case 0x39: /* SUB r1, imm */ - thumb_sub(imm, 1, reg[1], imm); - break; - case 0x3A: /* SUB r2, imm */ - thumb_sub(imm, 2, reg[2], imm); - break; - case 0x3B: /* SUB r3, imm */ - thumb_sub(imm, 3, reg[3], imm); - break; - case 0x3C: /* SUB r4, imm */ - thumb_sub(imm, 4, reg[4], imm); - break; - case 0x3D: /* SUB r5, imm */ - thumb_sub(imm, 5, reg[5], imm); - break; - case 0x3E: /* SUB r6, imm */ - thumb_sub(imm, 6, reg[6], imm); - break; - case 0x3F: /* SUB r7, imm */ - thumb_sub(imm, 7, reg[7], imm); + thumb_sub(imm, thumb_opcode_val & 0x7, reg[thumb_opcode_val & 0x7], imm); break; case 0x40: |