X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=libpcsxcore%2Fnew_dynarec%2Flinkage_offsets.h;h=f7e1911a3cc7641018ca37d9cd5ffae2fecddf8c;hp=55ceb42a4cbdc0756be7192a9eb7cdab47907387;hb=HEAD;hpb=b1f89e6f247c9b11c745cc1a7201cce5fb4fe08f diff --git a/libpcsxcore/new_dynarec/linkage_offsets.h b/libpcsxcore/new_dynarec/linkage_offsets.h index 55ceb42a..541325ac 100644 --- a/libpcsxcore/new_dynarec/linkage_offsets.h +++ b/libpcsxcore/new_dynarec/linkage_offsets.h @@ -1,12 +1,15 @@ +#define PTRSZ __SIZEOF_POINTER__ + #define LO_next_interupt 64 #define LO_cycle_count (LO_next_interupt + 4) #define LO_last_count (LO_cycle_count + 4) #define LO_pending_exception (LO_last_count + 4) #define LO_stop (LO_pending_exception + 4) -#define LO_invc_ptr (LO_stop + 4) -#define LO_address (LO_invc_ptr + 4) -#define LO_psxRegs (LO_address + 4) +#define LO_branch_target (LO_stop + 4) +#define LO_address (LO_branch_target + 4) +#define LO_hack_addr (LO_address + 4) +#define LO_psxRegs (LO_hack_addr + 4) #define LO_reg (LO_psxRegs) #define LO_lo (LO_reg + 128) #define LO_hi (LO_lo + 4) @@ -19,20 +22,25 @@ #define LO_cycle (LO_code + 4) #define LO_interrupt (LO_cycle + 4) #define LO_intCycle (LO_interrupt + 4) -#define LO_psxRegs_end (LO_intCycle + 256) +#define LO_gteBusyCycle (LO_intCycle + 256) +#define LO_muldivBusyCycle (LO_gteBusyCycle + 4) +#define LO_psxRegs_subCycle (LO_muldivBusyCycle + 4) +#define LO_psxRegs_biuReg (LO_psxRegs_subCycle + 4*2) +#define LO_psxRegs_reserved (LO_psxRegs_biuReg + 4) +#define LO_psxRegs_end (LO_psxRegs_reserved + 4*7) #define LO_rcnts (LO_psxRegs_end) #define LO_rcnts_end (LO_rcnts + 7*4*4) -#define LO_mem_rtab (LO_rcnts_end) -#define LO_mem_wtab (LO_mem_rtab + 4) -#define LO_psxH_ptr (LO_mem_wtab + 4) -#define LO_zeromem_ptr (LO_psxH_ptr + 4) -#define LO_inv_code_start (LO_zeromem_ptr + 4) +#define LO_inv_code_start (LO_rcnts_end) #define LO_inv_code_end (LO_inv_code_start + 4) -#define LO_branch_target (LO_inv_code_end + 4) -#define LO_align0 (LO_branch_target + 4) -#define LO_mini_ht (LO_align0 + 16) -#define LO_restore_candidate (LO_mini_ht + 256) -#define LO_dynarec_local_size (LO_restore_candidate + 512) +#define LO_mem_rtab (LO_inv_code_end + 4) +#define LO_mem_wtab (LO_mem_rtab + PTRSZ) +#define LO_psxH_ptr (LO_mem_wtab + PTRSZ) +#define LO_zeromem_ptr (LO_psxH_ptr + PTRSZ) +#define LO_invc_ptr (LO_zeromem_ptr + PTRSZ) +#define LO_scratch_buf_ptr (LO_invc_ptr + PTRSZ) +#define LO_saved_lr (LO_scratch_buf_ptr + PTRSZ) +#define LO_ram_offset (LO_saved_lr + PTRSZ) +#define LO_mini_ht (LO_ram_offset + PTRSZ) +#define LO_dynarec_local_size (LO_mini_ht + PTRSZ*32*2) -#define LO_FCR0 (LO_align0) -#define LO_FCR31 (LO_align0) +#define LO_cop2_to_scratch_buf (LO_scratch_buf_ptr - LO_reg_cop2d)