X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=cpu%2Fsh2%2Fcompiler.h;h=21d7ca1784063f4b1d1dbf94f36f0b7309c21999;hb=e15536775962fef2058ffa43cbb290271f649c17;hp=c6b6a5717e2286ea226cfe61908ec7968bad8a5a;hpb=e898de13cdd5416507675f175958204c5e9f27e9;p=picodrive.git diff --git a/cpu/sh2/compiler.h b/cpu/sh2/compiler.h index c6b6a57..21d7ca1 100644 --- a/cpu/sh2/compiler.h +++ b/cpu/sh2/compiler.h @@ -1,3 +1,17 @@ int sh2_drc_init(SH2 *sh2); void sh2_drc_finish(SH2 *sh2); +void sh2_drc_mem_setup(SH2 *sh2); +void sh2_drc_flush_all(void); +void sh2_drc_wcheck_ram(unsigned int a, int val, int cpuid); +void sh2_drc_wcheck_da(unsigned int a, int val, int cpuid); +#define BLOCK_INSN_LIMIT 128 + +#define OP_FLAGS(pc) op_flags[((pc) - (base_pc)) / 2] +#define OF_DELAY_OP (1 << 0) +#define OF_BTARGET (1 << 1) +#define OF_T_SET (1 << 2) // T is known to be set +#define OF_T_CLEAR (1 << 3) // ... clear + +void scan_block(unsigned int base_pc, int is_slave, + unsigned char *op_flags, unsigned int *end_pc);