📄 cpu.h
字号:
UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_CCi; \ UINT f_cond; \ UINT f_ope4; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_CSMUL_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \ f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \ f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_ADDCC_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ICCi_1; \ UINT f_ope2; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_ADDCC_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \ f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_SMULCC_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ICCi_1; \ UINT f_ope2; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_SMULCC_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \ f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_ADDI_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ INT f_d12; \ unsigned int length;#define EXTRACT_IFMT_ADDI_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \#define EXTRACT_IFMT_SMULI_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ INT f_d12; \ unsigned int length;#define EXTRACT_IFMT_SMULI_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \#define EXTRACT_IFMT_ADDICC_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ICCi_1; \ INT f_s10; \ unsigned int length;#define EXTRACT_IFMT_ADDICC_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \ f_s10 = EXTRACT_LSB0_INT (insn, 32, 9, 10); \#define EXTRACT_IFMT_SMULICC_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ICCi_1; \ INT f_s10; \ unsigned int length;#define EXTRACT_IFMT_SMULICC_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \ f_s10 = EXTRACT_LSB0_INT (insn, 32, 9, 10); \#define EXTRACT_IFMT_CMPB_VARS \ UINT f_pack; \ UINT f_GRk_null; \ UINT f_op; \ UINT f_GRi; \ UINT f_ICCi_1; \ UINT f_ope2; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_CMPB_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk_null = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ICCi_1 = EXTRACT_LSB0_UINT (insn, 32, 11, 2); \ f_ope2 = EXTRACT_LSB0_UINT (insn, 32, 9, 4); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_SETLO_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_misc_null_4; \ UINT f_u16; \ unsigned int length;#define EXTRACT_IFMT_SETLO_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \ f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \#define EXTRACT_IFMT_SETHI_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_misc_null_4; \ UINT f_u16; \ unsigned int length;#define EXTRACT_IFMT_SETHI_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \ f_u16 = EXTRACT_LSB0_UINT (insn, 32, 15, 16); \#define EXTRACT_IFMT_SETLOS_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_misc_null_4; \ INT f_s16; \ unsigned int length;#define EXTRACT_IFMT_SETLOS_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_misc_null_4 = EXTRACT_LSB0_UINT (insn, 32, 17, 2); \ f_s16 = EXTRACT_LSB0_INT (insn, 32, 15, 16); \#define EXTRACT_IFMT_LDBF_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ope1; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_LDBF_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_LDC_VARS \ UINT f_pack; \ UINT f_CPRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ope1; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_LDC_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_LDD_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ope1; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_LDD_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_LDDF_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ope1; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_LDDF_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_LDDC_VARS \ UINT f_pack; \ UINT f_CPRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_ope1; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_LDDC_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_CPRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_LDSBI_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ INT f_d12; \ unsigned int length;#define EXTRACT_IFMT_LDSBI_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \#define EXTRACT_IFMT_LDBFI_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_GRi; \ INT f_d12; \ unsigned int length;#define EXTRACT_IFMT_LDBFI_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \#define EXTRACT_IFMT_LDDI_VARS \ UINT f_pack; \ UINT f_GRk; \ UINT f_op; \ UINT f_GRi; \ INT f_d12; \ unsigned int length;#define EXTRACT_IFMT_LDDI_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_GRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \#define EXTRACT_IFMT_LDDFI_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_GRi; \ INT f_d12; \ unsigned int length;#define EXTRACT_IFMT_LDDFI_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_d12 = EXTRACT_LSB0_INT (insn, 32, 11, 12); \#define EXTRACT_IFMT_CLDBF_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_CCi; \ UINT f_cond; \ UINT f_ope4; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_CLDBF_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \ f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \ f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_CLDDF_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_GRi; \ UINT f_CCi; \ UINT f_cond; \ UINT f_ope4; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_CLDDF_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_GRi = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \ f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \ f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_MOVGF_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_rs_null; \ UINT f_ope1; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_MOVGF_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_CMOVGF_VARS \ UINT f_pack; \ UINT f_FRk; \ UINT f_op; \ UINT f_rs_null; \ UINT f_CCi; \ UINT f_cond; \ UINT f_ope4; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_CMOVGF_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_FRk = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_rs_null = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \ f_CCi = EXTRACT_LSB0_UINT (insn, 32, 11, 3); \ f_cond = EXTRACT_LSB0_UINT (insn, 32, 8, 1); \ f_ope4 = EXTRACT_LSB0_UINT (insn, 32, 7, 2); \ f_GRj = EXTRACT_LSB0_UINT (insn, 32, 5, 6); \#define EXTRACT_IFMT_MOVGS_VARS \ UINT f_pack; \ UINT f_op; \ UINT f_spr_h; \ UINT f_spr_l; \ UINT f_spr; \ UINT f_ope1; \ UINT f_GRj; \ unsigned int length;#define EXTRACT_IFMT_MOVGS_CODE \ length = 4; \ f_pack = EXTRACT_LSB0_UINT (insn, 32, 31, 1); \ f_op = EXTRACT_LSB0_UINT (insn, 32, 24, 7); \ f_spr_h = EXTRACT_LSB0_UINT (insn, 32, 30, 6); \ f_spr_l = EXTRACT_LSB0_UINT (insn, 32, 17, 6); \{\ f_spr = ((((f_spr_h) << (6))) | (f_spr_l));\}\ f_ope1 = EXTRACT_LSB0_UINT (insn, 32, 11, 6); \ f_GRj = EXTRA
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -