summaryrefslogtreecommitdiff
path: root/x86/x86_emit.h
diff options
context:
space:
mode:
Diffstat (limited to 'x86/x86_emit.h')
-rw-r--r--x86/x86_emit.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/x86/x86_emit.h b/x86/x86_emit.h
index ef79110..69c1f8e 100644
--- a/x86/x86_emit.h
+++ b/x86/x86_emit.h
@@ -325,7 +325,7 @@ typedef enum
x86_emit_mov_reg_mem(reg_##ireg, reg_base, reg_index * 4); \
#define generate_load_pc(ireg, new_pc) \
- x86_emit_mov_reg_imm(reg_##ireg, new_pc) \
+ x86_emit_mov_reg_imm(reg_##ireg, (new_pc)) \
#define generate_load_imm(ireg, imm) \
x86_emit_mov_reg_imm(reg_##ireg, imm) \
@@ -1894,6 +1894,10 @@ u32 function_cc execute_ror_imm_op(u32 value, u32 shift)
// Operation types: imm, mem_reg, mem_imm
+#define thumb_load_pc_pool_const(reg_rd, value) \
+ generate_load_pc(a0, (value)); \
+ generate_store_reg(a0, reg_rd)
+
#define thumb_access_memory_load(mem_type, reg_rd) \
cycle_count += 2; \
generate_function_call(execute_load_##mem_type); \
@@ -2236,6 +2240,12 @@ static void function_cc execute_swi(u32 pc)
generate_indirect_branch_cycle_update(dual); \
} \
+#define thumb_process_cheats() \
+ generate_function_call(process_cheats);
+
+#define arm_process_cheats() \
+ generate_function_call(process_cheats);
+
#define thumb_swi() \
generate_swi_hle_handler(opcode & 0xFF); \
generate_update_pc((pc + 2)); \