drc: add a timing hack for Internal Section
[pcsx_rearmed.git] / libpcsxcore / new_dynarec / linkage_offsets.h
CommitLineData
b1f89e6f 1
687b4580 2#define PTRSZ __SIZEOF_POINTER__
3
b1f89e6f 4#define LO_next_interupt 64
5#define LO_cycle_count (LO_next_interupt + 4)
6#define LO_last_count (LO_cycle_count + 4)
7#define LO_pending_exception (LO_last_count + 4)
8#define LO_stop (LO_pending_exception + 4)
687b4580 9#define LO_branch_target (LO_stop + 4)
10#define LO_address (LO_branch_target + 4)
11#define LO_align0 (LO_address + 4)
12#define LO_psxRegs (LO_align0 + 4)
b1f89e6f 13#define LO_reg (LO_psxRegs)
14#define LO_lo (LO_reg + 128)
15#define LO_hi (LO_lo + 4)
16#define LO_reg_cop0 (LO_hi + 4)
17#define LO_reg_cop2d (LO_reg_cop0 + 128)
18#define LO_reg_cop2c (LO_reg_cop2d + 128)
19#define LO_PC (LO_reg_cop2c + 128)
20#define LO_pcaddr (LO_PC)
21#define LO_code (LO_PC + 4)
22#define LO_cycle (LO_code + 4)
23#define LO_interrupt (LO_cycle + 4)
24#define LO_intCycle (LO_interrupt + 4)
25#define LO_psxRegs_end (LO_intCycle + 256)
26#define LO_rcnts (LO_psxRegs_end)
27#define LO_rcnts_end (LO_rcnts + 7*4*4)
687b4580 28#define LO_inv_code_start (LO_rcnts_end)
b1f89e6f 29#define LO_inv_code_end (LO_inv_code_start + 4)
687b4580 30#define LO_mem_rtab (LO_inv_code_end + 4)
31#define LO_mem_wtab (LO_mem_rtab + PTRSZ)
32#define LO_psxH_ptr (LO_mem_wtab + PTRSZ)
33#define LO_zeromem_ptr (LO_psxH_ptr + PTRSZ)
34#define LO_invc_ptr (LO_zeromem_ptr + PTRSZ)
35#define LO_scratch_buf_ptr (LO_invc_ptr + PTRSZ)
36#define LO_align1 (LO_scratch_buf_ptr + PTRSZ)
37#define LO_mini_ht (LO_align1 + PTRSZ*2)
d1e4ebd9 38#define LO_restore_candidate (LO_mini_ht + PTRSZ*32*2)
b1f89e6f 39#define LO_dynarec_local_size (LO_restore_candidate + 512)
40
c6d5790c 41#define LO_cop2_to_scratch_buf (LO_scratch_buf_ptr - LO_reg_cop2d)