diff options
| author | 2015-02-13 15:53:34 -0500 | |
|---|---|---|
| committer | 2015-02-13 15:53:34 -0500 | |
| commit | 29a9e4ac25504bee82f273184a1afcc88a3e61e1 (patch) | |
| tree | 9fa96cdc2bc180ac4c5a2c33158ae7cc60f2a308 /src | |
| parent | Merge pull request #571 from lioncash/cleanup (diff) | |
| parent | core: Apply static to local functions (diff) | |
| download | yuzu-29a9e4ac25504bee82f273184a1afcc88a3e61e1.tar.gz yuzu-29a9e4ac25504bee82f273184a1afcc88a3e61e1.tar.xz yuzu-29a9e4ac25504bee82f273184a1afcc88a3e61e1.zip | |
Merge pull request #572 from lioncash/prototypes
core: Apply static to local functions
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/arm/dyncom/arm_dyncom_interpreter.cpp | 379 | ||||
| -rw-r--r-- | src/core/arm/dyncom/arm_dyncom_interpreter.h | 2 | ||||
| -rw-r--r-- | src/core/arm/dyncom/arm_dyncom_run.cpp | 1 | ||||
| -rw-r--r-- | src/core/arm/dyncom/arm_dyncom_run.h | 2 | ||||
| -rw-r--r-- | src/core/arm/skyeye_common/vfp/vfpinstr.cpp | 64 | ||||
| -rw-r--r-- | src/core/core_timing.cpp | 14 | ||||
| -rw-r--r-- | src/core/hle/hle.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/service/ac_u.cpp | 2 | ||||
| -rw-r--r-- | src/core/hle/service/apt_u.cpp | 10 | ||||
| -rw-r--r-- | src/core/hle/service/dsp_dsp.cpp | 18 | ||||
| -rw-r--r-- | src/core/hle/shared_page.cpp | 1 |
11 files changed, 252 insertions, 245 deletions
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp index f701ee8b0..f4b3c4734 100644 --- a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp +++ b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp | |||
| @@ -13,6 +13,7 @@ | |||
| 13 | #include "core/mem_map.h" | 13 | #include "core/mem_map.h" |
| 14 | #include "core/hle/hle.h" | 14 | #include "core/hle/hle.h" |
| 15 | #include "core/arm/disassembler/arm_disasm.h" | 15 | #include "core/arm/disassembler/arm_disasm.h" |
| 16 | #include "core/arm/dyncom/arm_dyncom_interpreter.h" | ||
| 16 | #include "core/arm/dyncom/arm_dyncom_thumb.h" | 17 | #include "core/arm/dyncom/arm_dyncom_thumb.h" |
| 17 | #include "core/arm/dyncom/arm_dyncom_run.h" | 18 | #include "core/arm/dyncom/arm_dyncom_run.h" |
| 18 | #include "core/arm/skyeye_common/armdefs.h" | 19 | #include "core/arm/skyeye_common/armdefs.h" |
| @@ -64,7 +65,7 @@ static void remove_exclusive(ARMul_State* state, ARMword addr){ | |||
| 64 | state->exclusive_tag = 0xFFFFFFFF; | 65 | state->exclusive_tag = 0xFFFFFFFF; |
| 65 | } | 66 | } |
| 66 | 67 | ||
| 67 | unsigned int DPO(Immediate)(ARMul_State* cpu, unsigned int sht_oper) { | 68 | static unsigned int DPO(Immediate)(ARMul_State* cpu, unsigned int sht_oper) { |
| 68 | unsigned int immed_8 = BITS(sht_oper, 0, 7); | 69 | unsigned int immed_8 = BITS(sht_oper, 0, 7); |
| 69 | unsigned int rotate_imm = BITS(sht_oper, 8, 11); | 70 | unsigned int rotate_imm = BITS(sht_oper, 8, 11); |
| 70 | unsigned int shifter_operand = ROTATE_RIGHT_32(immed_8, rotate_imm * 2); | 71 | unsigned int shifter_operand = ROTATE_RIGHT_32(immed_8, rotate_imm * 2); |
| @@ -75,14 +76,14 @@ unsigned int DPO(Immediate)(ARMul_State* cpu, unsigned int sht_oper) { | |||
| 75 | return shifter_operand; | 76 | return shifter_operand; |
| 76 | } | 77 | } |
| 77 | 78 | ||
| 78 | unsigned int DPO(Register)(ARMul_State* cpu, unsigned int sht_oper) { | 79 | static unsigned int DPO(Register)(ARMul_State* cpu, unsigned int sht_oper) { |
| 79 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 80 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 80 | unsigned int shifter_operand = rm; | 81 | unsigned int shifter_operand = rm; |
| 81 | cpu->shifter_carry_out = cpu->CFlag; | 82 | cpu->shifter_carry_out = cpu->CFlag; |
| 82 | return shifter_operand; | 83 | return shifter_operand; |
| 83 | } | 84 | } |
| 84 | 85 | ||
| 85 | unsigned int DPO(LogicalShiftLeftByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { | 86 | static unsigned int DPO(LogicalShiftLeftByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { |
| 86 | int shift_imm = BITS(sht_oper, 7, 11); | 87 | int shift_imm = BITS(sht_oper, 7, 11); |
| 87 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 88 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 88 | unsigned int shifter_operand; | 89 | unsigned int shifter_operand; |
| @@ -96,7 +97,7 @@ unsigned int DPO(LogicalShiftLeftByImmediate)(ARMul_State* cpu, unsigned int sht | |||
| 96 | return shifter_operand; | 97 | return shifter_operand; |
| 97 | } | 98 | } |
| 98 | 99 | ||
| 99 | unsigned int DPO(LogicalShiftLeftByRegister)(ARMul_State* cpu, unsigned int sht_oper) { | 100 | static unsigned int DPO(LogicalShiftLeftByRegister)(ARMul_State* cpu, unsigned int sht_oper) { |
| 100 | int shifter_operand; | 101 | int shifter_operand; |
| 101 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 102 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 102 | unsigned int rs = CHECK_READ_REG15(cpu, RS); | 103 | unsigned int rs = CHECK_READ_REG15(cpu, RS); |
| @@ -116,7 +117,7 @@ unsigned int DPO(LogicalShiftLeftByRegister)(ARMul_State* cpu, unsigned int sht_ | |||
| 116 | return shifter_operand; | 117 | return shifter_operand; |
| 117 | } | 118 | } |
| 118 | 119 | ||
| 119 | unsigned int DPO(LogicalShiftRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { | 120 | static unsigned int DPO(LogicalShiftRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { |
| 120 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 121 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 121 | unsigned int shifter_operand; | 122 | unsigned int shifter_operand; |
| 122 | int shift_imm = BITS(sht_oper, 7, 11); | 123 | int shift_imm = BITS(sht_oper, 7, 11); |
| @@ -130,7 +131,7 @@ unsigned int DPO(LogicalShiftRightByImmediate)(ARMul_State* cpu, unsigned int sh | |||
| 130 | return shifter_operand; | 131 | return shifter_operand; |
| 131 | } | 132 | } |
| 132 | 133 | ||
| 133 | unsigned int DPO(LogicalShiftRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) { | 134 | static unsigned int DPO(LogicalShiftRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) { |
| 134 | unsigned int rs = CHECK_READ_REG15(cpu, RS); | 135 | unsigned int rs = CHECK_READ_REG15(cpu, RS); |
| 135 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 136 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 136 | unsigned int shifter_operand; | 137 | unsigned int shifter_operand; |
| @@ -150,7 +151,7 @@ unsigned int DPO(LogicalShiftRightByRegister)(ARMul_State* cpu, unsigned int sht | |||
| 150 | return shifter_operand; | 151 | return shifter_operand; |
| 151 | } | 152 | } |
| 152 | 153 | ||
| 153 | unsigned int DPO(ArithmeticShiftRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { | 154 | static unsigned int DPO(ArithmeticShiftRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { |
| 154 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 155 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 155 | unsigned int shifter_operand; | 156 | unsigned int shifter_operand; |
| 156 | int shift_imm = BITS(sht_oper, 7, 11); | 157 | int shift_imm = BITS(sht_oper, 7, 11); |
| @@ -167,7 +168,7 @@ unsigned int DPO(ArithmeticShiftRightByImmediate)(ARMul_State* cpu, unsigned int | |||
| 167 | return shifter_operand; | 168 | return shifter_operand; |
| 168 | } | 169 | } |
| 169 | 170 | ||
| 170 | unsigned int DPO(ArithmeticShiftRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) { | 171 | static unsigned int DPO(ArithmeticShiftRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) { |
| 171 | unsigned int rs = CHECK_READ_REG15(cpu, RS); | 172 | unsigned int rs = CHECK_READ_REG15(cpu, RS); |
| 172 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 173 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 173 | unsigned int shifter_operand; | 174 | unsigned int shifter_operand; |
| @@ -187,7 +188,7 @@ unsigned int DPO(ArithmeticShiftRightByRegister)(ARMul_State* cpu, unsigned int | |||
| 187 | return shifter_operand; | 188 | return shifter_operand; |
| 188 | } | 189 | } |
| 189 | 190 | ||
| 190 | unsigned int DPO(RotateRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { | 191 | static unsigned int DPO(RotateRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper) { |
| 191 | unsigned int shifter_operand; | 192 | unsigned int shifter_operand; |
| 192 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 193 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 193 | int shift_imm = BITS(sht_oper, 7, 11); | 194 | int shift_imm = BITS(sht_oper, 7, 11); |
| @@ -201,7 +202,7 @@ unsigned int DPO(RotateRightByImmediate)(ARMul_State* cpu, unsigned int sht_oper | |||
| 201 | return shifter_operand; | 202 | return shifter_operand; |
| 202 | } | 203 | } |
| 203 | 204 | ||
| 204 | unsigned int DPO(RotateRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) { | 205 | static unsigned int DPO(RotateRightByRegister)(ARMul_State* cpu, unsigned int sht_oper) { |
| 205 | unsigned int rm = CHECK_READ_REG15(cpu, RM); | 206 | unsigned int rm = CHECK_READ_REG15(cpu, RM); |
| 206 | unsigned int rs = CHECK_READ_REG15(cpu, RS); | 207 | unsigned int rs = CHECK_READ_REG15(cpu, RS); |
| 207 | unsigned int shifter_operand; | 208 | unsigned int shifter_operand; |
| @@ -238,7 +239,7 @@ int CondPassed(ARMul_State* cpu, unsigned int cond); | |||
| 238 | #define P_BIT BIT(inst, 24) | 239 | #define P_BIT BIT(inst, 24) |
| 239 | #define OFFSET_12 BITS(inst, 0, 11) | 240 | #define OFFSET_12 BITS(inst, 0, 11) |
| 240 | 241 | ||
| 241 | void LnSWoUB(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 242 | static void LnSWoUB(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 242 | unsigned int Rn = BITS(inst, 16, 19); | 243 | unsigned int Rn = BITS(inst, 16, 19); |
| 243 | unsigned int addr; | 244 | unsigned int addr; |
| 244 | 245 | ||
| @@ -250,7 +251,7 @@ void LnSWoUB(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& | |||
| 250 | virt_addr = addr; | 251 | virt_addr = addr; |
| 251 | } | 252 | } |
| 252 | 253 | ||
| 253 | void LnSWoUB(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 254 | static void LnSWoUB(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 254 | unsigned int Rn = BITS(inst, 16, 19); | 255 | unsigned int Rn = BITS(inst, 16, 19); |
| 255 | unsigned int Rm = BITS(inst, 0, 3); | 256 | unsigned int Rm = BITS(inst, 0, 3); |
| 256 | unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn); | 257 | unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn); |
| @@ -265,7 +266,7 @@ void LnSWoUB(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& | |||
| 265 | virt_addr = addr; | 266 | virt_addr = addr; |
| 266 | } | 267 | } |
| 267 | 268 | ||
| 268 | void LnSWoUB(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 269 | static void LnSWoUB(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 269 | unsigned int Rn = BITS(inst, 16, 19); | 270 | unsigned int Rn = BITS(inst, 16, 19); |
| 270 | unsigned int addr = CHECK_READ_REG15_WA(cpu, Rn); | 271 | unsigned int addr = CHECK_READ_REG15_WA(cpu, Rn); |
| 271 | 272 | ||
| @@ -277,7 +278,7 @@ void LnSWoUB(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned | |||
| 277 | virt_addr = addr; | 278 | virt_addr = addr; |
| 278 | } | 279 | } |
| 279 | 280 | ||
| 280 | void LnSWoUB(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 281 | static void LnSWoUB(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 281 | unsigned int Rn = BITS(inst, 16, 19); | 282 | unsigned int Rn = BITS(inst, 16, 19); |
| 282 | unsigned int addr; | 283 | unsigned int addr; |
| 283 | 284 | ||
| @@ -292,7 +293,7 @@ void LnSWoUB(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned | |||
| 292 | cpu->Reg[Rn] = addr; | 293 | cpu->Reg[Rn] = addr; |
| 293 | } | 294 | } |
| 294 | 295 | ||
| 295 | void MLnS(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 296 | static void MLnS(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 296 | unsigned int addr; | 297 | unsigned int addr; |
| 297 | unsigned int Rn = BITS(inst, 16, 19); | 298 | unsigned int Rn = BITS(inst, 16, 19); |
| 298 | unsigned int Rm = BITS(inst, 0, 3); | 299 | unsigned int Rm = BITS(inst, 0, 3); |
| @@ -310,7 +311,7 @@ void MLnS(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& | |||
| 310 | cpu->Reg[Rn] = addr; | 311 | cpu->Reg[Rn] = addr; |
| 311 | } | 312 | } |
| 312 | 313 | ||
| 313 | void LnSWoUB(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 314 | static void LnSWoUB(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 314 | unsigned int Rn = BITS(inst, 16, 19); | 315 | unsigned int Rn = BITS(inst, 16, 19); |
| 315 | unsigned int Rm = BITS(inst, 0, 3); | 316 | unsigned int Rm = BITS(inst, 0, 3); |
| 316 | unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn); | 317 | unsigned int rn = CHECK_READ_REG15_WA(cpu, Rn); |
| @@ -329,7 +330,7 @@ void LnSWoUB(RegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned i | |||
| 329 | } | 330 | } |
| 330 | } | 331 | } |
| 331 | 332 | ||
| 332 | void LnSWoUB(ScaledRegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 333 | static void LnSWoUB(ScaledRegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 333 | unsigned int shift = BITS(inst, 5, 6); | 334 | unsigned int shift = BITS(inst, 5, 6); |
| 334 | unsigned int shift_imm = BITS(inst, 7, 11); | 335 | unsigned int shift_imm = BITS(inst, 7, 11); |
| 335 | unsigned int Rn = BITS(inst, 16, 19); | 336 | unsigned int Rn = BITS(inst, 16, 19); |
| @@ -380,7 +381,7 @@ void LnSWoUB(ScaledRegisterPreIndexed)(ARMul_State* cpu, unsigned int inst, unsi | |||
| 380 | cpu->Reg[Rn] = addr; | 381 | cpu->Reg[Rn] = addr; |
| 381 | } | 382 | } |
| 382 | 383 | ||
| 383 | void LnSWoUB(ScaledRegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 384 | static void LnSWoUB(ScaledRegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 384 | unsigned int shift = BITS(inst, 5, 6); | 385 | unsigned int shift = BITS(inst, 5, 6); |
| 385 | unsigned int shift_imm = BITS(inst, 7, 11); | 386 | unsigned int shift_imm = BITS(inst, 7, 11); |
| 386 | unsigned int Rn = BITS(inst, 16, 19); | 387 | unsigned int Rn = BITS(inst, 16, 19); |
| @@ -429,7 +430,7 @@ void LnSWoUB(ScaledRegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, uns | |||
| 429 | } | 430 | } |
| 430 | } | 431 | } |
| 431 | 432 | ||
| 432 | void LnSWoUB(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 433 | static void LnSWoUB(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 433 | unsigned int Rn = BITS(inst, 16, 19); | 434 | unsigned int Rn = BITS(inst, 16, 19); |
| 434 | unsigned int Rm = BITS(inst, 0, 3); | 435 | unsigned int Rm = BITS(inst, 0, 3); |
| 435 | unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm); | 436 | unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm); |
| @@ -445,7 +446,7 @@ void LnSWoUB(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned | |||
| 445 | } | 446 | } |
| 446 | } | 447 | } |
| 447 | 448 | ||
| 448 | void MLnS(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 449 | static void MLnS(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 449 | unsigned int immedL = BITS(inst, 0, 3); | 450 | unsigned int immedL = BITS(inst, 0, 3); |
| 450 | unsigned int immedH = BITS(inst, 8, 11); | 451 | unsigned int immedH = BITS(inst, 8, 11); |
| 451 | unsigned int Rn = BITS(inst, 16, 19); | 452 | unsigned int Rn = BITS(inst, 16, 19); |
| @@ -461,7 +462,7 @@ void MLnS(ImmediateOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& vi | |||
| 461 | virt_addr = addr; | 462 | virt_addr = addr; |
| 462 | } | 463 | } |
| 463 | 464 | ||
| 464 | void MLnS(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 465 | static void MLnS(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 465 | unsigned int addr; | 466 | unsigned int addr; |
| 466 | unsigned int Rn = BITS(inst, 16, 19); | 467 | unsigned int Rn = BITS(inst, 16, 19); |
| 467 | unsigned int Rm = BITS(inst, 0, 3); | 468 | unsigned int Rm = BITS(inst, 0, 3); |
| @@ -476,7 +477,7 @@ void MLnS(RegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& vir | |||
| 476 | virt_addr = addr; | 477 | virt_addr = addr; |
| 477 | } | 478 | } |
| 478 | 479 | ||
| 479 | void MLnS(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 480 | static void MLnS(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 480 | unsigned int Rn = BITS(inst, 16, 19); | 481 | unsigned int Rn = BITS(inst, 16, 19); |
| 481 | unsigned int immedH = BITS(inst, 8, 11); | 482 | unsigned int immedH = BITS(inst, 8, 11); |
| 482 | unsigned int immedL = BITS(inst, 0, 3); | 483 | unsigned int immedL = BITS(inst, 0, 3); |
| @@ -495,7 +496,7 @@ void MLnS(ImmediatePreIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int | |||
| 495 | cpu->Reg[Rn] = addr; | 496 | cpu->Reg[Rn] = addr; |
| 496 | } | 497 | } |
| 497 | 498 | ||
| 498 | void MLnS(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 499 | static void MLnS(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 499 | unsigned int Rn = BITS(inst, 16, 19); | 500 | unsigned int Rn = BITS(inst, 16, 19); |
| 500 | unsigned int immedH = BITS(inst, 8, 11); | 501 | unsigned int immedH = BITS(inst, 8, 11); |
| 501 | unsigned int immedL = BITS(inst, 0, 3); | 502 | unsigned int immedL = BITS(inst, 0, 3); |
| @@ -514,7 +515,7 @@ void MLnS(ImmediatePostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned in | |||
| 514 | } | 515 | } |
| 515 | } | 516 | } |
| 516 | 517 | ||
| 517 | void MLnS(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 518 | static void MLnS(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 518 | unsigned int Rn = BITS(inst, 16, 19); | 519 | unsigned int Rn = BITS(inst, 16, 19); |
| 519 | unsigned int Rm = BITS(inst, 0, 3); | 520 | unsigned int Rm = BITS(inst, 0, 3); |
| 520 | unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm); | 521 | unsigned int rm = CHECK_READ_REG15_WA(cpu, Rm); |
| @@ -529,7 +530,7 @@ void MLnS(RegisterPostIndexed)(ARMul_State* cpu, unsigned int inst, unsigned int | |||
| 529 | } | 530 | } |
| 530 | } | 531 | } |
| 531 | 532 | ||
| 532 | void LdnStM(DecrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 533 | static void LdnStM(DecrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 533 | unsigned int Rn = BITS(inst, 16, 19); | 534 | unsigned int Rn = BITS(inst, 16, 19); |
| 534 | unsigned int i = BITS(inst, 0, 15); | 535 | unsigned int i = BITS(inst, 0, 15); |
| 535 | int count = 0; | 536 | int count = 0; |
| @@ -545,7 +546,7 @@ void LdnStM(DecrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& | |||
| 545 | cpu->Reg[Rn] -= count * 4; | 546 | cpu->Reg[Rn] -= count * 4; |
| 546 | } | 547 | } |
| 547 | 548 | ||
| 548 | void LdnStM(IncrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 549 | static void LdnStM(IncrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 549 | unsigned int Rn = BITS(inst, 16, 19); | 550 | unsigned int Rn = BITS(inst, 16, 19); |
| 550 | unsigned int i = BITS(inst, 0, 15); | 551 | unsigned int i = BITS(inst, 0, 15); |
| 551 | int count = 0; | 552 | int count = 0; |
| @@ -561,7 +562,7 @@ void LdnStM(IncrementBefore)(ARMul_State* cpu, unsigned int inst, unsigned int& | |||
| 561 | cpu->Reg[Rn] += count * 4; | 562 | cpu->Reg[Rn] += count * 4; |
| 562 | } | 563 | } |
| 563 | 564 | ||
| 564 | void LdnStM(IncrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 565 | static void LdnStM(IncrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 565 | unsigned int Rn = BITS(inst, 16, 19); | 566 | unsigned int Rn = BITS(inst, 16, 19); |
| 566 | unsigned int i = BITS(inst, 0, 15); | 567 | unsigned int i = BITS(inst, 0, 15); |
| 567 | int count = 0; | 568 | int count = 0; |
| @@ -577,7 +578,7 @@ void LdnStM(IncrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& v | |||
| 577 | cpu->Reg[Rn] += count * 4; | 578 | cpu->Reg[Rn] += count * 4; |
| 578 | } | 579 | } |
| 579 | 580 | ||
| 580 | void LdnStM(DecrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 581 | static void LdnStM(DecrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 581 | unsigned int Rn = BITS(inst, 16, 19); | 582 | unsigned int Rn = BITS(inst, 16, 19); |
| 582 | unsigned int i = BITS(inst, 0, 15); | 583 | unsigned int i = BITS(inst, 0, 15); |
| 583 | int count = 0; | 584 | int count = 0; |
| @@ -595,7 +596,7 @@ void LdnStM(DecrementAfter)(ARMul_State* cpu, unsigned int inst, unsigned int& v | |||
| 595 | } | 596 | } |
| 596 | } | 597 | } |
| 597 | 598 | ||
| 598 | void LnSWoUB(ScaledRegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { | 599 | static void LnSWoUB(ScaledRegisterOffset)(ARMul_State* cpu, unsigned int inst, unsigned int& virt_addr, unsigned int rw) { |
| 599 | unsigned int shift = BITS(inst, 5, 6); | 600 | unsigned int shift = BITS(inst, 5, 6); |
| 600 | unsigned int shift_imm = BITS(inst, 7, 11); | 601 | unsigned int shift_imm = BITS(inst, 7, 11); |
| 601 | unsigned int Rn = BITS(inst, 16, 19); | 602 | unsigned int Rn = BITS(inst, 16, 19); |
| @@ -1178,7 +1179,7 @@ enum DECODE_STATUS { | |||
| 1178 | 1179 | ||
| 1179 | int decode_arm_instr(uint32_t instr, int32_t *idx); | 1180 | int decode_arm_instr(uint32_t instr, int32_t *idx); |
| 1180 | 1181 | ||
| 1181 | shtop_fp_t get_shtop(unsigned int inst) { | 1182 | static shtop_fp_t get_shtop(unsigned int inst) { |
| 1182 | if (BIT(inst, 25)) { | 1183 | if (BIT(inst, 25)) { |
| 1183 | return DPO(Immediate); | 1184 | return DPO(Immediate); |
| 1184 | } else if (BITS(inst, 4, 11) == 0) { | 1185 | } else if (BITS(inst, 4, 11) == 0) { |
| @@ -1203,7 +1204,7 @@ shtop_fp_t get_shtop(unsigned int inst) { | |||
| 1203 | return nullptr; | 1204 | return nullptr; |
| 1204 | } | 1205 | } |
| 1205 | 1206 | ||
| 1206 | get_addr_fp_t get_calc_addr_op(unsigned int inst) { | 1207 | static get_addr_fp_t get_calc_addr_op(unsigned int inst) { |
| 1207 | if (BITS(inst, 24, 27) == 5 && BIT(inst, 21) == 0) { | 1208 | if (BITS(inst, 24, 27) == 5 && BIT(inst, 21) == 0) { |
| 1208 | return LnSWoUB(ImmediateOffset); | 1209 | return LnSWoUB(ImmediateOffset); |
| 1209 | } else if (BITS(inst, 24, 27) == 7 && BIT(inst, 21) == 0 && BITS(inst, 4, 11) == 0) { | 1210 | } else if (BITS(inst, 24, 27) == 7 && BIT(inst, 21) == 0 && BITS(inst, 4, 11) == 0) { |
| @@ -1257,7 +1258,7 @@ get_addr_fp_t get_calc_addr_op(unsigned int inst) { | |||
| 1257 | CITRA_IGNORE_EXIT(-1); \ | 1258 | CITRA_IGNORE_EXIT(-1); \ |
| 1258 | return nullptr; | 1259 | return nullptr; |
| 1259 | 1260 | ||
| 1260 | ARM_INST_PTR INTERPRETER_TRANSLATE(adc)(unsigned int inst, int index) | 1261 | static ARM_INST_PTR INTERPRETER_TRANSLATE(adc)(unsigned int inst, int index) |
| 1261 | { | 1262 | { |
| 1262 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(adc_inst)); | 1263 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(adc_inst)); |
| 1263 | adc_inst *inst_cream = (adc_inst *)inst_base->component; | 1264 | adc_inst *inst_cream = (adc_inst *)inst_base->component; |
| @@ -1280,7 +1281,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(adc)(unsigned int inst, int index) | |||
| 1280 | } | 1281 | } |
| 1281 | return inst_base; | 1282 | return inst_base; |
| 1282 | } | 1283 | } |
| 1283 | ARM_INST_PTR INTERPRETER_TRANSLATE(add)(unsigned int inst, int index) | 1284 | static ARM_INST_PTR INTERPRETER_TRANSLATE(add)(unsigned int inst, int index) |
| 1284 | { | 1285 | { |
| 1285 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(add_inst)); | 1286 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(add_inst)); |
| 1286 | add_inst *inst_cream = (add_inst *)inst_base->component; | 1287 | add_inst *inst_cream = (add_inst *)inst_base->component; |
| @@ -1303,7 +1304,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(add)(unsigned int inst, int index) | |||
| 1303 | } | 1304 | } |
| 1304 | return inst_base; | 1305 | return inst_base; |
| 1305 | } | 1306 | } |
| 1306 | ARM_INST_PTR INTERPRETER_TRANSLATE(and)(unsigned int inst, int index) | 1307 | static ARM_INST_PTR INTERPRETER_TRANSLATE(and)(unsigned int inst, int index) |
| 1307 | { | 1308 | { |
| 1308 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(and_inst)); | 1309 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(and_inst)); |
| 1309 | and_inst *inst_cream = (and_inst *)inst_base->component; | 1310 | and_inst *inst_cream = (and_inst *)inst_base->component; |
| @@ -1325,7 +1326,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(and)(unsigned int inst, int index) | |||
| 1325 | inst_base->br = INDIRECT_BRANCH; | 1326 | inst_base->br = INDIRECT_BRANCH; |
| 1326 | return inst_base; | 1327 | return inst_base; |
| 1327 | } | 1328 | } |
| 1328 | ARM_INST_PTR INTERPRETER_TRANSLATE(bbl)(unsigned int inst, int index) | 1329 | static ARM_INST_PTR INTERPRETER_TRANSLATE(bbl)(unsigned int inst, int index) |
| 1329 | { | 1330 | { |
| 1330 | #define POSBRANCH ((inst & 0x7fffff) << 2) | 1331 | #define POSBRANCH ((inst & 0x7fffff) << 2) |
| 1331 | #define NEGBRANCH ((0xff000000 |(inst & 0xffffff)) << 2) | 1332 | #define NEGBRANCH ((0xff000000 |(inst & 0xffffff)) << 2) |
| @@ -1347,7 +1348,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(bbl)(unsigned int inst, int index) | |||
| 1347 | 1348 | ||
| 1348 | return inst_base; | 1349 | return inst_base; |
| 1349 | } | 1350 | } |
| 1350 | ARM_INST_PTR INTERPRETER_TRANSLATE(bic)(unsigned int inst, int index) | 1351 | static ARM_INST_PTR INTERPRETER_TRANSLATE(bic)(unsigned int inst, int index) |
| 1351 | { | 1352 | { |
| 1352 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bic_inst)); | 1353 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bic_inst)); |
| 1353 | bic_inst *inst_cream = (bic_inst *)inst_base->component; | 1354 | bic_inst *inst_cream = (bic_inst *)inst_base->component; |
| @@ -1370,8 +1371,8 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(bic)(unsigned int inst, int index) | |||
| 1370 | inst_base->br = INDIRECT_BRANCH; | 1371 | inst_base->br = INDIRECT_BRANCH; |
| 1371 | return inst_base; | 1372 | return inst_base; |
| 1372 | } | 1373 | } |
| 1373 | ARM_INST_PTR INTERPRETER_TRANSLATE(bkpt)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("BKPT"); } | 1374 | static ARM_INST_PTR INTERPRETER_TRANSLATE(bkpt)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("BKPT"); } |
| 1374 | ARM_INST_PTR INTERPRETER_TRANSLATE(blx)(unsigned int inst, int index) | 1375 | static ARM_INST_PTR INTERPRETER_TRANSLATE(blx)(unsigned int inst, int index) |
| 1375 | { | 1376 | { |
| 1376 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(blx_inst)); | 1377 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(blx_inst)); |
| 1377 | blx_inst *inst_cream = (blx_inst *)inst_base->component; | 1378 | blx_inst *inst_cream = (blx_inst *)inst_base->component; |
| @@ -1389,7 +1390,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(blx)(unsigned int inst, int index) | |||
| 1389 | 1390 | ||
| 1390 | return inst_base; | 1391 | return inst_base; |
| 1391 | } | 1392 | } |
| 1392 | ARM_INST_PTR INTERPRETER_TRANSLATE(bx)(unsigned int inst, int index) | 1393 | static ARM_INST_PTR INTERPRETER_TRANSLATE(bx)(unsigned int inst, int index) |
| 1393 | { | 1394 | { |
| 1394 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bx_inst)); | 1395 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bx_inst)); |
| 1395 | bx_inst *inst_cream = (bx_inst *)inst_base->component; | 1396 | bx_inst *inst_cream = (bx_inst *)inst_base->component; |
| @@ -1402,12 +1403,12 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(bx)(unsigned int inst, int index) | |||
| 1402 | 1403 | ||
| 1403 | return inst_base; | 1404 | return inst_base; |
| 1404 | } | 1405 | } |
| 1405 | ARM_INST_PTR INTERPRETER_TRANSLATE(bxj)(unsigned int inst, int index) | 1406 | static ARM_INST_PTR INTERPRETER_TRANSLATE(bxj)(unsigned int inst, int index) |
| 1406 | { | 1407 | { |
| 1407 | return INTERPRETER_TRANSLATE(bx)(inst, index); | 1408 | return INTERPRETER_TRANSLATE(bx)(inst, index); |
| 1408 | } | 1409 | } |
| 1409 | 1410 | ||
| 1410 | ARM_INST_PTR INTERPRETER_TRANSLATE(cdp)(unsigned int inst, int index){ | 1411 | static ARM_INST_PTR INTERPRETER_TRANSLATE(cdp)(unsigned int inst, int index) { |
| 1411 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cdp_inst)); | 1412 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cdp_inst)); |
| 1412 | cdp_inst *inst_cream = (cdp_inst *)inst_base->component; | 1413 | cdp_inst *inst_cream = (cdp_inst *)inst_base->component; |
| 1413 | 1414 | ||
| @@ -1427,7 +1428,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(cdp)(unsigned int inst, int index){ | |||
| 1427 | LOG_TRACE(Core_ARM11, "inst %x index %x", inst, index); | 1428 | LOG_TRACE(Core_ARM11, "inst %x index %x", inst, index); |
| 1428 | return inst_base; | 1429 | return inst_base; |
| 1429 | } | 1430 | } |
| 1430 | ARM_INST_PTR INTERPRETER_TRANSLATE(clrex)(unsigned int inst, int index) | 1431 | static ARM_INST_PTR INTERPRETER_TRANSLATE(clrex)(unsigned int inst, int index) |
| 1431 | { | 1432 | { |
| 1432 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(clrex_inst)); | 1433 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(clrex_inst)); |
| 1433 | inst_base->cond = BITS(inst, 28, 31); | 1434 | inst_base->cond = BITS(inst, 28, 31); |
| @@ -1436,7 +1437,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(clrex)(unsigned int inst, int index) | |||
| 1436 | 1437 | ||
| 1437 | return inst_base; | 1438 | return inst_base; |
| 1438 | } | 1439 | } |
| 1439 | ARM_INST_PTR INTERPRETER_TRANSLATE(clz)(unsigned int inst, int index) | 1440 | static ARM_INST_PTR INTERPRETER_TRANSLATE(clz)(unsigned int inst, int index) |
| 1440 | { | 1441 | { |
| 1441 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(clz_inst)); | 1442 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(clz_inst)); |
| 1442 | clz_inst *inst_cream = (clz_inst *)inst_base->component; | 1443 | clz_inst *inst_cream = (clz_inst *)inst_base->component; |
| @@ -1453,7 +1454,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(clz)(unsigned int inst, int index) | |||
| 1453 | 1454 | ||
| 1454 | return inst_base; | 1455 | return inst_base; |
| 1455 | } | 1456 | } |
| 1456 | ARM_INST_PTR INTERPRETER_TRANSLATE(cmn)(unsigned int inst, int index) | 1457 | static ARM_INST_PTR INTERPRETER_TRANSLATE(cmn)(unsigned int inst, int index) |
| 1457 | { | 1458 | { |
| 1458 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cmn_inst)); | 1459 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cmn_inst)); |
| 1459 | cmn_inst *inst_cream = (cmn_inst *)inst_base->component; | 1460 | cmn_inst *inst_cream = (cmn_inst *)inst_base->component; |
| @@ -1472,7 +1473,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(cmn)(unsigned int inst, int index) | |||
| 1472 | inst_cream->shtop_func = get_shtop(inst); | 1473 | inst_cream->shtop_func = get_shtop(inst); |
| 1473 | return inst_base; | 1474 | return inst_base; |
| 1474 | } | 1475 | } |
| 1475 | ARM_INST_PTR INTERPRETER_TRANSLATE(cmp)(unsigned int inst, int index) | 1476 | static ARM_INST_PTR INTERPRETER_TRANSLATE(cmp)(unsigned int inst, int index) |
| 1476 | { | 1477 | { |
| 1477 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cmp_inst)); | 1478 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cmp_inst)); |
| 1478 | cmp_inst *inst_cream = (cmp_inst *)inst_base->component; | 1479 | cmp_inst *inst_cream = (cmp_inst *)inst_base->component; |
| @@ -1490,7 +1491,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(cmp)(unsigned int inst, int index) | |||
| 1490 | inst_cream->shtop_func = get_shtop(inst); | 1491 | inst_cream->shtop_func = get_shtop(inst); |
| 1491 | return inst_base; | 1492 | return inst_base; |
| 1492 | } | 1493 | } |
| 1493 | ARM_INST_PTR INTERPRETER_TRANSLATE(cps)(unsigned int inst, int index) | 1494 | static ARM_INST_PTR INTERPRETER_TRANSLATE(cps)(unsigned int inst, int index) |
| 1494 | { | 1495 | { |
| 1495 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cps_inst)); | 1496 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(cps_inst)); |
| 1496 | cps_inst *inst_cream = (cps_inst *)inst_base->component; | 1497 | cps_inst *inst_cream = (cps_inst *)inst_base->component; |
| @@ -1509,7 +1510,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(cps)(unsigned int inst, int index) | |||
| 1509 | 1510 | ||
| 1510 | return inst_base; | 1511 | return inst_base; |
| 1511 | } | 1512 | } |
| 1512 | ARM_INST_PTR INTERPRETER_TRANSLATE(cpy)(unsigned int inst, int index) | 1513 | static ARM_INST_PTR INTERPRETER_TRANSLATE(cpy)(unsigned int inst, int index) |
| 1513 | { | 1514 | { |
| 1514 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mov_inst)); | 1515 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mov_inst)); |
| 1515 | mov_inst *inst_cream = (mov_inst *)inst_base->component; | 1516 | mov_inst *inst_cream = (mov_inst *)inst_base->component; |
| @@ -1529,7 +1530,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(cpy)(unsigned int inst, int index) | |||
| 1529 | } | 1530 | } |
| 1530 | return inst_base; | 1531 | return inst_base; |
| 1531 | } | 1532 | } |
| 1532 | ARM_INST_PTR INTERPRETER_TRANSLATE(eor)(unsigned int inst, int index) | 1533 | static ARM_INST_PTR INTERPRETER_TRANSLATE(eor)(unsigned int inst, int index) |
| 1533 | { | 1534 | { |
| 1534 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(eor_inst)); | 1535 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(eor_inst)); |
| 1535 | eor_inst *inst_cream = (eor_inst *)inst_base->component; | 1536 | eor_inst *inst_cream = (eor_inst *)inst_base->component; |
| @@ -1552,7 +1553,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(eor)(unsigned int inst, int index) | |||
| 1552 | } | 1553 | } |
| 1553 | return inst_base; | 1554 | return inst_base; |
| 1554 | } | 1555 | } |
| 1555 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldc)(unsigned int inst, int index) | 1556 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldc)(unsigned int inst, int index) |
| 1556 | { | 1557 | { |
| 1557 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldc_inst)); | 1558 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldc_inst)); |
| 1558 | inst_base->cond = BITS(inst, 28, 31); | 1559 | inst_base->cond = BITS(inst, 28, 31); |
| @@ -1561,7 +1562,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldc)(unsigned int inst, int index) | |||
| 1561 | 1562 | ||
| 1562 | return inst_base; | 1563 | return inst_base; |
| 1563 | } | 1564 | } |
| 1564 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldm)(unsigned int inst, int index) | 1565 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldm)(unsigned int inst, int index) |
| 1565 | { | 1566 | { |
| 1566 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1567 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1567 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1568 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1578,7 +1579,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldm)(unsigned int inst, int index) | |||
| 1578 | } | 1579 | } |
| 1579 | return inst_base; | 1580 | return inst_base; |
| 1580 | } | 1581 | } |
| 1581 | ARM_INST_PTR INTERPRETER_TRANSLATE(sxth)(unsigned int inst, int index) | 1582 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sxth)(unsigned int inst, int index) |
| 1582 | { | 1583 | { |
| 1583 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtb_inst)); | 1584 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtb_inst)); |
| 1584 | sxtb_inst *inst_cream = (sxtb_inst *)inst_base->component; | 1585 | sxtb_inst *inst_cream = (sxtb_inst *)inst_base->component; |
| @@ -1596,7 +1597,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sxth)(unsigned int inst, int index) | |||
| 1596 | 1597 | ||
| 1597 | return inst_base; | 1598 | return inst_base; |
| 1598 | } | 1599 | } |
| 1599 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldr)(unsigned int inst, int index) | 1600 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldr)(unsigned int inst, int index) |
| 1600 | { | 1601 | { |
| 1601 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1602 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1602 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1603 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1615,7 +1616,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldr)(unsigned int inst, int index) | |||
| 1615 | return inst_base; | 1616 | return inst_base; |
| 1616 | } | 1617 | } |
| 1617 | 1618 | ||
| 1618 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrcond)(unsigned int inst, int index) | 1619 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrcond)(unsigned int inst, int index) |
| 1619 | { | 1620 | { |
| 1620 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1621 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1621 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1622 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1634,7 +1635,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrcond)(unsigned int inst, int index) | |||
| 1634 | return inst_base; | 1635 | return inst_base; |
| 1635 | } | 1636 | } |
| 1636 | 1637 | ||
| 1637 | ARM_INST_PTR INTERPRETER_TRANSLATE(uxth)(unsigned int inst, int index) | 1638 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uxth)(unsigned int inst, int index) |
| 1638 | { | 1639 | { |
| 1639 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxth_inst)); | 1640 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxth_inst)); |
| 1640 | uxth_inst *inst_cream = (uxth_inst *)inst_base->component; | 1641 | uxth_inst *inst_cream = (uxth_inst *)inst_base->component; |
| @@ -1652,7 +1653,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uxth)(unsigned int inst, int index) | |||
| 1652 | 1653 | ||
| 1653 | return inst_base; | 1654 | return inst_base; |
| 1654 | } | 1655 | } |
| 1655 | ARM_INST_PTR INTERPRETER_TRANSLATE(uxtah)(unsigned int inst, int index) | 1656 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtah)(unsigned int inst, int index) |
| 1656 | { | 1657 | { |
| 1657 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxtah_inst)); | 1658 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxtah_inst)); |
| 1658 | uxtah_inst *inst_cream = (uxtah_inst *)inst_base->component; | 1659 | uxtah_inst *inst_cream = (uxtah_inst *)inst_base->component; |
| @@ -1671,7 +1672,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uxtah)(unsigned int inst, int index) | |||
| 1671 | 1672 | ||
| 1672 | return inst_base; | 1673 | return inst_base; |
| 1673 | } | 1674 | } |
| 1674 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrb)(unsigned int inst, int index) | 1675 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrb)(unsigned int inst, int index) |
| 1675 | { | 1676 | { |
| 1676 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1677 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1677 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1678 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1688,7 +1689,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrb)(unsigned int inst, int index) | |||
| 1688 | } | 1689 | } |
| 1689 | return inst_base; | 1690 | return inst_base; |
| 1690 | } | 1691 | } |
| 1691 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrbt)(unsigned int inst, int index) | 1692 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrbt)(unsigned int inst, int index) |
| 1692 | { | 1693 | { |
| 1693 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1694 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1694 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; | 1695 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; |
| @@ -1711,7 +1712,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrbt)(unsigned int inst, int index) | |||
| 1711 | } | 1712 | } |
| 1712 | return inst_base; | 1713 | return inst_base; |
| 1713 | } | 1714 | } |
| 1714 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrd)(unsigned int inst, int index) | 1715 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrd)(unsigned int inst, int index) |
| 1715 | { | 1716 | { |
| 1716 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1717 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1717 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1718 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1725,7 +1726,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrd)(unsigned int inst, int index) | |||
| 1725 | 1726 | ||
| 1726 | return inst_base; | 1727 | return inst_base; |
| 1727 | } | 1728 | } |
| 1728 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrex)(unsigned int inst, int index) | 1729 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrex)(unsigned int inst, int index) |
| 1729 | { | 1730 | { |
| 1730 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 1731 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 1731 | generic_arm_inst *inst_cream = (generic_arm_inst *)inst_base->component; | 1732 | generic_arm_inst *inst_cream = (generic_arm_inst *)inst_base->component; |
| @@ -1739,19 +1740,19 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrex)(unsigned int inst, int index) | |||
| 1739 | 1740 | ||
| 1740 | return inst_base; | 1741 | return inst_base; |
| 1741 | } | 1742 | } |
| 1742 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexb)(unsigned int inst, int index) | 1743 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexb)(unsigned int inst, int index) |
| 1743 | { | 1744 | { |
| 1744 | return INTERPRETER_TRANSLATE(ldrex)(inst, index); | 1745 | return INTERPRETER_TRANSLATE(ldrex)(inst, index); |
| 1745 | } | 1746 | } |
| 1746 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexh)(unsigned int inst, int index) | 1747 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexh)(unsigned int inst, int index) |
| 1747 | { | 1748 | { |
| 1748 | return INTERPRETER_TRANSLATE(ldrex)(inst, index); | 1749 | return INTERPRETER_TRANSLATE(ldrex)(inst, index); |
| 1749 | } | 1750 | } |
| 1750 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexd)(unsigned int inst, int index) | 1751 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrexd)(unsigned int inst, int index) |
| 1751 | { | 1752 | { |
| 1752 | return INTERPRETER_TRANSLATE(ldrex)(inst, index); | 1753 | return INTERPRETER_TRANSLATE(ldrex)(inst, index); |
| 1753 | } | 1754 | } |
| 1754 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrh)(unsigned int inst, int index) | 1755 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrh)(unsigned int inst, int index) |
| 1755 | { | 1756 | { |
| 1756 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1757 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1757 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1758 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1768,7 +1769,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrh)(unsigned int inst, int index) | |||
| 1768 | } | 1769 | } |
| 1769 | return inst_base; | 1770 | return inst_base; |
| 1770 | } | 1771 | } |
| 1771 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsb)(unsigned int inst, int index) | 1772 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsb)(unsigned int inst, int index) |
| 1772 | { | 1773 | { |
| 1773 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1774 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1774 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1775 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1785,7 +1786,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsb)(unsigned int inst, int index) | |||
| 1785 | } | 1786 | } |
| 1786 | return inst_base; | 1787 | return inst_base; |
| 1787 | } | 1788 | } |
| 1788 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsh)(unsigned int inst, int index) | 1789 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsh)(unsigned int inst, int index) |
| 1789 | { | 1790 | { |
| 1790 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1791 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1791 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 1792 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -1802,7 +1803,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrsh)(unsigned int inst, int index) | |||
| 1802 | } | 1803 | } |
| 1803 | return inst_base; | 1804 | return inst_base; |
| 1804 | } | 1805 | } |
| 1805 | ARM_INST_PTR INTERPRETER_TRANSLATE(ldrt)(unsigned int inst, int index) | 1806 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ldrt)(unsigned int inst, int index) |
| 1806 | { | 1807 | { |
| 1807 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 1808 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 1808 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; | 1809 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; |
| @@ -1830,7 +1831,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ldrt)(unsigned int inst, int index) | |||
| 1830 | } | 1831 | } |
| 1831 | return inst_base; | 1832 | return inst_base; |
| 1832 | } | 1833 | } |
| 1833 | ARM_INST_PTR INTERPRETER_TRANSLATE(mcr)(unsigned int inst, int index) | 1834 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mcr)(unsigned int inst, int index) |
| 1834 | { | 1835 | { |
| 1835 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mcr_inst)); | 1836 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mcr_inst)); |
| 1836 | mcr_inst *inst_cream = (mcr_inst *)inst_base->component; | 1837 | mcr_inst *inst_cream = (mcr_inst *)inst_base->component; |
| @@ -1847,8 +1848,8 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(mcr)(unsigned int inst, int index) | |||
| 1847 | inst_cream->inst = inst; | 1848 | inst_cream->inst = inst; |
| 1848 | return inst_base; | 1849 | return inst_base; |
| 1849 | } | 1850 | } |
| 1850 | ARM_INST_PTR INTERPRETER_TRANSLATE(mcrr)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("MCRR"); } | 1851 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mcrr)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("MCRR"); } |
| 1851 | ARM_INST_PTR INTERPRETER_TRANSLATE(mla)(unsigned int inst, int index) | 1852 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mla)(unsigned int inst, int index) |
| 1852 | { | 1853 | { |
| 1853 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mla_inst)); | 1854 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mla_inst)); |
| 1854 | mla_inst *inst_cream = (mla_inst *)inst_base->component; | 1855 | mla_inst *inst_cream = (mla_inst *)inst_base->component; |
| @@ -1869,7 +1870,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(mla)(unsigned int inst, int index) | |||
| 1869 | 1870 | ||
| 1870 | return inst_base; | 1871 | return inst_base; |
| 1871 | } | 1872 | } |
| 1872 | ARM_INST_PTR INTERPRETER_TRANSLATE(mov)(unsigned int inst, int index) | 1873 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mov)(unsigned int inst, int index) |
| 1873 | { | 1874 | { |
| 1874 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mov_inst)); | 1875 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mov_inst)); |
| 1875 | mov_inst *inst_cream = (mov_inst *)inst_base->component; | 1876 | mov_inst *inst_cream = (mov_inst *)inst_base->component; |
| @@ -1889,7 +1890,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(mov)(unsigned int inst, int index) | |||
| 1889 | } | 1890 | } |
| 1890 | return inst_base; | 1891 | return inst_base; |
| 1891 | } | 1892 | } |
| 1892 | ARM_INST_PTR INTERPRETER_TRANSLATE(mrc)(unsigned int inst, int index) | 1893 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mrc)(unsigned int inst, int index) |
| 1893 | { | 1894 | { |
| 1894 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mrc_inst)); | 1895 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mrc_inst)); |
| 1895 | mrc_inst *inst_cream = (mrc_inst *)inst_base->component; | 1896 | mrc_inst *inst_cream = (mrc_inst *)inst_base->component; |
| @@ -1906,8 +1907,8 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(mrc)(unsigned int inst, int index) | |||
| 1906 | inst_cream->inst = inst; | 1907 | inst_cream->inst = inst; |
| 1907 | return inst_base; | 1908 | return inst_base; |
| 1908 | } | 1909 | } |
| 1909 | ARM_INST_PTR INTERPRETER_TRANSLATE(mrrc)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("MRRC"); } | 1910 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mrrc)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("MRRC"); } |
| 1910 | ARM_INST_PTR INTERPRETER_TRANSLATE(mrs)(unsigned int inst, int index) | 1911 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mrs)(unsigned int inst, int index) |
| 1911 | { | 1912 | { |
| 1912 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mrs_inst)); | 1913 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mrs_inst)); |
| 1913 | mrs_inst *inst_cream = (mrs_inst *)inst_base->component; | 1914 | mrs_inst *inst_cream = (mrs_inst *)inst_base->component; |
| @@ -1921,7 +1922,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(mrs)(unsigned int inst, int index) | |||
| 1921 | 1922 | ||
| 1922 | return inst_base; | 1923 | return inst_base; |
| 1923 | } | 1924 | } |
| 1924 | ARM_INST_PTR INTERPRETER_TRANSLATE(msr)(unsigned int inst, int index) | 1925 | static ARM_INST_PTR INTERPRETER_TRANSLATE(msr)(unsigned int inst, int index) |
| 1925 | { | 1926 | { |
| 1926 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(msr_inst)); | 1927 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(msr_inst)); |
| 1927 | msr_inst *inst_cream = (msr_inst *)inst_base->component; | 1928 | msr_inst *inst_cream = (msr_inst *)inst_base->component; |
| @@ -1936,7 +1937,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(msr)(unsigned int inst, int index) | |||
| 1936 | 1937 | ||
| 1937 | return inst_base; | 1938 | return inst_base; |
| 1938 | } | 1939 | } |
| 1939 | ARM_INST_PTR INTERPRETER_TRANSLATE(mul)(unsigned int inst, int index) | 1940 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mul)(unsigned int inst, int index) |
| 1940 | { | 1941 | { |
| 1941 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mul_inst)); | 1942 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mul_inst)); |
| 1942 | mul_inst *inst_cream = (mul_inst *)inst_base->component; | 1943 | mul_inst *inst_cream = (mul_inst *)inst_base->component; |
| @@ -1955,7 +1956,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(mul)(unsigned int inst, int index) | |||
| 1955 | inst_base->load_r15 = 1; | 1956 | inst_base->load_r15 = 1; |
| 1956 | return inst_base; | 1957 | return inst_base; |
| 1957 | } | 1958 | } |
| 1958 | ARM_INST_PTR INTERPRETER_TRANSLATE(mvn)(unsigned int inst, int index) | 1959 | static ARM_INST_PTR INTERPRETER_TRANSLATE(mvn)(unsigned int inst, int index) |
| 1959 | { | 1960 | { |
| 1960 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mvn_inst)); | 1961 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(mvn_inst)); |
| 1961 | mvn_inst *inst_cream = (mvn_inst *)inst_base->component; | 1962 | mvn_inst *inst_cream = (mvn_inst *)inst_base->component; |
| @@ -1976,7 +1977,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(mvn)(unsigned int inst, int index) | |||
| 1976 | return inst_base; | 1977 | return inst_base; |
| 1977 | 1978 | ||
| 1978 | } | 1979 | } |
| 1979 | ARM_INST_PTR INTERPRETER_TRANSLATE(orr)(unsigned int inst, int index) | 1980 | static ARM_INST_PTR INTERPRETER_TRANSLATE(orr)(unsigned int inst, int index) |
| 1980 | { | 1981 | { |
| 1981 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(orr_inst)); | 1982 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(orr_inst)); |
| 1982 | orr_inst *inst_cream = (orr_inst *)inst_base->component; | 1983 | orr_inst *inst_cream = (orr_inst *)inst_base->component; |
| @@ -2001,7 +2002,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(orr)(unsigned int inst, int index) | |||
| 2001 | return inst_base; | 2002 | return inst_base; |
| 2002 | } | 2003 | } |
| 2003 | 2004 | ||
| 2004 | ARM_INST_PTR INTERPRETER_TRANSLATE(pkhbt)(unsigned int inst, int index) | 2005 | static ARM_INST_PTR INTERPRETER_TRANSLATE(pkhbt)(unsigned int inst, int index) |
| 2005 | { | 2006 | { |
| 2006 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(pkh_inst)); | 2007 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(pkh_inst)); |
| 2007 | pkh_inst *inst_cream = (pkh_inst *)inst_base->component; | 2008 | pkh_inst *inst_cream = (pkh_inst *)inst_base->component; |
| @@ -2019,12 +2020,12 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(pkhbt)(unsigned int inst, int index) | |||
| 2019 | return inst_base; | 2020 | return inst_base; |
| 2020 | } | 2021 | } |
| 2021 | 2022 | ||
| 2022 | ARM_INST_PTR INTERPRETER_TRANSLATE(pkhtb)(unsigned int inst, int index) | 2023 | static ARM_INST_PTR INTERPRETER_TRANSLATE(pkhtb)(unsigned int inst, int index) |
| 2023 | { | 2024 | { |
| 2024 | return INTERPRETER_TRANSLATE(pkhbt)(inst, index); | 2025 | return INTERPRETER_TRANSLATE(pkhbt)(inst, index); |
| 2025 | } | 2026 | } |
| 2026 | 2027 | ||
| 2027 | ARM_INST_PTR INTERPRETER_TRANSLATE(pld)(unsigned int inst, int index) | 2028 | static ARM_INST_PTR INTERPRETER_TRANSLATE(pld)(unsigned int inst, int index) |
| 2028 | { | 2029 | { |
| 2029 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(pld_inst)); | 2030 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(pld_inst)); |
| 2030 | 2031 | ||
| @@ -2036,7 +2037,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(pld)(unsigned int inst, int index) | |||
| 2036 | return inst_base; | 2037 | return inst_base; |
| 2037 | } | 2038 | } |
| 2038 | 2039 | ||
| 2039 | ARM_INST_PTR INTERPRETER_TRANSLATE(qadd)(unsigned int inst, int index) | 2040 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qadd)(unsigned int inst, int index) |
| 2040 | { | 2041 | { |
| 2041 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 2042 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 2042 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 2043 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -2053,20 +2054,20 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(qadd)(unsigned int inst, int index) | |||
| 2053 | 2054 | ||
| 2054 | return inst_base; | 2055 | return inst_base; |
| 2055 | } | 2056 | } |
| 2056 | ARM_INST_PTR INTERPRETER_TRANSLATE(qdadd)(unsigned int inst, int index) | 2057 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qdadd)(unsigned int inst, int index) |
| 2057 | { | 2058 | { |
| 2058 | return INTERPRETER_TRANSLATE(qadd)(inst, index); | 2059 | return INTERPRETER_TRANSLATE(qadd)(inst, index); |
| 2059 | } | 2060 | } |
| 2060 | ARM_INST_PTR INTERPRETER_TRANSLATE(qdsub)(unsigned int inst, int index) | 2061 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qdsub)(unsigned int inst, int index) |
| 2061 | { | 2062 | { |
| 2062 | return INTERPRETER_TRANSLATE(qadd)(inst, index); | 2063 | return INTERPRETER_TRANSLATE(qadd)(inst, index); |
| 2063 | } | 2064 | } |
| 2064 | ARM_INST_PTR INTERPRETER_TRANSLATE(qsub)(unsigned int inst, int index) | 2065 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qsub)(unsigned int inst, int index) |
| 2065 | { | 2066 | { |
| 2066 | return INTERPRETER_TRANSLATE(qadd)(inst, index); | 2067 | return INTERPRETER_TRANSLATE(qadd)(inst, index); |
| 2067 | } | 2068 | } |
| 2068 | 2069 | ||
| 2069 | ARM_INST_PTR INTERPRETER_TRANSLATE(qadd8)(unsigned int inst, int index) | 2070 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qadd8)(unsigned int inst, int index) |
| 2070 | { | 2071 | { |
| 2071 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 2072 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 2072 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 2073 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -2084,28 +2085,28 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(qadd8)(unsigned int inst, int index) | |||
| 2084 | 2085 | ||
| 2085 | return inst_base; | 2086 | return inst_base; |
| 2086 | } | 2087 | } |
| 2087 | ARM_INST_PTR INTERPRETER_TRANSLATE(qadd16)(unsigned int inst, int index) | 2088 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qadd16)(unsigned int inst, int index) |
| 2088 | { | 2089 | { |
| 2089 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); | 2090 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); |
| 2090 | } | 2091 | } |
| 2091 | ARM_INST_PTR INTERPRETER_TRANSLATE(qaddsubx)(unsigned int inst, int index) | 2092 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qaddsubx)(unsigned int inst, int index) |
| 2092 | { | 2093 | { |
| 2093 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); | 2094 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); |
| 2094 | } | 2095 | } |
| 2095 | ARM_INST_PTR INTERPRETER_TRANSLATE(qsub8)(unsigned int inst, int index) | 2096 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qsub8)(unsigned int inst, int index) |
| 2096 | { | 2097 | { |
| 2097 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); | 2098 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); |
| 2098 | } | 2099 | } |
| 2099 | ARM_INST_PTR INTERPRETER_TRANSLATE(qsub16)(unsigned int inst, int index) | 2100 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qsub16)(unsigned int inst, int index) |
| 2100 | { | 2101 | { |
| 2101 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); | 2102 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); |
| 2102 | } | 2103 | } |
| 2103 | ARM_INST_PTR INTERPRETER_TRANSLATE(qsubaddx)(unsigned int inst, int index) | 2104 | static ARM_INST_PTR INTERPRETER_TRANSLATE(qsubaddx)(unsigned int inst, int index) |
| 2104 | { | 2105 | { |
| 2105 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); | 2106 | return INTERPRETER_TRANSLATE(qadd8)(inst, index); |
| 2106 | } | 2107 | } |
| 2107 | 2108 | ||
| 2108 | ARM_INST_PTR INTERPRETER_TRANSLATE(rev)(unsigned int inst, int index) | 2109 | static ARM_INST_PTR INTERPRETER_TRANSLATE(rev)(unsigned int inst, int index) |
| 2109 | { | 2110 | { |
| 2110 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(rev_inst)); | 2111 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(rev_inst)); |
| 2111 | rev_inst* const inst_cream = (rev_inst*)inst_base->component; | 2112 | rev_inst* const inst_cream = (rev_inst*)inst_base->component; |
| @@ -2122,17 +2123,17 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(rev)(unsigned int inst, int index) | |||
| 2122 | 2123 | ||
| 2123 | return inst_base; | 2124 | return inst_base; |
| 2124 | } | 2125 | } |
| 2125 | ARM_INST_PTR INTERPRETER_TRANSLATE(rev16)(unsigned int inst, int index) | 2126 | static ARM_INST_PTR INTERPRETER_TRANSLATE(rev16)(unsigned int inst, int index) |
| 2126 | { | 2127 | { |
| 2127 | return INTERPRETER_TRANSLATE(rev)(inst, index); | 2128 | return INTERPRETER_TRANSLATE(rev)(inst, index); |
| 2128 | } | 2129 | } |
| 2129 | ARM_INST_PTR INTERPRETER_TRANSLATE(revsh)(unsigned int inst, int index) | 2130 | static ARM_INST_PTR INTERPRETER_TRANSLATE(revsh)(unsigned int inst, int index) |
| 2130 | { | 2131 | { |
| 2131 | return INTERPRETER_TRANSLATE(rev)(inst, index); | 2132 | return INTERPRETER_TRANSLATE(rev)(inst, index); |
| 2132 | } | 2133 | } |
| 2133 | 2134 | ||
| 2134 | ARM_INST_PTR INTERPRETER_TRANSLATE(rfe)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("RFE"); } | 2135 | static ARM_INST_PTR INTERPRETER_TRANSLATE(rfe)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("RFE"); } |
| 2135 | ARM_INST_PTR INTERPRETER_TRANSLATE(rsb)(unsigned int inst, int index) | 2136 | static ARM_INST_PTR INTERPRETER_TRANSLATE(rsb)(unsigned int inst, int index) |
| 2136 | { | 2137 | { |
| 2137 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(rsb_inst)); | 2138 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(rsb_inst)); |
| 2138 | rsb_inst *inst_cream = (rsb_inst *)inst_base->component; | 2139 | rsb_inst *inst_cream = (rsb_inst *)inst_base->component; |
| @@ -2156,7 +2157,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(rsb)(unsigned int inst, int index) | |||
| 2156 | } | 2157 | } |
| 2157 | return inst_base; | 2158 | return inst_base; |
| 2158 | } | 2159 | } |
| 2159 | ARM_INST_PTR INTERPRETER_TRANSLATE(rsc)(unsigned int inst, int index) | 2160 | static ARM_INST_PTR INTERPRETER_TRANSLATE(rsc)(unsigned int inst, int index) |
| 2160 | { | 2161 | { |
| 2161 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(rsc_inst)); | 2162 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(rsc_inst)); |
| 2162 | rsc_inst *inst_cream = (rsc_inst *)inst_base->component; | 2163 | rsc_inst *inst_cream = (rsc_inst *)inst_base->component; |
| @@ -2180,7 +2181,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(rsc)(unsigned int inst, int index) | |||
| 2180 | } | 2181 | } |
| 2181 | return inst_base; | 2182 | return inst_base; |
| 2182 | } | 2183 | } |
| 2183 | ARM_INST_PTR INTERPRETER_TRANSLATE(sadd8)(unsigned int inst, int index) | 2184 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sadd8)(unsigned int inst, int index) |
| 2184 | { | 2185 | { |
| 2185 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 2186 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 2186 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 2187 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -2198,28 +2199,28 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sadd8)(unsigned int inst, int index) | |||
| 2198 | 2199 | ||
| 2199 | return inst_base; | 2200 | return inst_base; |
| 2200 | } | 2201 | } |
| 2201 | ARM_INST_PTR INTERPRETER_TRANSLATE(sadd16)(unsigned int inst, int index) | 2202 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sadd16)(unsigned int inst, int index) |
| 2202 | { | 2203 | { |
| 2203 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); | 2204 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); |
| 2204 | } | 2205 | } |
| 2205 | ARM_INST_PTR INTERPRETER_TRANSLATE(saddsubx)(unsigned int inst, int index) | 2206 | static ARM_INST_PTR INTERPRETER_TRANSLATE(saddsubx)(unsigned int inst, int index) |
| 2206 | { | 2207 | { |
| 2207 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); | 2208 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); |
| 2208 | } | 2209 | } |
| 2209 | ARM_INST_PTR INTERPRETER_TRANSLATE(ssub8)(unsigned int inst, int index) | 2210 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ssub8)(unsigned int inst, int index) |
| 2210 | { | 2211 | { |
| 2211 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); | 2212 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); |
| 2212 | } | 2213 | } |
| 2213 | ARM_INST_PTR INTERPRETER_TRANSLATE(ssub16)(unsigned int inst, int index) | 2214 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ssub16)(unsigned int inst, int index) |
| 2214 | { | 2215 | { |
| 2215 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); | 2216 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); |
| 2216 | } | 2217 | } |
| 2217 | ARM_INST_PTR INTERPRETER_TRANSLATE(ssubaddx)(unsigned int inst, int index) | 2218 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ssubaddx)(unsigned int inst, int index) |
| 2218 | { | 2219 | { |
| 2219 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); | 2220 | return INTERPRETER_TRANSLATE(sadd8)(inst, index); |
| 2220 | } | 2221 | } |
| 2221 | 2222 | ||
| 2222 | ARM_INST_PTR INTERPRETER_TRANSLATE(sbc)(unsigned int inst, int index) | 2223 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sbc)(unsigned int inst, int index) |
| 2223 | { | 2224 | { |
| 2224 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sbc_inst)); | 2225 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sbc_inst)); |
| 2225 | sbc_inst *inst_cream = (sbc_inst *)inst_base->component; | 2226 | sbc_inst *inst_cream = (sbc_inst *)inst_base->component; |
| @@ -2243,7 +2244,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sbc)(unsigned int inst, int index) | |||
| 2243 | } | 2244 | } |
| 2244 | return inst_base; | 2245 | return inst_base; |
| 2245 | } | 2246 | } |
| 2246 | ARM_INST_PTR INTERPRETER_TRANSLATE(sel)(unsigned int inst, int index) | 2247 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sel)(unsigned int inst, int index) |
| 2247 | { | 2248 | { |
| 2248 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 2249 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 2249 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 2250 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -2262,9 +2263,9 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sel)(unsigned int inst, int index) | |||
| 2262 | return inst_base; | 2263 | return inst_base; |
| 2263 | } | 2264 | } |
| 2264 | 2265 | ||
| 2265 | ARM_INST_PTR INTERPRETER_TRANSLATE(setend)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("SETEND"); } | 2266 | static ARM_INST_PTR INTERPRETER_TRANSLATE(setend)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("SETEND"); } |
| 2266 | 2267 | ||
| 2267 | ARM_INST_PTR INTERPRETER_TRANSLATE(shadd8)(unsigned int inst, int index) | 2268 | static ARM_INST_PTR INTERPRETER_TRANSLATE(shadd8)(unsigned int inst, int index) |
| 2268 | { | 2269 | { |
| 2269 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 2270 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 2270 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 2271 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -2282,28 +2283,28 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(shadd8)(unsigned int inst, int index) | |||
| 2282 | 2283 | ||
| 2283 | return inst_base; | 2284 | return inst_base; |
| 2284 | } | 2285 | } |
| 2285 | ARM_INST_PTR INTERPRETER_TRANSLATE(shadd16)(unsigned int inst, int index) | 2286 | static ARM_INST_PTR INTERPRETER_TRANSLATE(shadd16)(unsigned int inst, int index) |
| 2286 | { | 2287 | { |
| 2287 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); | 2288 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); |
| 2288 | } | 2289 | } |
| 2289 | ARM_INST_PTR INTERPRETER_TRANSLATE(shaddsubx)(unsigned int inst, int index) | 2290 | static ARM_INST_PTR INTERPRETER_TRANSLATE(shaddsubx)(unsigned int inst, int index) |
| 2290 | { | 2291 | { |
| 2291 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); | 2292 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); |
| 2292 | } | 2293 | } |
| 2293 | ARM_INST_PTR INTERPRETER_TRANSLATE(shsub8)(unsigned int inst, int index) | 2294 | static ARM_INST_PTR INTERPRETER_TRANSLATE(shsub8)(unsigned int inst, int index) |
| 2294 | { | 2295 | { |
| 2295 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); | 2296 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); |
| 2296 | } | 2297 | } |
| 2297 | ARM_INST_PTR INTERPRETER_TRANSLATE(shsub16)(unsigned int inst, int index) | 2298 | static ARM_INST_PTR INTERPRETER_TRANSLATE(shsub16)(unsigned int inst, int index) |
| 2298 | { | 2299 | { |
| 2299 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); | 2300 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); |
| 2300 | } | 2301 | } |
| 2301 | ARM_INST_PTR INTERPRETER_TRANSLATE(shsubaddx)(unsigned int inst, int index) | 2302 | static ARM_INST_PTR INTERPRETER_TRANSLATE(shsubaddx)(unsigned int inst, int index) |
| 2302 | { | 2303 | { |
| 2303 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); | 2304 | return INTERPRETER_TRANSLATE(shadd8)(inst, index); |
| 2304 | } | 2305 | } |
| 2305 | 2306 | ||
| 2306 | ARM_INST_PTR INTERPRETER_TRANSLATE(smla)(unsigned int inst, int index) | 2307 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smla)(unsigned int inst, int index) |
| 2307 | { | 2308 | { |
| 2308 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(smla_inst)); | 2309 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(smla_inst)); |
| 2309 | smla_inst *inst_cream = (smla_inst *)inst_base->component; | 2310 | smla_inst *inst_cream = (smla_inst *)inst_base->component; |
| @@ -2323,7 +2324,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smla)(unsigned int inst, int index) | |||
| 2323 | return inst_base; | 2324 | return inst_base; |
| 2324 | } | 2325 | } |
| 2325 | 2326 | ||
| 2326 | ARM_INST_PTR INTERPRETER_TRANSLATE(smlad)(unsigned int inst, int index) | 2327 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smlad)(unsigned int inst, int index) |
| 2327 | { | 2328 | { |
| 2328 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); | 2329 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); |
| 2329 | smlad_inst* const inst_cream = (smlad_inst*)inst_base->component; | 2330 | smlad_inst* const inst_cream = (smlad_inst*)inst_base->component; |
| @@ -2343,20 +2344,20 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smlad)(unsigned int inst, int index) | |||
| 2343 | 2344 | ||
| 2344 | return inst_base; | 2345 | return inst_base; |
| 2345 | } | 2346 | } |
| 2346 | ARM_INST_PTR INTERPRETER_TRANSLATE(smuad)(unsigned int inst, int index) | 2347 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smuad)(unsigned int inst, int index) |
| 2347 | { | 2348 | { |
| 2348 | return INTERPRETER_TRANSLATE(smlad)(inst, index); | 2349 | return INTERPRETER_TRANSLATE(smlad)(inst, index); |
| 2349 | } | 2350 | } |
| 2350 | ARM_INST_PTR INTERPRETER_TRANSLATE(smusd)(unsigned int inst, int index) | 2351 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smusd)(unsigned int inst, int index) |
| 2351 | { | 2352 | { |
| 2352 | return INTERPRETER_TRANSLATE(smlad)(inst, index); | 2353 | return INTERPRETER_TRANSLATE(smlad)(inst, index); |
| 2353 | } | 2354 | } |
| 2354 | ARM_INST_PTR INTERPRETER_TRANSLATE(smlsd)(unsigned int inst, int index) | 2355 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smlsd)(unsigned int inst, int index) |
| 2355 | { | 2356 | { |
| 2356 | return INTERPRETER_TRANSLATE(smlad)(inst, index); | 2357 | return INTERPRETER_TRANSLATE(smlad)(inst, index); |
| 2357 | } | 2358 | } |
| 2358 | 2359 | ||
| 2359 | ARM_INST_PTR INTERPRETER_TRANSLATE(smlal)(unsigned int inst, int index) | 2360 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smlal)(unsigned int inst, int index) |
| 2360 | { | 2361 | { |
| 2361 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umlal_inst)); | 2362 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umlal_inst)); |
| 2362 | umlal_inst *inst_cream = (umlal_inst *)inst_base->component; | 2363 | umlal_inst *inst_cream = (umlal_inst *)inst_base->component; |
| @@ -2377,7 +2378,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smlal)(unsigned int inst, int index) | |||
| 2377 | return inst_base; | 2378 | return inst_base; |
| 2378 | } | 2379 | } |
| 2379 | 2380 | ||
| 2380 | ARM_INST_PTR INTERPRETER_TRANSLATE(smlalxy)(unsigned int inst, int index) | 2381 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smlalxy)(unsigned int inst, int index) |
| 2381 | { | 2382 | { |
| 2382 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlalxy_inst)); | 2383 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlalxy_inst)); |
| 2383 | smlalxy_inst* const inst_cream = (smlalxy_inst*)inst_base->component; | 2384 | smlalxy_inst* const inst_cream = (smlalxy_inst*)inst_base->component; |
| @@ -2397,7 +2398,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smlalxy)(unsigned int inst, int index) | |||
| 2397 | return inst_base; | 2398 | return inst_base; |
| 2398 | } | 2399 | } |
| 2399 | 2400 | ||
| 2400 | ARM_INST_PTR INTERPRETER_TRANSLATE(smlaw)(unsigned int inst, int index) | 2401 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smlaw)(unsigned int inst, int index) |
| 2401 | { | 2402 | { |
| 2402 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); | 2403 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); |
| 2403 | smlad_inst* const inst_cream = (smlad_inst*)inst_base->component; | 2404 | smlad_inst* const inst_cream = (smlad_inst*)inst_base->component; |
| @@ -2416,7 +2417,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smlaw)(unsigned int inst, int index) | |||
| 2416 | return inst_base; | 2417 | return inst_base; |
| 2417 | } | 2418 | } |
| 2418 | 2419 | ||
| 2419 | ARM_INST_PTR INTERPRETER_TRANSLATE(smlald)(unsigned int inst, int index) | 2420 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smlald)(unsigned int inst, int index) |
| 2420 | { | 2421 | { |
| 2421 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlald_inst)); | 2422 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlald_inst)); |
| 2422 | smlald_inst* const inst_cream = (smlald_inst*)inst_base->component; | 2423 | smlald_inst* const inst_cream = (smlald_inst*)inst_base->component; |
| @@ -2436,12 +2437,12 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smlald)(unsigned int inst, int index) | |||
| 2436 | 2437 | ||
| 2437 | return inst_base; | 2438 | return inst_base; |
| 2438 | } | 2439 | } |
| 2439 | ARM_INST_PTR INTERPRETER_TRANSLATE(smlsld)(unsigned int inst, int index) | 2440 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smlsld)(unsigned int inst, int index) |
| 2440 | { | 2441 | { |
| 2441 | return INTERPRETER_TRANSLATE(smlald)(inst, index); | 2442 | return INTERPRETER_TRANSLATE(smlald)(inst, index); |
| 2442 | } | 2443 | } |
| 2443 | 2444 | ||
| 2444 | ARM_INST_PTR INTERPRETER_TRANSLATE(smmla)(unsigned int inst, int index) | 2445 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smmla)(unsigned int inst, int index) |
| 2445 | { | 2446 | { |
| 2446 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); | 2447 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); |
| 2447 | smlad_inst* const inst_cream = (smlad_inst*)inst_base->component; | 2448 | smlad_inst* const inst_cream = (smlad_inst*)inst_base->component; |
| @@ -2461,16 +2462,16 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smmla)(unsigned int inst, int index) | |||
| 2461 | 2462 | ||
| 2462 | return inst_base; | 2463 | return inst_base; |
| 2463 | } | 2464 | } |
| 2464 | ARM_INST_PTR INTERPRETER_TRANSLATE(smmls)(unsigned int inst, int index) | 2465 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smmls)(unsigned int inst, int index) |
| 2465 | { | 2466 | { |
| 2466 | return INTERPRETER_TRANSLATE(smmla)(inst, index); | 2467 | return INTERPRETER_TRANSLATE(smmla)(inst, index); |
| 2467 | } | 2468 | } |
| 2468 | ARM_INST_PTR INTERPRETER_TRANSLATE(smmul)(unsigned int inst, int index) | 2469 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smmul)(unsigned int inst, int index) |
| 2469 | { | 2470 | { |
| 2470 | return INTERPRETER_TRANSLATE(smmla)(inst, index); | 2471 | return INTERPRETER_TRANSLATE(smmla)(inst, index); |
| 2471 | } | 2472 | } |
| 2472 | 2473 | ||
| 2473 | ARM_INST_PTR INTERPRETER_TRANSLATE(smul)(unsigned int inst, int index) | 2474 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smul)(unsigned int inst, int index) |
| 2474 | { | 2475 | { |
| 2475 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(smul_inst)); | 2476 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(smul_inst)); |
| 2476 | smul_inst *inst_cream = (smul_inst *)inst_base->component; | 2477 | smul_inst *inst_cream = (smul_inst *)inst_base->component; |
| @@ -2492,7 +2493,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smul)(unsigned int inst, int index) | |||
| 2492 | return inst_base; | 2493 | return inst_base; |
| 2493 | 2494 | ||
| 2494 | } | 2495 | } |
| 2495 | ARM_INST_PTR INTERPRETER_TRANSLATE(smull)(unsigned int inst, int index) | 2496 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smull)(unsigned int inst, int index) |
| 2496 | { | 2497 | { |
| 2497 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umull_inst)); | 2498 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umull_inst)); |
| 2498 | umull_inst *inst_cream = (umull_inst *)inst_base->component; | 2499 | umull_inst *inst_cream = (umull_inst *)inst_base->component; |
| @@ -2513,7 +2514,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smull)(unsigned int inst, int index) | |||
| 2513 | return inst_base; | 2514 | return inst_base; |
| 2514 | } | 2515 | } |
| 2515 | 2516 | ||
| 2516 | ARM_INST_PTR INTERPRETER_TRANSLATE(smulw)(unsigned int inst, int index) | 2517 | static ARM_INST_PTR INTERPRETER_TRANSLATE(smulw)(unsigned int inst, int index) |
| 2517 | { | 2518 | { |
| 2518 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); | 2519 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(smlad_inst)); |
| 2519 | smlad_inst *inst_cream = (smlad_inst *)inst_base->component; | 2520 | smlad_inst *inst_cream = (smlad_inst *)inst_base->component; |
| @@ -2532,8 +2533,8 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(smulw)(unsigned int inst, int index) | |||
| 2532 | inst_base->load_r15 = 1; | 2533 | inst_base->load_r15 = 1; |
| 2533 | return inst_base; | 2534 | return inst_base; |
| 2534 | } | 2535 | } |
| 2535 | ARM_INST_PTR INTERPRETER_TRANSLATE(srs)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("SRS"); } | 2536 | static ARM_INST_PTR INTERPRETER_TRANSLATE(srs)(unsigned int inst, int index) { UNIMPLEMENTED_INSTRUCTION("SRS"); } |
| 2536 | ARM_INST_PTR INTERPRETER_TRANSLATE(ssat)(unsigned int inst, int index) | 2537 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ssat)(unsigned int inst, int index) |
| 2537 | { | 2538 | { |
| 2538 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ssat_inst)); | 2539 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ssat_inst)); |
| 2539 | ssat_inst* const inst_cream = (ssat_inst*)inst_base->component; | 2540 | ssat_inst* const inst_cream = (ssat_inst*)inst_base->component; |
| @@ -2551,7 +2552,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ssat)(unsigned int inst, int index) | |||
| 2551 | 2552 | ||
| 2552 | return inst_base; | 2553 | return inst_base; |
| 2553 | } | 2554 | } |
| 2554 | ARM_INST_PTR INTERPRETER_TRANSLATE(ssat16)(unsigned int inst, int index) | 2555 | static ARM_INST_PTR INTERPRETER_TRANSLATE(ssat16)(unsigned int inst, int index) |
| 2555 | { | 2556 | { |
| 2556 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ssat_inst)); | 2557 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ssat_inst)); |
| 2557 | ssat_inst* const inst_cream = (ssat_inst*)inst_base->component; | 2558 | ssat_inst* const inst_cream = (ssat_inst*)inst_base->component; |
| @@ -2568,7 +2569,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(ssat16)(unsigned int inst, int index) | |||
| 2568 | return inst_base; | 2569 | return inst_base; |
| 2569 | } | 2570 | } |
| 2570 | 2571 | ||
| 2571 | ARM_INST_PTR INTERPRETER_TRANSLATE(stc)(unsigned int inst, int index) | 2572 | static ARM_INST_PTR INTERPRETER_TRANSLATE(stc)(unsigned int inst, int index) |
| 2572 | { | 2573 | { |
| 2573 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(stc_inst)); | 2574 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(stc_inst)); |
| 2574 | inst_base->cond = BITS(inst, 28, 31); | 2575 | inst_base->cond = BITS(inst, 28, 31); |
| @@ -2577,7 +2578,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(stc)(unsigned int inst, int index) | |||
| 2577 | 2578 | ||
| 2578 | return inst_base; | 2579 | return inst_base; |
| 2579 | } | 2580 | } |
| 2580 | ARM_INST_PTR INTERPRETER_TRANSLATE(stm)(unsigned int inst, int index) | 2581 | static ARM_INST_PTR INTERPRETER_TRANSLATE(stm)(unsigned int inst, int index) |
| 2581 | { | 2582 | { |
| 2582 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 2583 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 2583 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 2584 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -2590,7 +2591,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(stm)(unsigned int inst, int index) | |||
| 2590 | inst_cream->get_addr = get_calc_addr_op(inst); | 2591 | inst_cream->get_addr = get_calc_addr_op(inst); |
| 2591 | return inst_base; | 2592 | return inst_base; |
| 2592 | } | 2593 | } |
| 2593 | ARM_INST_PTR INTERPRETER_TRANSLATE(sxtb)(unsigned int inst, int index) | 2594 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtb)(unsigned int inst, int index) |
| 2594 | { | 2595 | { |
| 2595 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtb_inst)); | 2596 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtb_inst)); |
| 2596 | sxtb_inst *inst_cream = (sxtb_inst *)inst_base->component; | 2597 | sxtb_inst *inst_cream = (sxtb_inst *)inst_base->component; |
| @@ -2608,7 +2609,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sxtb)(unsigned int inst, int index) | |||
| 2608 | inst_base->load_r15 = 1; | 2609 | inst_base->load_r15 = 1; |
| 2609 | return inst_base; | 2610 | return inst_base; |
| 2610 | } | 2611 | } |
| 2611 | ARM_INST_PTR INTERPRETER_TRANSLATE(str)(unsigned int inst, int index) | 2612 | static ARM_INST_PTR INTERPRETER_TRANSLATE(str)(unsigned int inst, int index) |
| 2612 | { | 2613 | { |
| 2613 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 2614 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 2614 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 2615 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -2625,7 +2626,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(str)(unsigned int inst, int index) | |||
| 2625 | } | 2626 | } |
| 2626 | return inst_base; | 2627 | return inst_base; |
| 2627 | } | 2628 | } |
| 2628 | ARM_INST_PTR INTERPRETER_TRANSLATE(uxtb)(unsigned int inst, int index) | 2629 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtb)(unsigned int inst, int index) |
| 2629 | { | 2630 | { |
| 2630 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxth_inst)); | 2631 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxth_inst)); |
| 2631 | uxth_inst *inst_cream = (uxth_inst *)inst_base->component; | 2632 | uxth_inst *inst_cream = (uxth_inst *)inst_base->component; |
| @@ -2643,7 +2644,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uxtb)(unsigned int inst, int index) | |||
| 2643 | inst_base->load_r15 = 1; | 2644 | inst_base->load_r15 = 1; |
| 2644 | return inst_base; | 2645 | return inst_base; |
| 2645 | } | 2646 | } |
| 2646 | ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab)(unsigned int inst, int index) | 2647 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab)(unsigned int inst, int index) |
| 2647 | { | 2648 | { |
| 2648 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxtab_inst)); | 2649 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(uxtab_inst)); |
| 2649 | uxtab_inst *inst_cream = (uxtab_inst *)inst_base->component; | 2650 | uxtab_inst *inst_cream = (uxtab_inst *)inst_base->component; |
| @@ -2660,7 +2661,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab)(unsigned int inst, int index) | |||
| 2660 | 2661 | ||
| 2661 | return inst_base; | 2662 | return inst_base; |
| 2662 | } | 2663 | } |
| 2663 | ARM_INST_PTR INTERPRETER_TRANSLATE(strb)(unsigned int inst, int index) | 2664 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strb)(unsigned int inst, int index) |
| 2664 | { | 2665 | { |
| 2665 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 2666 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 2666 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 2667 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -2677,7 +2678,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(strb)(unsigned int inst, int index) | |||
| 2677 | } | 2678 | } |
| 2678 | return inst_base; | 2679 | return inst_base; |
| 2679 | } | 2680 | } |
| 2680 | ARM_INST_PTR INTERPRETER_TRANSLATE(strbt)(unsigned int inst, int index) | 2681 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strbt)(unsigned int inst, int index) |
| 2681 | { | 2682 | { |
| 2682 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 2683 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 2683 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; | 2684 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; |
| @@ -2701,7 +2702,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(strbt)(unsigned int inst, int index) | |||
| 2701 | } | 2702 | } |
| 2702 | return inst_base; | 2703 | return inst_base; |
| 2703 | } | 2704 | } |
| 2704 | ARM_INST_PTR INTERPRETER_TRANSLATE(strd)(unsigned int inst, int index){ | 2705 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strd)(unsigned int inst, int index){ |
| 2705 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 2706 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 2706 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 2707 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| 2707 | 2708 | ||
| @@ -2717,7 +2718,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(strd)(unsigned int inst, int index){ | |||
| 2717 | } | 2718 | } |
| 2718 | return inst_base; | 2719 | return inst_base; |
| 2719 | } | 2720 | } |
| 2720 | ARM_INST_PTR INTERPRETER_TRANSLATE(strex)(unsigned int inst, int index) | 2721 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strex)(unsigned int inst, int index) |
| 2721 | { | 2722 | { |
| 2722 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 2723 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 2723 | generic_arm_inst *inst_cream = (generic_arm_inst *)inst_base->component; | 2724 | generic_arm_inst *inst_cream = (generic_arm_inst *)inst_base->component; |
| @@ -2732,19 +2733,19 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(strex)(unsigned int inst, int index) | |||
| 2732 | 2733 | ||
| 2733 | return inst_base; | 2734 | return inst_base; |
| 2734 | } | 2735 | } |
| 2735 | ARM_INST_PTR INTERPRETER_TRANSLATE(strexb)(unsigned int inst, int index) | 2736 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strexb)(unsigned int inst, int index) |
| 2736 | { | 2737 | { |
| 2737 | return INTERPRETER_TRANSLATE(strex)(inst, index); | 2738 | return INTERPRETER_TRANSLATE(strex)(inst, index); |
| 2738 | } | 2739 | } |
| 2739 | ARM_INST_PTR INTERPRETER_TRANSLATE(strexh)(unsigned int inst, int index) | 2740 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strexh)(unsigned int inst, int index) |
| 2740 | { | 2741 | { |
| 2741 | return INTERPRETER_TRANSLATE(strex)(inst, index); | 2742 | return INTERPRETER_TRANSLATE(strex)(inst, index); |
| 2742 | } | 2743 | } |
| 2743 | ARM_INST_PTR INTERPRETER_TRANSLATE(strexd)(unsigned int inst, int index) | 2744 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strexd)(unsigned int inst, int index) |
| 2744 | { | 2745 | { |
| 2745 | return INTERPRETER_TRANSLATE(strex)(inst, index); | 2746 | return INTERPRETER_TRANSLATE(strex)(inst, index); |
| 2746 | } | 2747 | } |
| 2747 | ARM_INST_PTR INTERPRETER_TRANSLATE(strh)(unsigned int inst, int index) | 2748 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strh)(unsigned int inst, int index) |
| 2748 | { | 2749 | { |
| 2749 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 2750 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 2750 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; | 2751 | ldst_inst *inst_cream = (ldst_inst *)inst_base->component; |
| @@ -2761,7 +2762,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(strh)(unsigned int inst, int index) | |||
| 2761 | } | 2762 | } |
| 2762 | return inst_base; | 2763 | return inst_base; |
| 2763 | } | 2764 | } |
| 2764 | ARM_INST_PTR INTERPRETER_TRANSLATE(strt)(unsigned int inst, int index) | 2765 | static ARM_INST_PTR INTERPRETER_TRANSLATE(strt)(unsigned int inst, int index) |
| 2765 | { | 2766 | { |
| 2766 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); | 2767 | arm_inst* inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(ldst_inst)); |
| 2767 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; | 2768 | ldst_inst* inst_cream = (ldst_inst*)inst_base->component; |
| @@ -2789,7 +2790,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(strt)(unsigned int inst, int index) | |||
| 2789 | } | 2790 | } |
| 2790 | return inst_base; | 2791 | return inst_base; |
| 2791 | } | 2792 | } |
| 2792 | ARM_INST_PTR INTERPRETER_TRANSLATE(sub)(unsigned int inst, int index) | 2793 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sub)(unsigned int inst, int index) |
| 2793 | { | 2794 | { |
| 2794 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sub_inst)); | 2795 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sub_inst)); |
| 2795 | sub_inst *inst_cream = (sub_inst *)inst_base->component; | 2796 | sub_inst *inst_cream = (sub_inst *)inst_base->component; |
| @@ -2813,7 +2814,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sub)(unsigned int inst, int index) | |||
| 2813 | 2814 | ||
| 2814 | return inst_base; | 2815 | return inst_base; |
| 2815 | } | 2816 | } |
| 2816 | ARM_INST_PTR INTERPRETER_TRANSLATE(swi)(unsigned int inst, int index) | 2817 | static ARM_INST_PTR INTERPRETER_TRANSLATE(swi)(unsigned int inst, int index) |
| 2817 | { | 2818 | { |
| 2818 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(swi_inst)); | 2819 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(swi_inst)); |
| 2819 | swi_inst *inst_cream = (swi_inst *)inst_base->component; | 2820 | swi_inst *inst_cream = (swi_inst *)inst_base->component; |
| @@ -2825,7 +2826,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(swi)(unsigned int inst, int index) | |||
| 2825 | inst_cream->num = BITS(inst, 0, 23); | 2826 | inst_cream->num = BITS(inst, 0, 23); |
| 2826 | return inst_base; | 2827 | return inst_base; |
| 2827 | } | 2828 | } |
| 2828 | ARM_INST_PTR INTERPRETER_TRANSLATE(swp)(unsigned int inst, int index) | 2829 | static ARM_INST_PTR INTERPRETER_TRANSLATE(swp)(unsigned int inst, int index) |
| 2829 | { | 2830 | { |
| 2830 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(swp_inst)); | 2831 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(swp_inst)); |
| 2831 | swp_inst *inst_cream = (swp_inst *)inst_base->component; | 2832 | swp_inst *inst_cream = (swp_inst *)inst_base->component; |
| @@ -2843,7 +2844,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(swp)(unsigned int inst, int index) | |||
| 2843 | } | 2844 | } |
| 2844 | return inst_base; | 2845 | return inst_base; |
| 2845 | } | 2846 | } |
| 2846 | ARM_INST_PTR INTERPRETER_TRANSLATE(swpb)(unsigned int inst, int index){ | 2847 | static ARM_INST_PTR INTERPRETER_TRANSLATE(swpb)(unsigned int inst, int index){ |
| 2847 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(swp_inst)); | 2848 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(swp_inst)); |
| 2848 | swp_inst *inst_cream = (swp_inst *)inst_base->component; | 2849 | swp_inst *inst_cream = (swp_inst *)inst_base->component; |
| 2849 | 2850 | ||
| @@ -2860,7 +2861,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(swpb)(unsigned int inst, int index){ | |||
| 2860 | } | 2861 | } |
| 2861 | return inst_base; | 2862 | return inst_base; |
| 2862 | } | 2863 | } |
| 2863 | ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab)(unsigned int inst, int index){ | 2864 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab)(unsigned int inst, int index){ |
| 2864 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtab_inst)); | 2865 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtab_inst)); |
| 2865 | sxtab_inst *inst_cream = (sxtab_inst *)inst_base->component; | 2866 | sxtab_inst *inst_cream = (sxtab_inst *)inst_base->component; |
| 2866 | 2867 | ||
| @@ -2877,7 +2878,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab)(unsigned int inst, int index){ | |||
| 2877 | return inst_base; | 2878 | return inst_base; |
| 2878 | } | 2879 | } |
| 2879 | 2880 | ||
| 2880 | ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab16)(unsigned int inst, int index) | 2881 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab16)(unsigned int inst, int index) |
| 2881 | { | 2882 | { |
| 2882 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sxtab_inst)); | 2883 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(sxtab_inst)); |
| 2883 | sxtab_inst* const inst_cream = (sxtab_inst*)inst_base->component; | 2884 | sxtab_inst* const inst_cream = (sxtab_inst*)inst_base->component; |
| @@ -2894,12 +2895,12 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sxtab16)(unsigned int inst, int index) | |||
| 2894 | 2895 | ||
| 2895 | return inst_base; | 2896 | return inst_base; |
| 2896 | } | 2897 | } |
| 2897 | ARM_INST_PTR INTERPRETER_TRANSLATE(sxtb16)(unsigned int inst, int index) | 2898 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtb16)(unsigned int inst, int index) |
| 2898 | { | 2899 | { |
| 2899 | return INTERPRETER_TRANSLATE(sxtab16)(inst, index); | 2900 | return INTERPRETER_TRANSLATE(sxtab16)(inst, index); |
| 2900 | } | 2901 | } |
| 2901 | 2902 | ||
| 2902 | ARM_INST_PTR INTERPRETER_TRANSLATE(sxtah)(unsigned int inst, int index){ | 2903 | static ARM_INST_PTR INTERPRETER_TRANSLATE(sxtah)(unsigned int inst, int index) { |
| 2903 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtah_inst)); | 2904 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(sxtah_inst)); |
| 2904 | sxtah_inst *inst_cream = (sxtah_inst *)inst_base->component; | 2905 | sxtah_inst *inst_cream = (sxtah_inst *)inst_base->component; |
| 2905 | 2906 | ||
| @@ -2916,7 +2917,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(sxtah)(unsigned int inst, int index){ | |||
| 2916 | return inst_base; | 2917 | return inst_base; |
| 2917 | } | 2918 | } |
| 2918 | 2919 | ||
| 2919 | ARM_INST_PTR INTERPRETER_TRANSLATE(teq)(unsigned int inst, int index) | 2920 | static ARM_INST_PTR INTERPRETER_TRANSLATE(teq)(unsigned int inst, int index) |
| 2920 | { | 2921 | { |
| 2921 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(teq_inst)); | 2922 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(teq_inst)); |
| 2922 | teq_inst *inst_cream = (teq_inst *)inst_base->component; | 2923 | teq_inst *inst_cream = (teq_inst *)inst_base->component; |
| @@ -2935,7 +2936,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(teq)(unsigned int inst, int index) | |||
| 2935 | inst_base->load_r15 = 1; | 2936 | inst_base->load_r15 = 1; |
| 2936 | return inst_base; | 2937 | return inst_base; |
| 2937 | } | 2938 | } |
| 2938 | ARM_INST_PTR INTERPRETER_TRANSLATE(tst)(unsigned int inst, int index) | 2939 | static ARM_INST_PTR INTERPRETER_TRANSLATE(tst)(unsigned int inst, int index) |
| 2939 | { | 2940 | { |
| 2940 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(tst_inst)); | 2941 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(tst_inst)); |
| 2941 | tst_inst *inst_cream = (tst_inst *)inst_base->component; | 2942 | tst_inst *inst_cream = (tst_inst *)inst_base->component; |
| @@ -2960,7 +2961,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(tst)(unsigned int inst, int index) | |||
| 2960 | return inst_base; | 2961 | return inst_base; |
| 2961 | } | 2962 | } |
| 2962 | 2963 | ||
| 2963 | ARM_INST_PTR INTERPRETER_TRANSLATE(uadd8)(unsigned int inst, int index) | 2964 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uadd8)(unsigned int inst, int index) |
| 2964 | { | 2965 | { |
| 2965 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 2966 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 2966 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 2967 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -2978,28 +2979,28 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uadd8)(unsigned int inst, int index) | |||
| 2978 | 2979 | ||
| 2979 | return inst_base; | 2980 | return inst_base; |
| 2980 | } | 2981 | } |
| 2981 | ARM_INST_PTR INTERPRETER_TRANSLATE(uadd16)(unsigned int inst, int index) | 2982 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uadd16)(unsigned int inst, int index) |
| 2982 | { | 2983 | { |
| 2983 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); | 2984 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); |
| 2984 | } | 2985 | } |
| 2985 | ARM_INST_PTR INTERPRETER_TRANSLATE(uaddsubx)(unsigned int inst, int index) | 2986 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uaddsubx)(unsigned int inst, int index) |
| 2986 | { | 2987 | { |
| 2987 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); | 2988 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); |
| 2988 | } | 2989 | } |
| 2989 | ARM_INST_PTR INTERPRETER_TRANSLATE(usub8)(unsigned int inst, int index) | 2990 | static ARM_INST_PTR INTERPRETER_TRANSLATE(usub8)(unsigned int inst, int index) |
| 2990 | { | 2991 | { |
| 2991 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); | 2992 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); |
| 2992 | } | 2993 | } |
| 2993 | ARM_INST_PTR INTERPRETER_TRANSLATE(usub16)(unsigned int inst, int index) | 2994 | static ARM_INST_PTR INTERPRETER_TRANSLATE(usub16)(unsigned int inst, int index) |
| 2994 | { | 2995 | { |
| 2995 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); | 2996 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); |
| 2996 | } | 2997 | } |
| 2997 | ARM_INST_PTR INTERPRETER_TRANSLATE(usubaddx)(unsigned int inst, int index) | 2998 | static ARM_INST_PTR INTERPRETER_TRANSLATE(usubaddx)(unsigned int inst, int index) |
| 2998 | { | 2999 | { |
| 2999 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); | 3000 | return INTERPRETER_TRANSLATE(uadd8)(inst, index); |
| 3000 | } | 3001 | } |
| 3001 | 3002 | ||
| 3002 | ARM_INST_PTR INTERPRETER_TRANSLATE(uhadd8)(unsigned int inst, int index) | 3003 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uhadd8)(unsigned int inst, int index) |
| 3003 | { | 3004 | { |
| 3004 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 3005 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 3005 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 3006 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -3017,27 +3018,27 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uhadd8)(unsigned int inst, int index) | |||
| 3017 | 3018 | ||
| 3018 | return inst_base; | 3019 | return inst_base; |
| 3019 | } | 3020 | } |
| 3020 | ARM_INST_PTR INTERPRETER_TRANSLATE(uhadd16)(unsigned int inst, int index) | 3021 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uhadd16)(unsigned int inst, int index) |
| 3021 | { | 3022 | { |
| 3022 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); | 3023 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); |
| 3023 | } | 3024 | } |
| 3024 | ARM_INST_PTR INTERPRETER_TRANSLATE(uhaddsubx)(unsigned int inst, int index) | 3025 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uhaddsubx)(unsigned int inst, int index) |
| 3025 | { | 3026 | { |
| 3026 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); | 3027 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); |
| 3027 | } | 3028 | } |
| 3028 | ARM_INST_PTR INTERPRETER_TRANSLATE(uhsub8)(unsigned int inst, int index) | 3029 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uhsub8)(unsigned int inst, int index) |
| 3029 | { | 3030 | { |
| 3030 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); | 3031 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); |
| 3031 | } | 3032 | } |
| 3032 | ARM_INST_PTR INTERPRETER_TRANSLATE(uhsub16)(unsigned int inst, int index) | 3033 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uhsub16)(unsigned int inst, int index) |
| 3033 | { | 3034 | { |
| 3034 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); | 3035 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); |
| 3035 | } | 3036 | } |
| 3036 | ARM_INST_PTR INTERPRETER_TRANSLATE(uhsubaddx)(unsigned int inst, int index) | 3037 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uhsubaddx)(unsigned int inst, int index) |
| 3037 | { | 3038 | { |
| 3038 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); | 3039 | return INTERPRETER_TRANSLATE(uhadd8)(inst, index); |
| 3039 | } | 3040 | } |
| 3040 | ARM_INST_PTR INTERPRETER_TRANSLATE(umaal)(unsigned int inst, int index) | 3041 | static ARM_INST_PTR INTERPRETER_TRANSLATE(umaal)(unsigned int inst, int index) |
| 3041 | { | 3042 | { |
| 3042 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(umaal_inst)); | 3043 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(umaal_inst)); |
| 3043 | umaal_inst* const inst_cream = (umaal_inst*)inst_base->component; | 3044 | umaal_inst* const inst_cream = (umaal_inst*)inst_base->component; |
| @@ -3057,7 +3058,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(umaal)(unsigned int inst, int index) | |||
| 3057 | 3058 | ||
| 3058 | return inst_base; | 3059 | return inst_base; |
| 3059 | } | 3060 | } |
| 3060 | ARM_INST_PTR INTERPRETER_TRANSLATE(umlal)(unsigned int inst, int index) | 3061 | static ARM_INST_PTR INTERPRETER_TRANSLATE(umlal)(unsigned int inst, int index) |
| 3061 | { | 3062 | { |
| 3062 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umlal_inst)); | 3063 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umlal_inst)); |
| 3063 | umlal_inst *inst_cream = (umlal_inst *)inst_base->component; | 3064 | umlal_inst *inst_cream = (umlal_inst *)inst_base->component; |
| @@ -3078,7 +3079,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(umlal)(unsigned int inst, int index) | |||
| 3078 | 3079 | ||
| 3079 | return inst_base; | 3080 | return inst_base; |
| 3080 | } | 3081 | } |
| 3081 | ARM_INST_PTR INTERPRETER_TRANSLATE(umull)(unsigned int inst, int index) | 3082 | static ARM_INST_PTR INTERPRETER_TRANSLATE(umull)(unsigned int inst, int index) |
| 3082 | { | 3083 | { |
| 3083 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umull_inst)); | 3084 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(umull_inst)); |
| 3084 | umull_inst *inst_cream = (umull_inst *)inst_base->component; | 3085 | umull_inst *inst_cream = (umull_inst *)inst_base->component; |
| @@ -3099,7 +3100,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(umull)(unsigned int inst, int index) | |||
| 3099 | return inst_base; | 3100 | return inst_base; |
| 3100 | } | 3101 | } |
| 3101 | 3102 | ||
| 3102 | ARM_INST_PTR INTERPRETER_TRANSLATE(b_2_thumb)(unsigned int tinst, int index) | 3103 | static ARM_INST_PTR INTERPRETER_TRANSLATE(b_2_thumb)(unsigned int tinst, int index) |
| 3103 | { | 3104 | { |
| 3104 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(b_2_thumb)); | 3105 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(b_2_thumb)); |
| 3105 | b_2_thumb *inst_cream = (b_2_thumb *)inst_base->component; | 3106 | b_2_thumb *inst_cream = (b_2_thumb *)inst_base->component; |
| @@ -3112,7 +3113,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(b_2_thumb)(unsigned int tinst, int index) | |||
| 3112 | return inst_base; | 3113 | return inst_base; |
| 3113 | } | 3114 | } |
| 3114 | 3115 | ||
| 3115 | ARM_INST_PTR INTERPRETER_TRANSLATE(b_cond_thumb)(unsigned int tinst, int index) | 3116 | static ARM_INST_PTR INTERPRETER_TRANSLATE(b_cond_thumb)(unsigned int tinst, int index) |
| 3116 | { | 3117 | { |
| 3117 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(b_cond_thumb)); | 3118 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(b_cond_thumb)); |
| 3118 | b_cond_thumb *inst_cream = (b_cond_thumb *)inst_base->component; | 3119 | b_cond_thumb *inst_cream = (b_cond_thumb *)inst_base->component; |
| @@ -3125,7 +3126,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(b_cond_thumb)(unsigned int tinst, int index) | |||
| 3125 | return inst_base; | 3126 | return inst_base; |
| 3126 | } | 3127 | } |
| 3127 | 3128 | ||
| 3128 | ARM_INST_PTR INTERPRETER_TRANSLATE(bl_1_thumb)(unsigned int tinst, int index) | 3129 | static ARM_INST_PTR INTERPRETER_TRANSLATE(bl_1_thumb)(unsigned int tinst, int index) |
| 3129 | { | 3130 | { |
| 3130 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bl_1_thumb)); | 3131 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bl_1_thumb)); |
| 3131 | bl_1_thumb *inst_cream = (bl_1_thumb *)inst_base->component; | 3132 | bl_1_thumb *inst_cream = (bl_1_thumb *)inst_base->component; |
| @@ -3136,7 +3137,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(bl_1_thumb)(unsigned int tinst, int index) | |||
| 3136 | inst_base->br = NON_BRANCH; | 3137 | inst_base->br = NON_BRANCH; |
| 3137 | return inst_base; | 3138 | return inst_base; |
| 3138 | } | 3139 | } |
| 3139 | ARM_INST_PTR INTERPRETER_TRANSLATE(bl_2_thumb)(unsigned int tinst, int index) | 3140 | static ARM_INST_PTR INTERPRETER_TRANSLATE(bl_2_thumb)(unsigned int tinst, int index) |
| 3140 | { | 3141 | { |
| 3141 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bl_2_thumb)); | 3142 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(bl_2_thumb)); |
| 3142 | bl_2_thumb *inst_cream = (bl_2_thumb *)inst_base->component; | 3143 | bl_2_thumb *inst_cream = (bl_2_thumb *)inst_base->component; |
| @@ -3147,7 +3148,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(bl_2_thumb)(unsigned int tinst, int index) | |||
| 3147 | inst_base->br = DIRECT_BRANCH; | 3148 | inst_base->br = DIRECT_BRANCH; |
| 3148 | return inst_base; | 3149 | return inst_base; |
| 3149 | } | 3150 | } |
| 3150 | ARM_INST_PTR INTERPRETER_TRANSLATE(blx_1_thumb)(unsigned int tinst, int index) | 3151 | static ARM_INST_PTR INTERPRETER_TRANSLATE(blx_1_thumb)(unsigned int tinst, int index) |
| 3151 | { | 3152 | { |
| 3152 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(blx_1_thumb)); | 3153 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(blx_1_thumb)); |
| 3153 | blx_1_thumb *inst_cream = (blx_1_thumb *)inst_base->component; | 3154 | blx_1_thumb *inst_cream = (blx_1_thumb *)inst_base->component; |
| @@ -3160,7 +3161,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(blx_1_thumb)(unsigned int tinst, int index) | |||
| 3160 | return inst_base; | 3161 | return inst_base; |
| 3161 | } | 3162 | } |
| 3162 | 3163 | ||
| 3163 | ARM_INST_PTR INTERPRETER_TRANSLATE(uqadd8)(unsigned int inst, int index) | 3164 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uqadd8)(unsigned int inst, int index) |
| 3164 | { | 3165 | { |
| 3165 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 3166 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 3166 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 3167 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -3178,27 +3179,27 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uqadd8)(unsigned int inst, int index) | |||
| 3178 | 3179 | ||
| 3179 | return inst_base; | 3180 | return inst_base; |
| 3180 | } | 3181 | } |
| 3181 | ARM_INST_PTR INTERPRETER_TRANSLATE(uqadd16)(unsigned int inst, int index) | 3182 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uqadd16)(unsigned int inst, int index) |
| 3182 | { | 3183 | { |
| 3183 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); | 3184 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); |
| 3184 | } | 3185 | } |
| 3185 | ARM_INST_PTR INTERPRETER_TRANSLATE(uqaddsubx)(unsigned int inst, int index) | 3186 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uqaddsubx)(unsigned int inst, int index) |
| 3186 | { | 3187 | { |
| 3187 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); | 3188 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); |
| 3188 | } | 3189 | } |
| 3189 | ARM_INST_PTR INTERPRETER_TRANSLATE(uqsub8)(unsigned int inst, int index) | 3190 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uqsub8)(unsigned int inst, int index) |
| 3190 | { | 3191 | { |
| 3191 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); | 3192 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); |
| 3192 | } | 3193 | } |
| 3193 | ARM_INST_PTR INTERPRETER_TRANSLATE(uqsub16)(unsigned int inst, int index) | 3194 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uqsub16)(unsigned int inst, int index) |
| 3194 | { | 3195 | { |
| 3195 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); | 3196 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); |
| 3196 | } | 3197 | } |
| 3197 | ARM_INST_PTR INTERPRETER_TRANSLATE(uqsubaddx)(unsigned int inst, int index) | 3198 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uqsubaddx)(unsigned int inst, int index) |
| 3198 | { | 3199 | { |
| 3199 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); | 3200 | return INTERPRETER_TRANSLATE(uqadd8)(inst, index); |
| 3200 | } | 3201 | } |
| 3201 | ARM_INST_PTR INTERPRETER_TRANSLATE(usada8)(unsigned int inst, int index) | 3202 | static ARM_INST_PTR INTERPRETER_TRANSLATE(usada8)(unsigned int inst, int index) |
| 3202 | { | 3203 | { |
| 3203 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); | 3204 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(generic_arm_inst)); |
| 3204 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; | 3205 | generic_arm_inst* const inst_cream = (generic_arm_inst*)inst_base->component; |
| @@ -3216,20 +3217,20 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(usada8)(unsigned int inst, int index) | |||
| 3216 | 3217 | ||
| 3217 | return inst_base; | 3218 | return inst_base; |
| 3218 | } | 3219 | } |
| 3219 | ARM_INST_PTR INTERPRETER_TRANSLATE(usad8)(unsigned int inst, int index) | 3220 | static ARM_INST_PTR INTERPRETER_TRANSLATE(usad8)(unsigned int inst, int index) |
| 3220 | { | 3221 | { |
| 3221 | return INTERPRETER_TRANSLATE(usada8)(inst, index); | 3222 | return INTERPRETER_TRANSLATE(usada8)(inst, index); |
| 3222 | } | 3223 | } |
| 3223 | ARM_INST_PTR INTERPRETER_TRANSLATE(usat)(unsigned int inst, int index) | 3224 | static ARM_INST_PTR INTERPRETER_TRANSLATE(usat)(unsigned int inst, int index) |
| 3224 | { | 3225 | { |
| 3225 | return INTERPRETER_TRANSLATE(ssat)(inst, index); | 3226 | return INTERPRETER_TRANSLATE(ssat)(inst, index); |
| 3226 | } | 3227 | } |
| 3227 | ARM_INST_PTR INTERPRETER_TRANSLATE(usat16)(unsigned int inst, int index) | 3228 | static ARM_INST_PTR INTERPRETER_TRANSLATE(usat16)(unsigned int inst, int index) |
| 3228 | { | 3229 | { |
| 3229 | return INTERPRETER_TRANSLATE(ssat16)(inst, index); | 3230 | return INTERPRETER_TRANSLATE(ssat16)(inst, index); |
| 3230 | } | 3231 | } |
| 3231 | 3232 | ||
| 3232 | ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab16)(unsigned int inst, int index) | 3233 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab16)(unsigned int inst, int index) |
| 3233 | { | 3234 | { |
| 3234 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(uxtab_inst)); | 3235 | arm_inst* const inst_base = (arm_inst*)AllocBuffer(sizeof(arm_inst) + sizeof(uxtab_inst)); |
| 3235 | uxtab_inst* const inst_cream = (uxtab_inst*)inst_base->component; | 3236 | uxtab_inst* const inst_cream = (uxtab_inst*)inst_base->component; |
| @@ -3246,7 +3247,7 @@ ARM_INST_PTR INTERPRETER_TRANSLATE(uxtab16)(unsigned int inst, int index) | |||
| 3246 | 3247 | ||
| 3247 | return inst_base; | 3248 | return inst_base; |
| 3248 | } | 3249 | } |
| 3249 | ARM_INST_PTR INTERPRETER_TRANSLATE(uxtb16)(unsigned int inst, int index) | 3250 | static ARM_INST_PTR INTERPRETER_TRANSLATE(uxtb16)(unsigned int inst, int index) |
| 3250 | { | 3251 | { |
| 3251 | return INTERPRETER_TRANSLATE(uxtab16)(inst, index); | 3252 | return INTERPRETER_TRANSLATE(uxtab16)(inst, index); |
| 3252 | } | 3253 | } |
| @@ -3550,7 +3551,7 @@ typedef struct instruction_set_encoding_item ISEITEM; | |||
| 3550 | 3551 | ||
| 3551 | extern const ISEITEM arm_instruction[]; | 3552 | extern const ISEITEM arm_instruction[]; |
| 3552 | 3553 | ||
| 3553 | int InterpreterTranslate(ARMul_State* cpu, int& bb_start, addr_t addr) { | 3554 | static int InterpreterTranslate(ARMul_State* cpu, int& bb_start, addr_t addr) { |
| 3554 | // Decode instruction, get index | 3555 | // Decode instruction, get index |
| 3555 | // Allocate memory and init InsCream | 3556 | // Allocate memory and init InsCream |
| 3556 | // Go on next, until terminal instruction | 3557 | // Go on next, until terminal instruction |
| @@ -3606,7 +3607,7 @@ translated: | |||
| 3606 | return KEEP_GOING; | 3607 | return KEEP_GOING; |
| 3607 | } | 3608 | } |
| 3608 | 3609 | ||
| 3609 | int clz(unsigned int x) { | 3610 | static int clz(unsigned int x) { |
| 3610 | int n; | 3611 | int n; |
| 3611 | if (x == 0) return (32); | 3612 | if (x == 0) return (32); |
| 3612 | n = 1; | 3613 | n = 1; |
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.h b/src/core/arm/dyncom/arm_dyncom_interpreter.h index 4791ea25f..1c324d29c 100644 --- a/src/core/arm/dyncom/arm_dyncom_interpreter.h +++ b/src/core/arm/dyncom/arm_dyncom_interpreter.h | |||
| @@ -4,4 +4,6 @@ | |||
| 4 | 4 | ||
| 5 | #pragma once | 5 | #pragma once |
| 6 | 6 | ||
| 7 | #include "core/arm/skyeye_common/armdefs.h" | ||
| 8 | |||
| 7 | unsigned InterpreterMainLoop(ARMul_State* state); | 9 | unsigned InterpreterMainLoop(ARMul_State* state); |
diff --git a/src/core/arm/dyncom/arm_dyncom_run.cpp b/src/core/arm/dyncom/arm_dyncom_run.cpp index 3a05ea8ac..5a9a6a788 100644 --- a/src/core/arm/dyncom/arm_dyncom_run.cpp +++ b/src/core/arm/dyncom/arm_dyncom_run.cpp | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | // Licensed under GPLv2 or any later version | 2 | // Licensed under GPLv2 or any later version |
| 3 | // Refer to the license.txt file included. | 3 | // Refer to the license.txt file included. |
| 4 | 4 | ||
| 5 | #include "core/arm/dyncom/arm_dyncom_run.h" | ||
| 5 | #include "core/arm/skyeye_common/armdefs.h" | 6 | #include "core/arm/skyeye_common/armdefs.h" |
| 6 | 7 | ||
| 7 | void switch_mode(ARMul_State* core, uint32_t mode) { | 8 | void switch_mode(ARMul_State* core, uint32_t mode) { |
diff --git a/src/core/arm/dyncom/arm_dyncom_run.h b/src/core/arm/dyncom/arm_dyncom_run.h index e79439f80..e17420497 100644 --- a/src/core/arm/dyncom/arm_dyncom_run.h +++ b/src/core/arm/dyncom/arm_dyncom_run.h | |||
| @@ -18,6 +18,8 @@ | |||
| 18 | 18 | ||
| 19 | #pragma once | 19 | #pragma once |
| 20 | 20 | ||
| 21 | #include "core/arm/skyeye_common/armdefs.h" | ||
| 22 | |||
| 21 | void switch_mode(ARMul_State* core, uint32_t mode); | 23 | void switch_mode(ARMul_State* core, uint32_t mode); |
| 22 | 24 | ||
| 23 | /* FIXME, we temporarily think thumb instruction is always 16 bit */ | 25 | /* FIXME, we temporarily think thumb instruction is always 16 bit */ |
diff --git a/src/core/arm/skyeye_common/vfp/vfpinstr.cpp b/src/core/arm/skyeye_common/vfp/vfpinstr.cpp index 0aa2d5089..1f1b5b1c3 100644 --- a/src/core/arm/skyeye_common/vfp/vfpinstr.cpp +++ b/src/core/arm/skyeye_common/vfp/vfpinstr.cpp | |||
| @@ -19,7 +19,7 @@ typedef struct _vmla_inst { | |||
| 19 | } vmla_inst; | 19 | } vmla_inst; |
| 20 | #endif | 20 | #endif |
| 21 | #ifdef VFP_INTERPRETER_TRANS | 21 | #ifdef VFP_INTERPRETER_TRANS |
| 22 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmla)(unsigned int inst, int index) | 22 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmla)(unsigned int inst, int index) |
| 23 | { | 23 | { |
| 24 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmla_inst)); | 24 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmla_inst)); |
| 25 | vmla_inst *inst_cream = (vmla_inst *)inst_base->component; | 25 | vmla_inst *inst_cream = (vmla_inst *)inst_base->component; |
| @@ -69,7 +69,7 @@ typedef struct _vmls_inst { | |||
| 69 | } vmls_inst; | 69 | } vmls_inst; |
| 70 | #endif | 70 | #endif |
| 71 | #ifdef VFP_INTERPRETER_TRANS | 71 | #ifdef VFP_INTERPRETER_TRANS |
| 72 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmls)(unsigned int inst, int index) | 72 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmls)(unsigned int inst, int index) |
| 73 | { | 73 | { |
| 74 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmls_inst)); | 74 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmls_inst)); |
| 75 | vmls_inst *inst_cream = (vmls_inst *)inst_base->component; | 75 | vmls_inst *inst_cream = (vmls_inst *)inst_base->component; |
| @@ -119,7 +119,7 @@ typedef struct _vnmla_inst { | |||
| 119 | } vnmla_inst; | 119 | } vnmla_inst; |
| 120 | #endif | 120 | #endif |
| 121 | #ifdef VFP_INTERPRETER_TRANS | 121 | #ifdef VFP_INTERPRETER_TRANS |
| 122 | ARM_INST_PTR INTERPRETER_TRANSLATE(vnmla)(unsigned int inst, int index) | 122 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vnmla)(unsigned int inst, int index) |
| 123 | { | 123 | { |
| 124 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vnmla_inst)); | 124 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vnmla_inst)); |
| 125 | vnmla_inst *inst_cream = (vnmla_inst *)inst_base->component; | 125 | vnmla_inst *inst_cream = (vnmla_inst *)inst_base->component; |
| @@ -170,7 +170,7 @@ typedef struct _vnmls_inst { | |||
| 170 | } vnmls_inst; | 170 | } vnmls_inst; |
| 171 | #endif | 171 | #endif |
| 172 | #ifdef VFP_INTERPRETER_TRANS | 172 | #ifdef VFP_INTERPRETER_TRANS |
| 173 | ARM_INST_PTR INTERPRETER_TRANSLATE(vnmls)(unsigned int inst, int index) | 173 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vnmls)(unsigned int inst, int index) |
| 174 | { | 174 | { |
| 175 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vnmls_inst)); | 175 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vnmls_inst)); |
| 176 | vnmls_inst *inst_cream = (vnmls_inst *)inst_base->component; | 176 | vnmls_inst *inst_cream = (vnmls_inst *)inst_base->component; |
| @@ -220,7 +220,7 @@ typedef struct _vnmul_inst { | |||
| 220 | } vnmul_inst; | 220 | } vnmul_inst; |
| 221 | #endif | 221 | #endif |
| 222 | #ifdef VFP_INTERPRETER_TRANS | 222 | #ifdef VFP_INTERPRETER_TRANS |
| 223 | ARM_INST_PTR INTERPRETER_TRANSLATE(vnmul)(unsigned int inst, int index) | 223 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vnmul)(unsigned int inst, int index) |
| 224 | { | 224 | { |
| 225 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vnmul_inst)); | 225 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vnmul_inst)); |
| 226 | vnmul_inst *inst_cream = (vnmul_inst *)inst_base->component; | 226 | vnmul_inst *inst_cream = (vnmul_inst *)inst_base->component; |
| @@ -270,7 +270,7 @@ typedef struct _vmul_inst { | |||
| 270 | } vmul_inst; | 270 | } vmul_inst; |
| 271 | #endif | 271 | #endif |
| 272 | #ifdef VFP_INTERPRETER_TRANS | 272 | #ifdef VFP_INTERPRETER_TRANS |
| 273 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmul)(unsigned int inst, int index) | 273 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmul)(unsigned int inst, int index) |
| 274 | { | 274 | { |
| 275 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmul_inst)); | 275 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmul_inst)); |
| 276 | vmul_inst *inst_cream = (vmul_inst *)inst_base->component; | 276 | vmul_inst *inst_cream = (vmul_inst *)inst_base->component; |
| @@ -320,7 +320,7 @@ typedef struct _vadd_inst { | |||
| 320 | } vadd_inst; | 320 | } vadd_inst; |
| 321 | #endif | 321 | #endif |
| 322 | #ifdef VFP_INTERPRETER_TRANS | 322 | #ifdef VFP_INTERPRETER_TRANS |
| 323 | ARM_INST_PTR INTERPRETER_TRANSLATE(vadd)(unsigned int inst, int index) | 323 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vadd)(unsigned int inst, int index) |
| 324 | { | 324 | { |
| 325 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vadd_inst)); | 325 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vadd_inst)); |
| 326 | vadd_inst *inst_cream = (vadd_inst *)inst_base->component; | 326 | vadd_inst *inst_cream = (vadd_inst *)inst_base->component; |
| @@ -370,7 +370,7 @@ typedef struct _vsub_inst { | |||
| 370 | } vsub_inst; | 370 | } vsub_inst; |
| 371 | #endif | 371 | #endif |
| 372 | #ifdef VFP_INTERPRETER_TRANS | 372 | #ifdef VFP_INTERPRETER_TRANS |
| 373 | ARM_INST_PTR INTERPRETER_TRANSLATE(vsub)(unsigned int inst, int index) | 373 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vsub)(unsigned int inst, int index) |
| 374 | { | 374 | { |
| 375 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vsub_inst)); | 375 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vsub_inst)); |
| 376 | vsub_inst *inst_cream = (vsub_inst *)inst_base->component; | 376 | vsub_inst *inst_cream = (vsub_inst *)inst_base->component; |
| @@ -420,7 +420,7 @@ typedef struct _vdiv_inst { | |||
| 420 | } vdiv_inst; | 420 | } vdiv_inst; |
| 421 | #endif | 421 | #endif |
| 422 | #ifdef VFP_INTERPRETER_TRANS | 422 | #ifdef VFP_INTERPRETER_TRANS |
| 423 | ARM_INST_PTR INTERPRETER_TRANSLATE(vdiv)(unsigned int inst, int index) | 423 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vdiv)(unsigned int inst, int index) |
| 424 | { | 424 | { |
| 425 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vdiv_inst)); | 425 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vdiv_inst)); |
| 426 | vdiv_inst *inst_cream = (vdiv_inst *)inst_base->component; | 426 | vdiv_inst *inst_cream = (vdiv_inst *)inst_base->component; |
| @@ -472,7 +472,7 @@ typedef struct _vmovi_inst { | |||
| 472 | } vmovi_inst; | 472 | } vmovi_inst; |
| 473 | #endif | 473 | #endif |
| 474 | #ifdef VFP_INTERPRETER_TRANS | 474 | #ifdef VFP_INTERPRETER_TRANS |
| 475 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmovi)(unsigned int inst, int index) | 475 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovi)(unsigned int inst, int index) |
| 476 | { | 476 | { |
| 477 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovi_inst)); | 477 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovi_inst)); |
| 478 | vmovi_inst *inst_cream = (vmovi_inst *)inst_base->component; | 478 | vmovi_inst *inst_cream = (vmovi_inst *)inst_base->component; |
| @@ -521,7 +521,7 @@ typedef struct _vmovr_inst { | |||
| 521 | } vmovr_inst; | 521 | } vmovr_inst; |
| 522 | #endif | 522 | #endif |
| 523 | #ifdef VFP_INTERPRETER_TRANS | 523 | #ifdef VFP_INTERPRETER_TRANS |
| 524 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmovr)(unsigned int inst, int index) | 524 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovr)(unsigned int inst, int index) |
| 525 | { | 525 | { |
| 526 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovr_inst)); | 526 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovr_inst)); |
| 527 | vmovr_inst *inst_cream = (vmovr_inst *)inst_base->component; | 527 | vmovr_inst *inst_cream = (vmovr_inst *)inst_base->component; |
| @@ -564,7 +564,7 @@ typedef struct _vabs_inst { | |||
| 564 | } vabs_inst; | 564 | } vabs_inst; |
| 565 | #endif | 565 | #endif |
| 566 | #ifdef VFP_INTERPRETER_TRANS | 566 | #ifdef VFP_INTERPRETER_TRANS |
| 567 | ARM_INST_PTR INTERPRETER_TRANSLATE(vabs)(unsigned int inst, int index) | 567 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vabs)(unsigned int inst, int index) |
| 568 | { | 568 | { |
| 569 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vabs_inst)); | 569 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vabs_inst)); |
| 570 | vabs_inst *inst_cream = (vabs_inst *)inst_base->component; | 570 | vabs_inst *inst_cream = (vabs_inst *)inst_base->component; |
| @@ -615,7 +615,7 @@ typedef struct _vneg_inst { | |||
| 615 | } vneg_inst; | 615 | } vneg_inst; |
| 616 | #endif | 616 | #endif |
| 617 | #ifdef VFP_INTERPRETER_TRANS | 617 | #ifdef VFP_INTERPRETER_TRANS |
| 618 | ARM_INST_PTR INTERPRETER_TRANSLATE(vneg)(unsigned int inst, int index) | 618 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vneg)(unsigned int inst, int index) |
| 619 | { | 619 | { |
| 620 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vneg_inst)); | 620 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vneg_inst)); |
| 621 | vneg_inst *inst_cream = (vneg_inst *)inst_base->component; | 621 | vneg_inst *inst_cream = (vneg_inst *)inst_base->component; |
| @@ -665,7 +665,7 @@ typedef struct _vsqrt_inst { | |||
| 665 | } vsqrt_inst; | 665 | } vsqrt_inst; |
| 666 | #endif | 666 | #endif |
| 667 | #ifdef VFP_INTERPRETER_TRANS | 667 | #ifdef VFP_INTERPRETER_TRANS |
| 668 | ARM_INST_PTR INTERPRETER_TRANSLATE(vsqrt)(unsigned int inst, int index) | 668 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vsqrt)(unsigned int inst, int index) |
| 669 | { | 669 | { |
| 670 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vsqrt_inst)); | 670 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vsqrt_inst)); |
| 671 | vsqrt_inst *inst_cream = (vsqrt_inst *)inst_base->component; | 671 | vsqrt_inst *inst_cream = (vsqrt_inst *)inst_base->component; |
| @@ -715,7 +715,7 @@ typedef struct _vcmp_inst { | |||
| 715 | } vcmp_inst; | 715 | } vcmp_inst; |
| 716 | #endif | 716 | #endif |
| 717 | #ifdef VFP_INTERPRETER_TRANS | 717 | #ifdef VFP_INTERPRETER_TRANS |
| 718 | ARM_INST_PTR INTERPRETER_TRANSLATE(vcmp)(unsigned int inst, int index) | 718 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vcmp)(unsigned int inst, int index) |
| 719 | { | 719 | { |
| 720 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcmp_inst)); | 720 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcmp_inst)); |
| 721 | vcmp_inst *inst_cream = (vcmp_inst *)inst_base->component; | 721 | vcmp_inst *inst_cream = (vcmp_inst *)inst_base->component; |
| @@ -765,7 +765,7 @@ typedef struct _vcmp2_inst { | |||
| 765 | } vcmp2_inst; | 765 | } vcmp2_inst; |
| 766 | #endif | 766 | #endif |
| 767 | #ifdef VFP_INTERPRETER_TRANS | 767 | #ifdef VFP_INTERPRETER_TRANS |
| 768 | ARM_INST_PTR INTERPRETER_TRANSLATE(vcmp2)(unsigned int inst, int index) | 768 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vcmp2)(unsigned int inst, int index) |
| 769 | { | 769 | { |
| 770 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcmp2_inst)); | 770 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcmp2_inst)); |
| 771 | vcmp2_inst *inst_cream = (vcmp2_inst *)inst_base->component; | 771 | vcmp2_inst *inst_cream = (vcmp2_inst *)inst_base->component; |
| @@ -815,7 +815,7 @@ typedef struct _vcvtbds_inst { | |||
| 815 | } vcvtbds_inst; | 815 | } vcvtbds_inst; |
| 816 | #endif | 816 | #endif |
| 817 | #ifdef VFP_INTERPRETER_TRANS | 817 | #ifdef VFP_INTERPRETER_TRANS |
| 818 | ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbds)(unsigned int inst, int index) | 818 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbds)(unsigned int inst, int index) |
| 819 | { | 819 | { |
| 820 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcvtbds_inst)); | 820 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcvtbds_inst)); |
| 821 | vcvtbds_inst *inst_cream = (vcvtbds_inst *)inst_base->component; | 821 | vcvtbds_inst *inst_cream = (vcvtbds_inst *)inst_base->component; |
| @@ -865,7 +865,7 @@ typedef struct _vcvtbff_inst { | |||
| 865 | } vcvtbff_inst; | 865 | } vcvtbff_inst; |
| 866 | #endif | 866 | #endif |
| 867 | #ifdef VFP_INTERPRETER_TRANS | 867 | #ifdef VFP_INTERPRETER_TRANS |
| 868 | ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbff)(unsigned int inst, int index) | 868 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbff)(unsigned int inst, int index) |
| 869 | { | 869 | { |
| 870 | VFP_DEBUG_UNTESTED(VCVTBFF); | 870 | VFP_DEBUG_UNTESTED(VCVTBFF); |
| 871 | 871 | ||
| @@ -917,7 +917,7 @@ typedef struct _vcvtbfi_inst { | |||
| 917 | } vcvtbfi_inst; | 917 | } vcvtbfi_inst; |
| 918 | #endif | 918 | #endif |
| 919 | #ifdef VFP_INTERPRETER_TRANS | 919 | #ifdef VFP_INTERPRETER_TRANS |
| 920 | ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbfi)(unsigned int inst, int index) | 920 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vcvtbfi)(unsigned int inst, int index) |
| 921 | { | 921 | { |
| 922 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcvtbfi_inst)); | 922 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vcvtbfi_inst)); |
| 923 | vcvtbfi_inst *inst_cream = (vcvtbfi_inst *)inst_base->component; | 923 | vcvtbfi_inst *inst_cream = (vcvtbfi_inst *)inst_base->component; |
| @@ -974,7 +974,7 @@ typedef struct _vmovbrs_inst { | |||
| 974 | } vmovbrs_inst; | 974 | } vmovbrs_inst; |
| 975 | #endif | 975 | #endif |
| 976 | #ifdef VFP_INTERPRETER_TRANS | 976 | #ifdef VFP_INTERPRETER_TRANS |
| 977 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrs)(unsigned int inst, int index) | 977 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrs)(unsigned int inst, int index) |
| 978 | { | 978 | { |
| 979 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrs_inst)); | 979 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrs_inst)); |
| 980 | vmovbrs_inst *inst_cream = (vmovbrs_inst *)inst_base->component; | 980 | vmovbrs_inst *inst_cream = (vmovbrs_inst *)inst_base->component; |
| @@ -1019,7 +1019,7 @@ typedef struct _vmsr_inst { | |||
| 1019 | } vmsr_inst; | 1019 | } vmsr_inst; |
| 1020 | #endif | 1020 | #endif |
| 1021 | #ifdef VFP_INTERPRETER_TRANS | 1021 | #ifdef VFP_INTERPRETER_TRANS |
| 1022 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmsr)(unsigned int inst, int index) | 1022 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmsr)(unsigned int inst, int index) |
| 1023 | { | 1023 | { |
| 1024 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmsr_inst)); | 1024 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmsr_inst)); |
| 1025 | vmsr_inst *inst_cream = (vmsr_inst *)inst_base->component; | 1025 | vmsr_inst *inst_cream = (vmsr_inst *)inst_base->component; |
| @@ -1068,7 +1068,7 @@ typedef struct _vmovbrc_inst { | |||
| 1068 | } vmovbrc_inst; | 1068 | } vmovbrc_inst; |
| 1069 | #endif | 1069 | #endif |
| 1070 | #ifdef VFP_INTERPRETER_TRANS | 1070 | #ifdef VFP_INTERPRETER_TRANS |
| 1071 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrc)(unsigned int inst, int index) | 1071 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrc)(unsigned int inst, int index) |
| 1072 | { | 1072 | { |
| 1073 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrc_inst)); | 1073 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrc_inst)); |
| 1074 | vmovbrc_inst *inst_cream = (vmovbrc_inst *)inst_base->component; | 1074 | vmovbrc_inst *inst_cream = (vmovbrc_inst *)inst_base->component; |
| @@ -1115,7 +1115,7 @@ typedef struct _vmrs_inst { | |||
| 1115 | } vmrs_inst; | 1115 | } vmrs_inst; |
| 1116 | #endif | 1116 | #endif |
| 1117 | #ifdef VFP_INTERPRETER_TRANS | 1117 | #ifdef VFP_INTERPRETER_TRANS |
| 1118 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmrs)(unsigned int inst, int index) | 1118 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmrs)(unsigned int inst, int index) |
| 1119 | { | 1119 | { |
| 1120 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmrs_inst)); | 1120 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmrs_inst)); |
| 1121 | vmrs_inst *inst_cream = (vmrs_inst *)inst_base->component; | 1121 | vmrs_inst *inst_cream = (vmrs_inst *)inst_base->component; |
| @@ -1199,7 +1199,7 @@ typedef struct _vmovbcr_inst { | |||
| 1199 | } vmovbcr_inst; | 1199 | } vmovbcr_inst; |
| 1200 | #endif | 1200 | #endif |
| 1201 | #ifdef VFP_INTERPRETER_TRANS | 1201 | #ifdef VFP_INTERPRETER_TRANS |
| 1202 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbcr)(unsigned int inst, int index) | 1202 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbcr)(unsigned int inst, int index) |
| 1203 | { | 1203 | { |
| 1204 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbcr_inst)); | 1204 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbcr_inst)); |
| 1205 | vmovbcr_inst *inst_cream = (vmovbcr_inst *)inst_base->component; | 1205 | vmovbcr_inst *inst_cream = (vmovbcr_inst *)inst_base->component; |
| @@ -1253,7 +1253,7 @@ typedef struct _vmovbrrss_inst { | |||
| 1253 | } vmovbrrss_inst; | 1253 | } vmovbrrss_inst; |
| 1254 | #endif | 1254 | #endif |
| 1255 | #ifdef VFP_INTERPRETER_TRANS | 1255 | #ifdef VFP_INTERPRETER_TRANS |
| 1256 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrrss)(unsigned int inst, int index) | 1256 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrrss)(unsigned int inst, int index) |
| 1257 | { | 1257 | { |
| 1258 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrrss_inst)); | 1258 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrrss_inst)); |
| 1259 | vmovbrrss_inst *inst_cream = (vmovbrrss_inst *)inst_base->component; | 1259 | vmovbrrss_inst *inst_cream = (vmovbrrss_inst *)inst_base->component; |
| @@ -1302,7 +1302,7 @@ typedef struct _vmovbrrd_inst { | |||
| 1302 | } vmovbrrd_inst; | 1302 | } vmovbrrd_inst; |
| 1303 | #endif | 1303 | #endif |
| 1304 | #ifdef VFP_INTERPRETER_TRANS | 1304 | #ifdef VFP_INTERPRETER_TRANS |
| 1305 | ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrrd)(unsigned int inst, int index) | 1305 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vmovbrrd)(unsigned int inst, int index) |
| 1306 | { | 1306 | { |
| 1307 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrrd_inst)); | 1307 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vmovbrrd_inst)); |
| 1308 | vmovbrrd_inst *inst_cream = (vmovbrrd_inst *)inst_base->component; | 1308 | vmovbrrd_inst *inst_cream = (vmovbrrd_inst *)inst_base->component; |
| @@ -1356,7 +1356,7 @@ typedef struct _vstr_inst { | |||
| 1356 | } vstr_inst; | 1356 | } vstr_inst; |
| 1357 | #endif | 1357 | #endif |
| 1358 | #ifdef VFP_INTERPRETER_TRANS | 1358 | #ifdef VFP_INTERPRETER_TRANS |
| 1359 | ARM_INST_PTR INTERPRETER_TRANSLATE(vstr)(unsigned int inst, int index) | 1359 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vstr)(unsigned int inst, int index) |
| 1360 | { | 1360 | { |
| 1361 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vstr_inst)); | 1361 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vstr_inst)); |
| 1362 | vstr_inst *inst_cream = (vstr_inst *)inst_base->component; | 1362 | vstr_inst *inst_cream = (vstr_inst *)inst_base->component; |
| @@ -1415,7 +1415,7 @@ typedef struct _vpush_inst { | |||
| 1415 | } vpush_inst; | 1415 | } vpush_inst; |
| 1416 | #endif | 1416 | #endif |
| 1417 | #ifdef VFP_INTERPRETER_TRANS | 1417 | #ifdef VFP_INTERPRETER_TRANS |
| 1418 | ARM_INST_PTR INTERPRETER_TRANSLATE(vpush)(unsigned int inst, int index) | 1418 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vpush)(unsigned int inst, int index) |
| 1419 | { | 1419 | { |
| 1420 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vpush_inst)); | 1420 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vpush_inst)); |
| 1421 | vpush_inst *inst_cream = (vpush_inst *)inst_base->component; | 1421 | vpush_inst *inst_cream = (vpush_inst *)inst_base->component; |
| @@ -1481,7 +1481,7 @@ typedef struct _vstm_inst { | |||
| 1481 | } vstm_inst; | 1481 | } vstm_inst; |
| 1482 | #endif | 1482 | #endif |
| 1483 | #ifdef VFP_INTERPRETER_TRANS | 1483 | #ifdef VFP_INTERPRETER_TRANS |
| 1484 | ARM_INST_PTR INTERPRETER_TRANSLATE(vstm)(unsigned int inst, int index) | 1484 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vstm)(unsigned int inst, int index) |
| 1485 | { | 1485 | { |
| 1486 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vstm_inst)); | 1486 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vstm_inst)); |
| 1487 | vstm_inst *inst_cream = (vstm_inst *)inst_base->component; | 1487 | vstm_inst *inst_cream = (vstm_inst *)inst_base->component; |
| @@ -1551,7 +1551,7 @@ typedef struct _vpop_inst { | |||
| 1551 | } vpop_inst; | 1551 | } vpop_inst; |
| 1552 | #endif | 1552 | #endif |
| 1553 | #ifdef VFP_INTERPRETER_TRANS | 1553 | #ifdef VFP_INTERPRETER_TRANS |
| 1554 | ARM_INST_PTR INTERPRETER_TRANSLATE(vpop)(unsigned int inst, int index) | 1554 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vpop)(unsigned int inst, int index) |
| 1555 | { | 1555 | { |
| 1556 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vpop_inst)); | 1556 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vpop_inst)); |
| 1557 | vpop_inst *inst_cream = (vpop_inst *)inst_base->component; | 1557 | vpop_inst *inst_cream = (vpop_inst *)inst_base->component; |
| @@ -1621,7 +1621,7 @@ typedef struct _vldr_inst { | |||
| 1621 | } vldr_inst; | 1621 | } vldr_inst; |
| 1622 | #endif | 1622 | #endif |
| 1623 | #ifdef VFP_INTERPRETER_TRANS | 1623 | #ifdef VFP_INTERPRETER_TRANS |
| 1624 | ARM_INST_PTR INTERPRETER_TRANSLATE(vldr)(unsigned int inst, int index) | 1624 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vldr)(unsigned int inst, int index) |
| 1625 | { | 1625 | { |
| 1626 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vldr_inst)); | 1626 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vldr_inst)); |
| 1627 | vldr_inst *inst_cream = (vldr_inst *)inst_base->component; | 1627 | vldr_inst *inst_cream = (vldr_inst *)inst_base->component; |
| @@ -1687,7 +1687,7 @@ typedef struct _vldm_inst { | |||
| 1687 | } vldm_inst; | 1687 | } vldm_inst; |
| 1688 | #endif | 1688 | #endif |
| 1689 | #ifdef VFP_INTERPRETER_TRANS | 1689 | #ifdef VFP_INTERPRETER_TRANS |
| 1690 | ARM_INST_PTR INTERPRETER_TRANSLATE(vldm)(unsigned int inst, int index) | 1690 | static ARM_INST_PTR INTERPRETER_TRANSLATE(vldm)(unsigned int inst, int index) |
| 1691 | { | 1691 | { |
| 1692 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vldm_inst)); | 1692 | arm_inst *inst_base = (arm_inst *)AllocBuffer(sizeof(arm_inst) + sizeof(vldm_inst)); |
| 1693 | vldm_inst *inst_cream = (vldm_inst *)inst_base->component; | 1693 | vldm_inst *inst_cream = (vldm_inst *)inst_base->component; |
diff --git a/src/core/core_timing.cpp b/src/core/core_timing.cpp index d96d3fe16..12ea3ff19 100644 --- a/src/core/core_timing.cpp +++ b/src/core/core_timing.cpp | |||
| @@ -69,7 +69,7 @@ using AdvanceCallback = void(int cycles_executed); | |||
| 69 | static AdvanceCallback* advance_callback = nullptr; | 69 | static AdvanceCallback* advance_callback = nullptr; |
| 70 | static std::vector<MHzChangeCallback> mhz_change_callbacks; | 70 | static std::vector<MHzChangeCallback> mhz_change_callbacks; |
| 71 | 71 | ||
| 72 | void FireMhzChange() { | 72 | static void FireMhzChange() { |
| 73 | for (auto callback : mhz_change_callbacks) | 73 | for (auto callback : mhz_change_callbacks) |
| 74 | callback(); | 74 | callback(); |
| 75 | } | 75 | } |
| @@ -97,7 +97,7 @@ u64 GetGlobalTimeUs() { | |||
| 97 | return last_global_time_us + us_since_last; | 97 | return last_global_time_us + us_since_last; |
| 98 | } | 98 | } |
| 99 | 99 | ||
| 100 | Event* GetNewEvent() { | 100 | static Event* GetNewEvent() { |
| 101 | if (!event_pool) | 101 | if (!event_pool) |
| 102 | return new Event; | 102 | return new Event; |
| 103 | 103 | ||
| @@ -106,7 +106,7 @@ Event* GetNewEvent() { | |||
| 106 | return event; | 106 | return event; |
| 107 | } | 107 | } |
| 108 | 108 | ||
| 109 | Event* GetNewTsEvent() { | 109 | static Event* GetNewTsEvent() { |
| 110 | allocated_ts_events++; | 110 | allocated_ts_events++; |
| 111 | 111 | ||
| 112 | if (!event_ts_pool) | 112 | if (!event_ts_pool) |
| @@ -117,12 +117,12 @@ Event* GetNewTsEvent() { | |||
| 117 | return event; | 117 | return event; |
| 118 | } | 118 | } |
| 119 | 119 | ||
| 120 | void FreeEvent(Event* event) { | 120 | static void FreeEvent(Event* event) { |
| 121 | event->next = event_pool; | 121 | event->next = event_pool; |
| 122 | event_pool = event; | 122 | event_pool = event; |
| 123 | } | 123 | } |
| 124 | 124 | ||
| 125 | void FreeTsEvent(Event* event) { | 125 | static void FreeTsEvent(Event* event) { |
| 126 | event->next = event_ts_pool; | 126 | event->next = event_ts_pool; |
| 127 | event_ts_pool = event; | 127 | event_ts_pool = event; |
| 128 | allocated_ts_events--; | 128 | allocated_ts_events--; |
| @@ -133,7 +133,7 @@ int RegisterEvent(const char* name, TimedCallback callback) { | |||
| 133 | return (int)event_types.size() - 1; | 133 | return (int)event_types.size() - 1; |
| 134 | } | 134 | } |
| 135 | 135 | ||
| 136 | void AntiCrashCallback(u64 userdata, int cycles_late) { | 136 | static void AntiCrashCallback(u64 userdata, int cycles_late) { |
| 137 | LOG_CRITICAL(Core_Timing, "Savestate broken: an unregistered event was called."); | 137 | LOG_CRITICAL(Core_Timing, "Savestate broken: an unregistered event was called."); |
| 138 | Core::Halt("invalid timing events"); | 138 | Core::Halt("invalid timing events"); |
| 139 | } | 139 | } |
| @@ -228,7 +228,7 @@ void ClearPendingEvents() { | |||
| 228 | } | 228 | } |
| 229 | } | 229 | } |
| 230 | 230 | ||
| 231 | void AddEventToQueue(Event* new_event) { | 231 | static void AddEventToQueue(Event* new_event) { |
| 232 | Event* prev_event = nullptr; | 232 | Event* prev_event = nullptr; |
| 233 | Event** next_event = &first; | 233 | Event** next_event = &first; |
| 234 | for (;;) { | 234 | for (;;) { |
diff --git a/src/core/hle/hle.cpp b/src/core/hle/hle.cpp index 97d73781f..529133ca7 100644 --- a/src/core/hle/hle.cpp +++ b/src/core/hle/hle.cpp | |||
| @@ -22,7 +22,7 @@ static std::vector<ModuleDef> g_module_db; | |||
| 22 | 22 | ||
| 23 | bool g_reschedule = false; ///< If true, immediately reschedules the CPU to a new thread | 23 | bool g_reschedule = false; ///< If true, immediately reschedules the CPU to a new thread |
| 24 | 24 | ||
| 25 | const FunctionDef* GetSVCInfo(u32 opcode) { | 25 | static const FunctionDef* GetSVCInfo(u32 opcode) { |
| 26 | u32 func_num = opcode & 0xFFFFFF; // 8 bits | 26 | u32 func_num = opcode & 0xFFFFFF; // 8 bits |
| 27 | if (func_num > 0xFF) { | 27 | if (func_num > 0xFF) { |
| 28 | LOG_ERROR(Kernel_SVC,"unknown svc=0x%02X", func_num); | 28 | LOG_ERROR(Kernel_SVC,"unknown svc=0x%02X", func_num); |
| @@ -63,7 +63,7 @@ void RegisterModule(std::string name, int num_functions, const FunctionDef* func | |||
| 63 | g_module_db.push_back(module); | 63 | g_module_db.push_back(module); |
| 64 | } | 64 | } |
| 65 | 65 | ||
| 66 | void RegisterAllModules() { | 66 | static void RegisterAllModules() { |
| 67 | SVC::Register(); | 67 | SVC::Register(); |
| 68 | } | 68 | } |
| 69 | 69 | ||
diff --git a/src/core/hle/service/ac_u.cpp b/src/core/hle/service/ac_u.cpp index 50644816b..f8aab6bc7 100644 --- a/src/core/hle/service/ac_u.cpp +++ b/src/core/hle/service/ac_u.cpp | |||
| @@ -17,7 +17,7 @@ namespace AC_U { | |||
| 17 | * 1 : Result of function, 0 on success, otherwise error code | 17 | * 1 : Result of function, 0 on success, otherwise error code |
| 18 | * 2 : Output connection type, 0 = none, 1 = Old3DS Internet, 2 = New3DS Internet. | 18 | * 2 : Output connection type, 0 = none, 1 = Old3DS Internet, 2 = New3DS Internet. |
| 19 | */ | 19 | */ |
| 20 | void GetWifiStatus(Service::Interface* self) { | 20 | static void GetWifiStatus(Service::Interface* self) { |
| 21 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 21 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 22 | 22 | ||
| 23 | // TODO(purpasmart96): This function is only a stub, | 23 | // TODO(purpasmart96): This function is only a stub, |
diff --git a/src/core/hle/service/apt_u.cpp b/src/core/hle/service/apt_u.cpp index 12af5e9f7..2d605a767 100644 --- a/src/core/hle/service/apt_u.cpp +++ b/src/core/hle/service/apt_u.cpp | |||
| @@ -160,7 +160,7 @@ void GetAppletManInfo(Service::Interface* self) { | |||
| 160 | * 1 : Result of function, 0 on success, otherwise error code | 160 | * 1 : Result of function, 0 on success, otherwise error code |
| 161 | * 2 : Output, 0 = not registered, 1 = registered. | 161 | * 2 : Output, 0 = not registered, 1 = registered. |
| 162 | */ | 162 | */ |
| 163 | void IsRegistered(Service::Interface* self) { | 163 | static void IsRegistered(Service::Interface* self) { |
| 164 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 164 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 165 | u32 app_id = cmd_buff[1]; | 165 | u32 app_id = cmd_buff[1]; |
| 166 | cmd_buff[1] = RESULT_SUCCESS.raw; // No error | 166 | cmd_buff[1] = RESULT_SUCCESS.raw; // No error |
| @@ -191,7 +191,7 @@ void InquireNotification(Service::Interface* self) { | |||
| 191 | * 0 : Return Header | 191 | * 0 : Return Header |
| 192 | * 1 : Result of function, 0 on success, otherwise error code | 192 | * 1 : Result of function, 0 on success, otherwise error code |
| 193 | */ | 193 | */ |
| 194 | void SendParameter(Service::Interface* self) { | 194 | static void SendParameter(Service::Interface* self) { |
| 195 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 195 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 196 | u32 src_app_id = cmd_buff[1]; | 196 | u32 src_app_id = cmd_buff[1]; |
| 197 | u32 dst_app_id = cmd_buff[2]; | 197 | u32 dst_app_id = cmd_buff[2]; |
| @@ -291,7 +291,7 @@ void GlanceParameter(Service::Interface* self) { | |||
| 291 | * 2 : Status flag, 0 = failure due to no parameter data being available, or the above enabled | 291 | * 2 : Status flag, 0 = failure due to no parameter data being available, or the above enabled |
| 292 | * fields don't match the fields in NS state. 1 = success. | 292 | * fields don't match the fields in NS state. 1 = success. |
| 293 | */ | 293 | */ |
| 294 | void CancelParameter(Service::Interface* self) { | 294 | static void CancelParameter(Service::Interface* self) { |
| 295 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 295 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 296 | u32 flag1 = cmd_buff[1]; | 296 | u32 flag1 = cmd_buff[1]; |
| 297 | u32 unk = cmd_buff[2]; | 297 | u32 unk = cmd_buff[2]; |
| @@ -367,7 +367,7 @@ void GetSharedFont(Service::Interface* self) { | |||
| 367 | * Outputs: | 367 | * Outputs: |
| 368 | * 1 : Result of function, 0 on success, otherwise error code | 368 | * 1 : Result of function, 0 on success, otherwise error code |
| 369 | */ | 369 | */ |
| 370 | void SetAppCpuTimeLimit(Service::Interface* self) { | 370 | static void SetAppCpuTimeLimit(Service::Interface* self) { |
| 371 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 371 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 372 | u32 value = cmd_buff[1]; | 372 | u32 value = cmd_buff[1]; |
| 373 | u32 percent = cmd_buff[2]; | 373 | u32 percent = cmd_buff[2]; |
| @@ -390,7 +390,7 @@ void SetAppCpuTimeLimit(Service::Interface* self) { | |||
| 390 | * 1 : Result of function, 0 on success, otherwise error code | 390 | * 1 : Result of function, 0 on success, otherwise error code |
| 391 | * 2 : System core CPU time percentage | 391 | * 2 : System core CPU time percentage |
| 392 | */ | 392 | */ |
| 393 | void GetAppCpuTimeLimit(Service::Interface* self) { | 393 | static void GetAppCpuTimeLimit(Service::Interface* self) { |
| 394 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 394 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 395 | u32 value = cmd_buff[1]; | 395 | u32 value = cmd_buff[1]; |
| 396 | 396 | ||
diff --git a/src/core/hle/service/dsp_dsp.cpp b/src/core/hle/service/dsp_dsp.cpp index db1e3b5fd..0b3603ce1 100644 --- a/src/core/hle/service/dsp_dsp.cpp +++ b/src/core/hle/service/dsp_dsp.cpp | |||
| @@ -34,7 +34,7 @@ void SignalInterrupt() { | |||
| 34 | * 1 : Result of function, 0 on success, otherwise error code | 34 | * 1 : Result of function, 0 on success, otherwise error code |
| 35 | * 2 : (inaddr << 1) + 0x1FF40000 (where 0x1FF00000 is the DSP RAM address) | 35 | * 2 : (inaddr << 1) + 0x1FF40000 (where 0x1FF00000 is the DSP RAM address) |
| 36 | */ | 36 | */ |
| 37 | void ConvertProcessAddressFromDspDram(Service::Interface* self) { | 37 | static void ConvertProcessAddressFromDspDram(Service::Interface* self) { |
| 38 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 38 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 39 | 39 | ||
| 40 | u32 addr = cmd_buff[1]; | 40 | u32 addr = cmd_buff[1]; |
| @@ -57,7 +57,7 @@ void ConvertProcessAddressFromDspDram(Service::Interface* self) { | |||
| 57 | * 1 : Result of function, 0 on success, otherwise error code | 57 | * 1 : Result of function, 0 on success, otherwise error code |
| 58 | * 2 : Component loaded, 0 on not loaded, 1 on loaded | 58 | * 2 : Component loaded, 0 on not loaded, 1 on loaded |
| 59 | */ | 59 | */ |
| 60 | void LoadComponent(Service::Interface* self) { | 60 | static void LoadComponent(Service::Interface* self) { |
| 61 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 61 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 62 | 62 | ||
| 63 | cmd_buff[1] = 0; // No error | 63 | cmd_buff[1] = 0; // No error |
| @@ -74,7 +74,7 @@ void LoadComponent(Service::Interface* self) { | |||
| 74 | * 1 : Result of function, 0 on success, otherwise error code | 74 | * 1 : Result of function, 0 on success, otherwise error code |
| 75 | * 3 : Semaphore event handle | 75 | * 3 : Semaphore event handle |
| 76 | */ | 76 | */ |
| 77 | void GetSemaphoreEventHandle(Service::Interface* self) { | 77 | static void GetSemaphoreEventHandle(Service::Interface* self) { |
| 78 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 78 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 79 | 79 | ||
| 80 | cmd_buff[1] = RESULT_SUCCESS.raw; // No error | 80 | cmd_buff[1] = RESULT_SUCCESS.raw; // No error |
| @@ -92,7 +92,7 @@ void GetSemaphoreEventHandle(Service::Interface* self) { | |||
| 92 | * Outputs: | 92 | * Outputs: |
| 93 | * 1 : Result of function, 0 on success, otherwise error code | 93 | * 1 : Result of function, 0 on success, otherwise error code |
| 94 | */ | 94 | */ |
| 95 | void RegisterInterruptEvents(Service::Interface* self) { | 95 | static void RegisterInterruptEvents(Service::Interface* self) { |
| 96 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 96 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 97 | 97 | ||
| 98 | auto evt = Kernel::g_handle_table.Get<Kernel::Event>(cmd_buff[4]); | 98 | auto evt = Kernel::g_handle_table.Get<Kernel::Event>(cmd_buff[4]); |
| @@ -116,7 +116,7 @@ void RegisterInterruptEvents(Service::Interface* self) { | |||
| 116 | * Outputs: | 116 | * Outputs: |
| 117 | * 1 : Result of function, 0 on success, otherwise error code | 117 | * 1 : Result of function, 0 on success, otherwise error code |
| 118 | */ | 118 | */ |
| 119 | void WriteReg0x10(Service::Interface* self) { | 119 | static void WriteReg0x10(Service::Interface* self) { |
| 120 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 120 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 121 | 121 | ||
| 122 | SignalInterrupt(); | 122 | SignalInterrupt(); |
| @@ -137,7 +137,7 @@ void WriteReg0x10(Service::Interface* self) { | |||
| 137 | * 0 : Return header | 137 | * 0 : Return header |
| 138 | * 1 : Result of function, 0 on success, otherwise error code | 138 | * 1 : Result of function, 0 on success, otherwise error code |
| 139 | */ | 139 | */ |
| 140 | void WriteProcessPipe(Service::Interface* self) { | 140 | static void WriteProcessPipe(Service::Interface* self) { |
| 141 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 141 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 142 | 142 | ||
| 143 | u32 number = cmd_buff[1]; | 143 | u32 number = cmd_buff[1]; |
| @@ -162,7 +162,7 @@ void WriteProcessPipe(Service::Interface* self) { | |||
| 162 | * 1 : Result of function, 0 on success, otherwise error code | 162 | * 1 : Result of function, 0 on success, otherwise error code |
| 163 | * 2 : Number of bytes read from pipe | 163 | * 2 : Number of bytes read from pipe |
| 164 | */ | 164 | */ |
| 165 | void ReadPipeIfPossible(Service::Interface* self) { | 165 | static void ReadPipeIfPossible(Service::Interface* self) { |
| 166 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 166 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 167 | 167 | ||
| 168 | u32 size = cmd_buff[3] & 0xFFFF;// Lower 16 bits are size | 168 | u32 size = cmd_buff[3] & 0xFFFF;// Lower 16 bits are size |
| @@ -200,7 +200,7 @@ void ReadPipeIfPossible(Service::Interface* self) { | |||
| 200 | * Outputs: | 200 | * Outputs: |
| 201 | * 1 : Result of function, 0 on success, otherwise error code | 201 | * 1 : Result of function, 0 on success, otherwise error code |
| 202 | */ | 202 | */ |
| 203 | void SetSemaphoreMask(Service::Interface* self) { | 203 | static void SetSemaphoreMask(Service::Interface* self) { |
| 204 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 204 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 205 | 205 | ||
| 206 | u32 mask = cmd_buff[1]; | 206 | u32 mask = cmd_buff[1]; |
| @@ -219,7 +219,7 @@ void SetSemaphoreMask(Service::Interface* self) { | |||
| 219 | * 2 : The headphone status response, 0 = Not using headphones?, | 219 | * 2 : The headphone status response, 0 = Not using headphones?, |
| 220 | * 1 = using headphones? | 220 | * 1 = using headphones? |
| 221 | */ | 221 | */ |
| 222 | void GetHeadphoneStatus(Service::Interface* self) { | 222 | static void GetHeadphoneStatus(Service::Interface* self) { |
| 223 | u32* cmd_buff = Kernel::GetCommandBuffer(); | 223 | u32* cmd_buff = Kernel::GetCommandBuffer(); |
| 224 | 224 | ||
| 225 | cmd_buff[1] = RESULT_SUCCESS.raw; // No error | 225 | cmd_buff[1] = RESULT_SUCCESS.raw; // No error |
diff --git a/src/core/hle/shared_page.cpp b/src/core/hle/shared_page.cpp index f5f2a6858..f0726ef09 100644 --- a/src/core/hle/shared_page.cpp +++ b/src/core/hle/shared_page.cpp | |||
| @@ -7,6 +7,7 @@ | |||
| 7 | #include "core/core.h" | 7 | #include "core/core.h" |
| 8 | #include "core/mem_map.h" | 8 | #include "core/mem_map.h" |
| 9 | #include "core/hle/config_mem.h" | 9 | #include "core/hle/config_mem.h" |
| 10 | #include "core/hle/shared_page.h" | ||
| 10 | 11 | ||
| 11 | //////////////////////////////////////////////////////////////////////////////////////////////////// | 12 | //////////////////////////////////////////////////////////////////////////////////////////////////// |
| 12 | 13 | ||