cpu.h

来自「这个是LINUX下的GDB调度工具的源码」· C头文件 代码 · 共 2,166 行 · 第 1/5 页

H
2,166
字号
  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 + =
减小字号Ctrl + -
显示快捷键?