📄 decode.c
字号:
// OBSOLETE FLD (out_Ri) = f_Ri;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_addn2:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_add2.f// OBSOLETE SI f_m4;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_m4 = ((EXTRACT_MSB0_UINT (insn, 16, 8, 4)) | (((-1) << (4))));// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_m4) = f_m4;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_addn2", "f_Ri 0x%x", 'x', f_Ri, "f_m4 0x%x", 'x', f_m4, "Ri 0x%x", 'x', f_Ri, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE FLD (out_Ri) = f_Ri;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_cmp:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_str13.f// OBSOLETE UINT f_Rj;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_Rj = EXTRACT_MSB0_UINT (insn, 16, 8, 4);// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_Rj) = f_Rj;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE FLD (i_Rj) = & CPU (h_gr)[f_Rj];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmp", "f_Ri 0x%x", 'x', f_Ri, "f_Rj 0x%x", 'x', f_Rj, "Ri 0x%x", 'x', f_Ri, "Rj 0x%x", 'x', f_Rj, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE FLD (in_Rj) = f_Rj;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_cmpi:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_addi.f// OBSOLETE UINT f_u4;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_u4 = EXTRACT_MSB0_UINT (insn, 16, 8, 4);// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_u4) = f_u4;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmpi", "f_Ri 0x%x", 'x', f_Ri, "f_u4 0x%x", 'x', f_u4, "Ri 0x%x", 'x', f_Ri, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_cmp2:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_add2.f// OBSOLETE SI f_m4;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_m4 = ((EXTRACT_MSB0_UINT (insn, 16, 8, 4)) | (((-1) << (4))));// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_m4) = f_m4;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_cmp2", "f_Ri 0x%x", 'x', f_Ri, "f_m4 0x%x", 'x', f_m4, "Ri 0x%x", 'x', f_Ri, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_and:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_add.f// OBSOLETE UINT f_Rj;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_Rj = EXTRACT_MSB0_UINT (insn, 16, 8, 4);// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_Rj) = f_Rj;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE FLD (i_Rj) = & CPU (h_gr)[f_Rj];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_and", "f_Ri 0x%x", 'x', f_Ri, "f_Rj 0x%x", 'x', f_Rj, "Ri 0x%x", 'x', f_Ri, "Rj 0x%x", 'x', f_Rj, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE FLD (in_Rj) = f_Rj;// OBSOLETE FLD (out_Ri) = f_Ri;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_andm:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_str13.f// OBSOLETE UINT f_Rj;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_Rj = EXTRACT_MSB0_UINT (insn, 16, 8, 4);// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_Rj) = f_Rj;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE FLD (i_Rj) = & CPU (h_gr)[f_Rj];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_andm", "f_Ri 0x%x", 'x', f_Ri, "f_Rj 0x%x", 'x', f_Rj, "Ri 0x%x", 'x', f_Ri, "Rj 0x%x", 'x', f_Rj, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE FLD (in_Rj) = f_Rj;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_andh:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_str13.f// OBSOLETE UINT f_Rj;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_Rj = EXTRACT_MSB0_UINT (insn, 16, 8, 4);// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_Rj) = f_Rj;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE FLD (i_Rj) = & CPU (h_gr)[f_Rj];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_andh", "f_Ri 0x%x", 'x', f_Ri, "f_Rj 0x%x", 'x', f_Rj, "Ri 0x%x", 'x', f_Ri, "Rj 0x%x", 'x', f_Rj, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE FLD (in_Rj) = f_Rj;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_andb:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_str13.f// OBSOLETE UINT f_Rj;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_Rj = EXTRACT_MSB0_UINT (insn, 16, 8, 4);// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_Rj) = f_Rj;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE FLD (i_Rj) = & CPU (h_gr)[f_Rj];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_andb", "f_Ri 0x%x", 'x', f_Ri, "f_Rj 0x%x", 'x', f_Rj, "Ri 0x%x", 'x', f_Ri, "Rj 0x%x", 'x', f_Rj, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE FLD (in_Rj) = f_Rj;// OBSOLETE }// OBSOLETE #endif// OBSOLETE #undef FLD// OBSOLETE return idesc;// OBSOLETE }// OBSOLETE // OBSOLETE extract_sfmt_bandl:// OBSOLETE {// OBSOLETE const IDESC *idesc = &fr30bf_insn_data[itype];// OBSOLETE CGEN_INSN_INT insn = base_insn;// OBSOLETE #define FLD(f) abuf->fields.sfmt_addi.f// OBSOLETE UINT f_u4;// OBSOLETE UINT f_Ri;// OBSOLETE // OBSOLETE f_u4 = EXTRACT_MSB0_UINT (insn, 16, 8, 4);// OBSOLETE f_Ri = EXTRACT_MSB0_UINT (insn, 16, 12, 4);// OBSOLETE // OBSOLETE /* Record the fields for the semantic handler. */// OBSOLETE FLD (f_Ri) = f_Ri;// OBSOLETE FLD (f_u4) = f_u4;// OBSOLETE FLD (i_Ri) = & CPU (h_gr)[f_Ri];// OBSOLETE TRACE_EXTRACT (current_cpu, abuf, (current_cpu, pc, "sfmt_bandl", "f_Ri 0x%x", 'x', f_Ri, "f_u4 0x%x", 'x', f_u4, "Ri 0x%x", 'x', f_Ri, (char *) 0));// OBSOLETE // OBSOLETE #if WITH_PROFILE_MODEL_P// OBSOLETE /* Record the fields for profiling. */// OBSOLETE if (PROFILE_MODEL_P (current_cpu))// OBSOLETE {// OBSOLETE FLD (in_Ri) = f_Ri;// OBSOLETE }// OBSOLETE #endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -