X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=libpcsxcore%2Fnew_dynarec%2Fpcsxmem_inline.c;h=305931ae394c3b9bff68dd7b81318a1f4c2a0ce2;hp=210ce0edf80d20cb2baf0413f4d674a32f43c5af;hb=HEAD;hpb=b1be1eeee94d3547c20719acfa6b0082404897f1 diff --git a/libpcsxcore/new_dynarec/pcsxmem_inline.c b/libpcsxcore/new_dynarec/pcsxmem_inline.c index 210ce0ed..69227f2a 100644 --- a/libpcsxcore/new_dynarec/pcsxmem_inline.c +++ b/libpcsxcore/new_dynarec/pcsxmem_inline.c @@ -5,6 +5,8 @@ * See the COPYING file in the top-level directory. */ +#ifndef DRC_DBG + static int pcsx_direct_read(int type, u_int addr, int cc_adj, int cc, int rs, int rt) { if ((addr & 0xfffff000) == 0x1f801000) { @@ -13,14 +15,16 @@ static int pcsx_direct_read(int type, u_int addr, int cc_adj, int cc, int rs, in case 0x1120: // rcnt2 count if (rt < 0) goto dont_care; if (cc < 0) return 0; - emit_readword((int)&rcnts[2].mode, HOST_TEMPREG); - emit_readword((int)&rcnts[2].cycleStart, rt); + host_tempreg_acquire(); + emit_readword(&rcnts[2].mode, HOST_TEMPREG); + emit_readword(&rcnts[2].cycleStart, rt); emit_testimm(HOST_TEMPREG, 0x200); - emit_readword((int)&last_count, HOST_TEMPREG); + emit_readword(&last_count, HOST_TEMPREG); emit_sub(HOST_TEMPREG, rt, HOST_TEMPREG); emit_add(HOST_TEMPREG, cc, HOST_TEMPREG); if (cc_adj) emit_addimm(HOST_TEMPREG, cc_adj, rt); + host_tempreg_release(); emit_shrne_imm(rt, 3, rt); mov_loadtype_adj(type!=LOADW_STUB?type:LOADH_STUB, rt, rt); goto hit; @@ -29,9 +33,11 @@ static int pcsx_direct_read(int type, u_int addr, int cc_adj, int cc, int rs, in case 0x1124: // rcnt mode if (rt < 0) return 0; t = (addr >> 4) & 3; - emit_readword((int)&rcnts[t].mode, rt); + emit_readword(&rcnts[t].mode, rt); + host_tempreg_acquire(); emit_andimm(rt, ~0x1800, HOST_TEMPREG); - emit_writeword(HOST_TEMPREG, (int)&rcnts[t].mode); + emit_writeword(HOST_TEMPREG, &rcnts[t].mode); + host_tempreg_release(); mov_loadtype_adj(type, rt, rt); goto hit; } @@ -52,4 +58,13 @@ dont_care: return 1; } +#else + +static int pcsx_direct_read(int type, u_int addr, int cc_adj, int cc, int rs, int rt) +{ + return 0; +} + +#endif + // vim:shiftwidth=2:expandtab