📄 tb.h
字号:
#ifndef _TB_H_
#define _TB_H_
#define ALIGN(val,align) (val - val % align)
#define TB_INSN_LEN_MAX tb_insn_len_max
//teawater change align to make speed up 2005.07.22-----------------------------
#define TB_LEN (1 << 8) //256
#define TB_ALIGN(a) (a & (~(TB_LEN - 1)))
//AJ2D--------------------------------------------------------------------------
#define TB_TBP_MAX (TB_LEN / sizeof(ARMword) * TB_INSN_LEN_MAX + op_return.len)
#define TB_TBT_CACHE_MAX 8
#define TB_TBP_DEFAULT (1024 * 1024 * 64)
typedef struct tb_cache_s {
struct list_head list;
ARMword addr;
uint8_t *tp;
}tb_cache_t;
typedef struct tb_s {
//teawater add for new tb manage function 2005.07.10----------------------------
struct list_head list;
//AJ2D--------------------------------------------------------------------------
int ted; //0 not translated 1 already translated
struct list_head cache[TB_TBT_CACHE_MAX]; //if set ted = 0 must clear it
//teawater add for new tb manage function 2005.07.10----------------------------
uint8_t *tbp;
ARMword addr;
//AJ2D--------------------------------------------------------------------------
//teawater change for if trap translate stop 2005.07.23-------------------------
ARMword tran_addr;
uint8_t *tbp_now;
//AJ2D--------------------------------------------------------------------------
}tb_t;
extern int tb_insn_len_max;
extern uint8_t * tb_find(ARMul_State * state, ARMword addr);
extern int tb_insn_len_max_init(ARMul_State * state);
#ifndef TEA_OUT
//#define TEA_DEBUG
#ifdef TEA_DEBUG
#define TEA_OUT(a) a
#else
#define TEA_OUT(a)
#endif
#endif
#endif //_TB_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -