X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=deps%2Flightrec%2Fregcache.h;h=b919ce08cef47b2568fcca0561bac7feadf6f770;hb=fcf8c153c82b4539cc3bcb80666813843dcaa3fc;hp=55f1cfd98c5ae36bc9118db6dfa2c4d6f3a228ae;hpb=384af87540d751ef274e5956d58f4bbc153a34a9;p=pcsx_rearmed.git diff --git a/deps/lightrec/regcache.h b/deps/lightrec/regcache.h index 55f1cfd9..b919ce08 100644 --- a/deps/lightrec/regcache.h +++ b/deps/lightrec/regcache.h @@ -50,6 +50,9 @@ u8 lightrec_alloc_reg_out(struct regcache *cache, jit_state_t *_jit, u8 lightrec_alloc_reg_in(struct regcache *cache, jit_state_t *_jit, u16 reg, u8 flags); +void lightrec_remap_reg(struct regcache *cache, jit_state_t *_jit, + u8 jit_reg, u16 reg_out, _Bool discard); + void lightrec_load_imm(struct regcache *cache, jit_state_t *_jit, u8 jit_reg, u32 pc, u32 imm); void lightrec_load_next_pc(struct regcache *cache, jit_state_t *_jit, u8 reg); @@ -58,12 +61,14 @@ void lightrec_load_next_pc_imm(struct regcache *cache, s8 lightrec_get_reg_with_value(struct regcache *cache, intptr_t value); void lightrec_temp_set_value(struct regcache *cache, u8 jit_reg, intptr_t value); +u8 lightrec_alloc_reg_temp_with_value(struct regcache *cache, + jit_state_t *_jit, intptr_t value); u8 lightrec_get_reg_in_flags(struct regcache *cache, u8 jit_reg); void lightrec_set_reg_out_flags(struct regcache *cache, u8 jit_reg, u8 flags); void lightrec_regcache_reset(struct regcache *cache); -void lightrec_preload_pc(struct regcache *cache); +void lightrec_preload_pc(struct regcache *cache, jit_state_t *_jit); void lightrec_free_reg(struct regcache *cache, u8 jit_reg); void lightrec_free_regs(struct regcache *cache);