⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cpu.h

📁 这个是LINUX下的GDB调度工具的源码
💻 H
📖 第 1 页 / 共 3 页
字号:
// OBSOLETE     UINT f_Ri;// OBSOLETE     unsigned char in_Ri;// OBSOLETE     unsigned char in_h_gr_SI_14;// OBSOLETE   } sfmt_str14h;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     SI f_disp10;// OBSOLETE     UINT f_Ri;// OBSOLETE     unsigned char in_Ri;// OBSOLETE     unsigned char in_h_gr_SI_14;// OBSOLETE   } sfmt_str14;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     UINT f_Ri;// OBSOLETE     unsigned char in_h_gr_SI_15;// OBSOLETE     unsigned char out_Ri;// OBSOLETE     unsigned char out_h_gr_SI_15;// OBSOLETE   } sfmt_ldr15gr;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     UINT f_Ri;// OBSOLETE     USI f_udisp6;// OBSOLETE     unsigned char in_h_gr_SI_15;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_ldr15;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     INT f_disp8;// OBSOLETE     UINT f_Ri;// OBSOLETE     unsigned char in_h_gr_SI_14;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_ldr14ub;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     SI f_disp9;// OBSOLETE     UINT f_Ri;// OBSOLETE     unsigned char in_h_gr_SI_14;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_ldr14uh;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     SI f_disp10;// OBSOLETE     UINT f_Ri;// OBSOLETE     unsigned char in_h_gr_SI_14;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_ldr14;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     SI f_m4;// OBSOLETE     UINT f_Ri;// OBSOLETE     unsigned char in_Ri;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_add2;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     UINT f_Ri;// OBSOLETE     UINT f_u4;// OBSOLETE     unsigned char in_Ri;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_addi;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     SI* i_Rj;// OBSOLETE     UINT f_Ri;// OBSOLETE     UINT f_Rj;// OBSOLETE     unsigned char in_Ri;// OBSOLETE     unsigned char in_Rj;// OBSOLETE     unsigned char in_h_gr_SI_13;// OBSOLETE   } sfmt_str13;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     SI* i_Rj;// OBSOLETE     UINT f_Ri;// OBSOLETE     UINT f_Rj;// OBSOLETE     unsigned char in_Rj;// OBSOLETE     unsigned char in_h_gr_SI_13;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_ldr13;// OBSOLETE   struct { /*  */// OBSOLETE     SI* i_Ri;// OBSOLETE     SI* i_Rj;// OBSOLETE     UINT f_Ri;// OBSOLETE     UINT f_Rj;// OBSOLETE     unsigned char in_Ri;// OBSOLETE     unsigned char in_Rj;// OBSOLETE     unsigned char out_Ri;// OBSOLETE   } sfmt_add;// OBSOLETE   struct { /*  */// OBSOLETE     UINT f_reglist_hi_st;// OBSOLETE     unsigned char in_h_gr_SI_10;// OBSOLETE     unsigned char in_h_gr_SI_11;// OBSOLETE     unsigned char in_h_gr_SI_12;// OBSOLETE     unsigned char in_h_gr_SI_13;// OBSOLETE     unsigned char in_h_gr_SI_14;// OBSOLETE     unsigned char in_h_gr_SI_15;// OBSOLETE     unsigned char in_h_gr_SI_8;// OBSOLETE     unsigned char in_h_gr_SI_9;// OBSOLETE     unsigned char out_h_gr_SI_15;// OBSOLETE   } sfmt_stm1;// OBSOLETE   struct { /*  */// OBSOLETE     UINT f_reglist_hi_ld;// OBSOLETE     unsigned char in_h_gr_SI_15;// OBSOLETE     unsigned char out_h_gr_SI_10;// OBSOLETE     unsigned char out_h_gr_SI_11;// OBSOLETE     unsigned char out_h_gr_SI_12;// OBSOLETE     unsigned char out_h_gr_SI_13;// OBSOLETE     unsigned char out_h_gr_SI_14;// OBSOLETE     unsigned char out_h_gr_SI_15;// OBSOLETE     unsigned char out_h_gr_SI_8;// OBSOLETE     unsigned char out_h_gr_SI_9;// OBSOLETE   } sfmt_ldm1;// OBSOLETE   struct { /*  */// OBSOLETE     UINT f_reglist_low_st;// OBSOLETE     unsigned char in_h_gr_SI_0;// OBSOLETE     unsigned char in_h_gr_SI_1;// OBSOLETE     unsigned char in_h_gr_SI_15;// OBSOLETE     unsigned char in_h_gr_SI_2;// OBSOLETE     unsigned char in_h_gr_SI_3;// OBSOLETE     unsigned char in_h_gr_SI_4;// OBSOLETE     unsigned char in_h_gr_SI_5;// OBSOLETE     unsigned char in_h_gr_SI_6;// OBSOLETE     unsigned char in_h_gr_SI_7;// OBSOLETE     unsigned char out_h_gr_SI_15;// OBSOLETE   } sfmt_stm0;// OBSOLETE   struct { /*  */// OBSOLETE     UINT f_reglist_low_ld;// OBSOLETE     unsigned char in_h_gr_SI_15;// OBSOLETE     unsigned char out_h_gr_SI_0;// OBSOLETE     unsigned char out_h_gr_SI_1;// OBSOLETE     unsigned char out_h_gr_SI_15;// OBSOLETE     unsigned char out_h_gr_SI_2;// OBSOLETE     unsigned char out_h_gr_SI_3;// OBSOLETE     unsigned char out_h_gr_SI_4;// OBSOLETE     unsigned char out_h_gr_SI_5;// OBSOLETE     unsigned char out_h_gr_SI_6;// OBSOLETE     unsigned char out_h_gr_SI_7;// OBSOLETE   } sfmt_ldm0;// OBSOLETE #if WITH_SCACHE_PBB// OBSOLETE   /* Writeback handler.  */// OBSOLETE   struct {// OBSOLETE     /* Pointer to argbuf entry for insn whose results need writing back.  */// OBSOLETE     const struct argbuf *abuf;// OBSOLETE   } write;// OBSOLETE   /* x-before handler */// OBSOLETE   struct {// OBSOLETE     /*const SCACHE *insns[MAX_PARALLEL_INSNS];*/// OBSOLETE     int first_p;// OBSOLETE   } before;// OBSOLETE   /* x-after handler */// OBSOLETE   struct {// OBSOLETE     int empty;// OBSOLETE   } after;// OBSOLETE   /* This entry is used to terminate each pbb.  */// OBSOLETE   struct {// OBSOLETE     /* Number of insns in pbb.  */// OBSOLETE     int insn_count;// OBSOLETE     /* Next pbb to execute.  */// OBSOLETE     SCACHE *next;// OBSOLETE     SCACHE *branch_target;// OBSOLETE   } chain;// OBSOLETE #endif// OBSOLETE };// OBSOLETE // OBSOLETE /* The ARGBUF struct.  */// OBSOLETE struct argbuf {// OBSOLETE   /* These are the baseclass definitions.  */// OBSOLETE   IADDR addr;// OBSOLETE   const IDESC *idesc;// OBSOLETE   char trace_p;// OBSOLETE   char profile_p;// OBSOLETE   /* ??? Temporary hack for skip insns.  */// OBSOLETE   char skip_count;// OBSOLETE   char unused;// OBSOLETE   /* cpu specific data follows */// OBSOLETE   union sem semantic;// OBSOLETE   int written;// OBSOLETE   union sem_fields fields;// OBSOLETE };// OBSOLETE // OBSOLETE /* A cached insn.// OBSOLETE // OBSOLETE    ??? SCACHE used to contain more than just argbuf.  We could delete the// OBSOLETE    type entirely and always just use ARGBUF, but for future concerns and as// OBSOLETE    a level of abstraction it is left in.  */// OBSOLETE // OBSOLETE struct scache {// OBSOLETE   struct argbuf argbuf;// OBSOLETE };// OBSOLETE // OBSOLETE /* Macros to simplify extraction, reading and semantic code.// OBSOLETE    These define and assign the local vars that contain the insn's fields.  */// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_EMPTY_VARS \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_EMPTY_CODE \// OBSOLETE   length = 0; \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_ADD_VARS \// OBSOLETE   UINT f_op1; \// OBSOLETE   UINT f_op2; \// OBSOLETE   UINT f_Rj; \// OBSOLETE   UINT f_Ri; \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_ADD_CODE \// OBSOLETE   length = 2; \// OBSOLETE   f_op1 = EXTRACT_MSB0_UINT (insn, 16, 0, 4); \// OBSOLETE   f_op2 = EXTRACT_MSB0_UINT (insn, 16, 4, 4); \// OBSOLETE   f_Rj = EXTRACT_MSB0_UINT (insn, 16, 8, 4); \// OBSOLETE   f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4); \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_ADDI_VARS \// OBSOLETE   UINT f_op1; \// OBSOLETE   UINT f_op2; \// OBSOLETE   UINT f_u4; \// OBSOLETE   UINT f_Ri; \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_ADDI_CODE \// OBSOLETE   length = 2; \// OBSOLETE   f_op1 = EXTRACT_MSB0_UINT (insn, 16, 0, 4); \// OBSOLETE   f_op2 = EXTRACT_MSB0_UINT (insn, 16, 4, 4); \// OBSOLETE   f_u4 = EXTRACT_MSB0_UINT (insn, 16, 8, 4); \// OBSOLETE   f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4); \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_ADD2_VARS \// OBSOLETE   UINT f_op1; \// OBSOLETE   UINT f_op2; \// OBSOLETE   SI f_m4; \// OBSOLETE   UINT f_Ri; \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_ADD2_CODE \// OBSOLETE   length = 2; \// OBSOLETE   f_op1 = EXTRACT_MSB0_UINT (insn, 16, 0, 4); \// OBSOLETE   f_op2 = EXTRACT_MSB0_UINT (insn, 16, 4, 4); \// OBSOLETE   f_m4 = ((EXTRACT_MSB0_UINT (insn, 16, 8, 4)) | (((-1) << (4)))); \// OBSOLETE   f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4); \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_DIV0S_VARS \// OBSOLETE   UINT f_op1; \// OBSOLETE   UINT f_op2; \// OBSOLETE   UINT f_op3; \// OBSOLETE   UINT f_Ri; \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_DIV0S_CODE \// OBSOLETE   length = 2; \// OBSOLETE   f_op1 = EXTRACT_MSB0_UINT (insn, 16, 0, 4); \// OBSOLETE   f_op2 = EXTRACT_MSB0_UINT (insn, 16, 4, 4); \// OBSOLETE   f_op3 = EXTRACT_MSB0_UINT (insn, 16, 8, 4); \// OBSOLETE   f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4); \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_DIV3_VARS \// OBSOLETE   UINT f_op1; \// OBSOLETE   UINT f_op2; \// OBSOLETE   UINT f_op3; \// OBSOLETE   UINT f_op4; \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_DIV3_CODE \// OBSOLETE   length = 2; \// OBSOLETE   f_op1 = EXTRACT_MSB0_UINT (insn, 16, 0, 4); \// OBSOLETE   f_op2 = EXTRACT_MSB0_UINT (insn, 16, 4, 4); \// OBSOLETE   f_op3 = EXTRACT_MSB0_UINT (insn, 16, 8, 4); \// OBSOLETE   f_op4 = EXTRACT_MSB0_UINT (insn, 16, 12, 4); \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_LDI8_VARS \// OBSOLETE   UINT f_op1; \// OBSOLETE   UINT f_i8; \// OBSOLETE   UINT f_Ri; \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_LDI8_CODE \// OBSOLETE   length = 2; \// OBSOLETE   f_op1 = EXTRACT_MSB0_UINT (insn, 16, 0, 4); \// OBSOLETE   f_i8 = EXTRACT_MSB0_UINT (insn, 16, 4, 8); \// OBSOLETE   f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4); \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_LDI20_VARS \// OBSOLETE   UINT f_op1; \// OBSOLETE   UINT f_i20_4; \// OBSOLETE   UINT f_i20_16; \// OBSOLETE   UINT f_i20; \// OBSOLETE   UINT f_op2; \// OBSOLETE   UINT f_Ri; \// OBSOLETE   /* Contents of trailing part of insn.  */ \// OBSOLETE   UINT word_1; \// OBSOLETE   unsigned int length;// OBSOLETE #define EXTRACT_IFMT_LDI20_CODE \// OBSOLETE   length = 4; \// OBSOLETE   word_1 = GETIMEMUHI (current_cpu, pc + 2); \// OBSOLETE   f_op1 = EXTRACT_MSB0_UINT (insn, 16, 0, 4); \// OBSOLETE   f_i20_4 = EXTRACT_MSB0_UINT (insn, 16, 8, 4); \// OBSOLETE   f_i20_16 = (0|(EXTRACT_MSB0_UINT (word_1, 16, 0, 16) << 0)); \// OBSOLETE {\// OBSOLETE   f_i20 = ((((f_i20_4) << (16))) | (f_i20_16));\// OBSOLETE }\// OBSOLETE   f_op2 = EXTRACT_MSB0_UINT (insn, 16, 4, 4); \// OBSOLETE   f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4); \// OBSOLETE // OBSOLETE #define EXTRACT_IFMT_LDI32_VARS \// OBSOLETE   UINT f_op1; \

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -