📄 sem-switch.c
字号:
// OBSOLETE /* Simulator instruction semantics for fr30bf.// OBSOLETE // OBSOLETE THIS FILE IS MACHINE GENERATED WITH CGEN.// OBSOLETE // OBSOLETE Copyright 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.// OBSOLETE // OBSOLETE This file is part of the GNU simulators.// OBSOLETE // OBSOLETE This program is free software; you can redistribute it and/or modify// OBSOLETE it under the terms of the GNU General Public License as published by// OBSOLETE the Free Software Foundation; either version 2, or (at your option)// OBSOLETE any later version.// OBSOLETE // OBSOLETE This program is distributed in the hope that it will be useful,// OBSOLETE but WITHOUT ANY WARRANTY; without even the implied warranty of// OBSOLETE MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// OBSOLETE GNU General Public License for more details.// OBSOLETE // OBSOLETE You should have received a copy of the GNU General Public License along// OBSOLETE with this program; if not, write to the Free Software Foundation, Inc.,// OBSOLETE 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.// OBSOLETE // OBSOLETE */// OBSOLETE // OBSOLETE #ifdef DEFINE_LABELS// OBSOLETE // OBSOLETE /* The labels have the case they have because the enum of insn types// OBSOLETE is all uppercase and in the non-stdc case the insn symbol is built// OBSOLETE into the enum name. */// OBSOLETE // OBSOLETE static struct {// OBSOLETE int index;// OBSOLETE void *label;// OBSOLETE } labels[] = {// OBSOLETE { FR30BF_INSN_X_INVALID, && case_sem_INSN_X_INVALID },// OBSOLETE { FR30BF_INSN_X_AFTER, && case_sem_INSN_X_AFTER },// OBSOLETE { FR30BF_INSN_X_BEFORE, && case_sem_INSN_X_BEFORE },// OBSOLETE { FR30BF_INSN_X_CTI_CHAIN, && case_sem_INSN_X_CTI_CHAIN },// OBSOLETE { FR30BF_INSN_X_CHAIN, && case_sem_INSN_X_CHAIN },// OBSOLETE { FR30BF_INSN_X_BEGIN, && case_sem_INSN_X_BEGIN },// OBSOLETE { FR30BF_INSN_ADD, && case_sem_INSN_ADD },// OBSOLETE { FR30BF_INSN_ADDI, && case_sem_INSN_ADDI },// OBSOLETE { FR30BF_INSN_ADD2, && case_sem_INSN_ADD2 },// OBSOLETE { FR30BF_INSN_ADDC, && case_sem_INSN_ADDC },// OBSOLETE { FR30BF_INSN_ADDN, && case_sem_INSN_ADDN },// OBSOLETE { FR30BF_INSN_ADDNI, && case_sem_INSN_ADDNI },// OBSOLETE { FR30BF_INSN_ADDN2, && case_sem_INSN_ADDN2 },// OBSOLETE { FR30BF_INSN_SUB, && case_sem_INSN_SUB },// OBSOLETE { FR30BF_INSN_SUBC, && case_sem_INSN_SUBC },// OBSOLETE { FR30BF_INSN_SUBN, && case_sem_INSN_SUBN },// OBSOLETE { FR30BF_INSN_CMP, && case_sem_INSN_CMP },// OBSOLETE { FR30BF_INSN_CMPI, && case_sem_INSN_CMPI },// OBSOLETE { FR30BF_INSN_CMP2, && case_sem_INSN_CMP2 },// OBSOLETE { FR30BF_INSN_AND, && case_sem_INSN_AND },// OBSOLETE { FR30BF_INSN_OR, && case_sem_INSN_OR },// OBSOLETE { FR30BF_INSN_EOR, && case_sem_INSN_EOR },// OBSOLETE { FR30BF_INSN_ANDM, && case_sem_INSN_ANDM },// OBSOLETE { FR30BF_INSN_ANDH, && case_sem_INSN_ANDH },// OBSOLETE { FR30BF_INSN_ANDB, && case_sem_INSN_ANDB },// OBSOLETE { FR30BF_INSN_ORM, && case_sem_INSN_ORM },// OBSOLETE { FR30BF_INSN_ORH, && case_sem_INSN_ORH },// OBSOLETE { FR30BF_INSN_ORB, && case_sem_INSN_ORB },// OBSOLETE { FR30BF_INSN_EORM, && case_sem_INSN_EORM },// OBSOLETE { FR30BF_INSN_EORH, && case_sem_INSN_EORH },// OBSOLETE { FR30BF_INSN_EORB, && case_sem_INSN_EORB },// OBSOLETE { FR30BF_INSN_BANDL, && case_sem_INSN_BANDL },// OBSOLETE { FR30BF_INSN_BORL, && case_sem_INSN_BORL },// OBSOLETE { FR30BF_INSN_BEORL, && case_sem_INSN_BEORL },// OBSOLETE { FR30BF_INSN_BANDH, && case_sem_INSN_BANDH },// OBSOLETE { FR30BF_INSN_BORH, && case_sem_INSN_BORH },// OBSOLETE { FR30BF_INSN_BEORH, && case_sem_INSN_BEORH },// OBSOLETE { FR30BF_INSN_BTSTL, && case_sem_INSN_BTSTL },// OBSOLETE { FR30BF_INSN_BTSTH, && case_sem_INSN_BTSTH },// OBSOLETE { FR30BF_INSN_MUL, && case_sem_INSN_MUL },// OBSOLETE { FR30BF_INSN_MULU, && case_sem_INSN_MULU },// OBSOLETE { FR30BF_INSN_MULH, && case_sem_INSN_MULH },// OBSOLETE { FR30BF_INSN_MULUH, && case_sem_INSN_MULUH },// OBSOLETE { FR30BF_INSN_DIV0S, && case_sem_INSN_DIV0S },// OBSOLETE { FR30BF_INSN_DIV0U, && case_sem_INSN_DIV0U },// OBSOLETE { FR30BF_INSN_DIV1, && case_sem_INSN_DIV1 },// OBSOLETE { FR30BF_INSN_DIV2, && case_sem_INSN_DIV2 },// OBSOLETE { FR30BF_INSN_DIV3, && case_sem_INSN_DIV3 },// OBSOLETE { FR30BF_INSN_DIV4S, && case_sem_INSN_DIV4S },// OBSOLETE { FR30BF_INSN_LSL, && case_sem_INSN_LSL },// OBSOLETE { FR30BF_INSN_LSLI, && case_sem_INSN_LSLI },// OBSOLETE { FR30BF_INSN_LSL2, && case_sem_INSN_LSL2 },// OBSOLETE { FR30BF_INSN_LSR, && case_sem_INSN_LSR },// OBSOLETE { FR30BF_INSN_LSRI, && case_sem_INSN_LSRI },// OBSOLETE { FR30BF_INSN_LSR2, && case_sem_INSN_LSR2 },// OBSOLETE { FR30BF_INSN_ASR, && case_sem_INSN_ASR },// OBSOLETE { FR30BF_INSN_ASRI, && case_sem_INSN_ASRI },// OBSOLETE { FR30BF_INSN_ASR2, && case_sem_INSN_ASR2 },// OBSOLETE { FR30BF_INSN_LDI8, && case_sem_INSN_LDI8 },// OBSOLETE { FR30BF_INSN_LDI20, && case_sem_INSN_LDI20 },// OBSOLETE { FR30BF_INSN_LDI32, && case_sem_INSN_LDI32 },// OBSOLETE { FR30BF_INSN_LD, && case_sem_INSN_LD },// OBSOLETE { FR30BF_INSN_LDUH, && case_sem_INSN_LDUH },// OBSOLETE { FR30BF_INSN_LDUB, && case_sem_INSN_LDUB },// OBSOLETE { FR30BF_INSN_LDR13, && case_sem_INSN_LDR13 },// OBSOLETE { FR30BF_INSN_LDR13UH, && case_sem_INSN_LDR13UH },// OBSOLETE { FR30BF_INSN_LDR13UB, && case_sem_INSN_LDR13UB },// OBSOLETE { FR30BF_INSN_LDR14, && case_sem_INSN_LDR14 },// OBSOLETE { FR30BF_INSN_LDR14UH, && case_sem_INSN_LDR14UH },// OBSOLETE { FR30BF_INSN_LDR14UB, && case_sem_INSN_LDR14UB },// OBSOLETE { FR30BF_INSN_LDR15, && case_sem_INSN_LDR15 },// OBSOLETE { FR30BF_INSN_LDR15GR, && case_sem_INSN_LDR15GR },// OBSOLETE { FR30BF_INSN_LDR15DR, && case_sem_INSN_LDR15DR },// OBSOLETE { FR30BF_INSN_LDR15PS, && case_sem_INSN_LDR15PS },// OBSOLETE { FR30BF_INSN_ST, && case_sem_INSN_ST },// OBSOLETE { FR30BF_INSN_STH, && case_sem_INSN_STH },// OBSOLETE { FR30BF_INSN_STB, && case_sem_INSN_STB },// OBSOLETE { FR30BF_INSN_STR13, && case_sem_INSN_STR13 },// OBSOLETE { FR30BF_INSN_STR13H, && case_sem_INSN_STR13H },// OBSOLETE { FR30BF_INSN_STR13B, && case_sem_INSN_STR13B },// OBSOLETE { FR30BF_INSN_STR14, && case_sem_INSN_STR14 },// OBSOLETE { FR30BF_INSN_STR14H, && case_sem_INSN_STR14H },// OBSOLETE { FR30BF_INSN_STR14B, && case_sem_INSN_STR14B },// OBSOLETE { FR30BF_INSN_STR15, && case_sem_INSN_STR15 },// OBSOLETE { FR30BF_INSN_STR15GR, && case_sem_INSN_STR15GR },// OBSOLETE { FR30BF_INSN_STR15DR, && case_sem_INSN_STR15DR },// OBSOLETE { FR30BF_INSN_STR15PS, && case_sem_INSN_STR15PS },// OBSOLETE { FR30BF_INSN_MOV, && case_sem_INSN_MOV },// OBSOLETE { FR30BF_INSN_MOVDR, && case_sem_INSN_MOVDR },// OBSOLETE { FR30BF_INSN_MOVPS, && case_sem_INSN_MOVPS },// OBSOLETE { FR30BF_INSN_MOV2DR, && case_sem_INSN_MOV2DR },// OBSOLETE { FR30BF_INSN_MOV2PS, && case_sem_INSN_MOV2PS },// OBSOLETE { FR30BF_INSN_JMP, && case_sem_INSN_JMP },// OBSOLETE { FR30BF_INSN_JMPD, && case_sem_INSN_JMPD },// OBSOLETE { FR30BF_INSN_CALLR, && case_sem_INSN_CALLR },// OBSOLETE { FR30BF_INSN_CALLRD, && case_sem_INSN_CALLRD },// OBSOLETE { FR30BF_INSN_CALL, && case_sem_INSN_CALL },// OBSOLETE { FR30BF_INSN_CALLD, && case_sem_INSN_CALLD },// OBSOLETE { FR30BF_INSN_RET, && case_sem_INSN_RET },// OBSOLETE { FR30BF_INSN_RET_D, && case_sem_INSN_RET_D },// OBSOLETE { FR30BF_INSN_INT, && case_sem_INSN_INT },// OBSOLETE { FR30BF_INSN_INTE, && case_sem_INSN_INTE },// OBSOLETE { FR30BF_INSN_RETI, && case_sem_INSN_RETI },// OBSOLETE { FR30BF_INSN_BRAD, && case_sem_INSN_BRAD },// OBSOLETE { FR30BF_INSN_BRA, && case_sem_INSN_BRA },// OBSOLETE { FR30BF_INSN_BNOD, && case_sem_INSN_BNOD },// OBSOLETE { FR30BF_INSN_BNO, && case_sem_INSN_BNO },// OBSOLETE { FR30BF_INSN_BEQD, && case_sem_INSN_BEQD },// OBSOLETE { FR30BF_INSN_BEQ, && case_sem_INSN_BEQ },// OBSOLETE { FR30BF_INSN_BNED, && case_sem_INSN_BNED },// OBSOLETE { FR30BF_INSN_BNE, && case_sem_INSN_BNE },// OBSOLETE { FR30BF_INSN_BCD, && case_sem_INSN_BCD },// OBSOLETE { FR30BF_INSN_BC, && case_sem_INSN_BC },// OBSOLETE { FR30BF_INSN_BNCD, && case_sem_INSN_BNCD },// OBSOLETE { FR30BF_INSN_BNC, && case_sem_INSN_BNC },// OBSOLETE { FR30BF_INSN_BND, && case_sem_INSN_BND },// OBSOLETE { FR30BF_INSN_BN, && case_sem_INSN_BN },// OBSOLETE { FR30BF_INSN_BPD, && case_sem_INSN_BPD },// OBSOLETE { FR30BF_INSN_BP, && case_sem_INSN_BP },// OBSOLETE { FR30BF_INSN_BVD, && case_sem_INSN_BVD },// OBSOLETE { FR30BF_INSN_BV, && case_sem_INSN_BV },// OBSOLETE { FR30BF_INSN_BNVD, && case_sem_INSN_BNVD },// OBSOLETE { FR30BF_INSN_BNV, && case_sem_INSN_BNV },// OBSOLETE { FR30BF_INSN_BLTD, && case_sem_INSN_BLTD },// OBSOLETE { FR30BF_INSN_BLT, && case_sem_INSN_BLT },// OBSOLETE { FR30BF_INSN_BGED, && case_sem_INSN_BGED },// OBSOLETE { FR30BF_INSN_BGE, && case_sem_INSN_BGE },// OBSOLETE { FR30BF_INSN_BLED, && case_sem_INSN_BLED },// OBSOLETE { FR30BF_INSN_BLE, && case_sem_INSN_BLE },// OBSOLETE { FR30BF_INSN_BGTD, && case_sem_INSN_BGTD },// OBSOLETE { FR30BF_INSN_BGT, && case_sem_INSN_BGT },// OBSOLETE { FR30BF_INSN_BLSD, && case_sem_INSN_BLSD },// OBSOLETE { FR30BF_INSN_BLS, && case_sem_INSN_BLS },// OBSOLETE { FR30BF_INSN_BHID, && case_sem_INSN_BHID },// OBSOLETE { FR30BF_INSN_BHI, && case_sem_INSN_BHI },// OBSOLETE { FR30BF_INSN_DMOVR13, && case_sem_INSN_DMOVR13 },// OBSOLETE { FR30BF_INSN_DMOVR13H, && case_sem_INSN_DMOVR13H },// OBSOLETE { FR30BF_INSN_DMOVR13B, && case_sem_INSN_DMOVR13B },// OBSOLETE { FR30BF_INSN_DMOVR13PI, && case_sem_INSN_DMOVR13PI },// OBSOLETE { FR30BF_INSN_DMOVR13PIH, && case_sem_INSN_DMOVR13PIH },// OBSOLETE { FR30BF_INSN_DMOVR13PIB, && case_sem_INSN_DMOVR13PIB },// OBSOLETE { FR30BF_INSN_DMOVR15PI, && case_sem_INSN_DMOVR15PI },// OBSOLETE { FR30BF_INSN_DMOV2R13, && case_sem_INSN_DMOV2R13 },// OBSOLETE { FR30BF_INSN_DMOV2R13H, && case_sem_INSN_DMOV2R13H },// OBSOLETE { FR30BF_INSN_DMOV2R13B, && case_sem_INSN_DMOV2R13B },// OBSOLETE { FR30BF_INSN_DMOV2R13PI, && case_sem_INSN_DMOV2R13PI },// OBSOLETE { FR30BF_INSN_DMOV2R13PIH, && case_sem_INSN_DMOV2R13PIH },// OBSOLETE { FR30BF_INSN_DMOV2R13PIB, && case_sem_INSN_DMOV2R13PIB },// OBSOLETE { FR30BF_INSN_DMOV2R15PD, && case_sem_INSN_DMOV2R15PD },// OBSOLETE { FR30BF_INSN_LDRES, && case_sem_INSN_LDRES },// OBSOLETE { FR30BF_INSN_STRES, && case_sem_INSN_STRES },// OBSOLETE { FR30BF_INSN_COPOP, && case_sem_INSN_COPOP },// OBSOLETE { FR30BF_INSN_COPLD, && case_sem_INSN_COPLD },// OBSOLETE { FR30BF_INSN_COPST, && case_sem_INSN_COPST },// OBSOLETE { FR30BF_INSN_COPSV, && case_sem_INSN_COPSV },// OBSOLETE { FR30BF_INSN_NOP, && case_sem_INSN_NOP },// OBSOLETE { FR30BF_INSN_ANDCCR, && case_sem_INSN_ANDCCR },// OBSOLETE { FR30BF_INSN_ORCCR, && case_sem_INSN_ORCCR },// OBSOLETE { FR30BF_INSN_STILM, && case_sem_INSN_STILM },// OBSOLETE { FR30BF_INSN_ADDSP, && case_sem_INSN_ADDSP },// OBSOLETE { FR30BF_INSN_EXTSB, && case_sem_INSN_EXTSB },// OBSOLETE { FR30BF_INSN_EXTUB, && case_sem_INSN_EXTUB },// OBSOLETE { FR30BF_INSN_EXTSH, && case_sem_INSN_EXTSH },// OBSOLETE { FR30BF_INSN_EXTUH, && case_sem_INSN_EXTUH },// OBSOLETE { FR30BF_INSN_LDM0, && case_sem_INSN_LDM0 },// OBSOLETE { FR30BF_INSN_LDM1, && case_sem_INSN_LDM1 },// OBSOLETE { FR30BF_INSN_STM0, && case_sem_INSN_STM0 },// OBSOLETE { FR30BF_INSN_STM1, && case_sem_INSN_STM1 },// OBSOLETE { FR30BF_INSN_ENTER, && case_sem_INSN_ENTER },// OBSOLETE { FR30BF_INSN_LEAVE, && case_sem_INSN_LEAVE },// OBSOLETE { FR30BF_INSN_XCHB, && case_sem_INSN_XCHB },// OBSOLETE { 0, 0 }// OBSOLETE };// OBSOLETE int i;// OBSOLETE // OBSOLETE for (i = 0; labels[i].label != 0; ++i)// OBSOLETE {// OBSOLETE #if FAST_P// OBSOLETE CPU_IDESC (current_cpu) [labels[i].index].sem_fast_lab = labels[i].label;// OBSOLETE #else// OBSOLETE CPU_IDESC (current_cpu) [labels[i].index].sem_full_lab = labels[i].label;// OBSOLETE #endif// OBSOLETE }// OBSOLETE // OBSOLETE #undef DEFINE_LABELS// OBSOLETE #endif /* DEFINE_LABELS */// OBSOLETE // OBSOLETE #ifdef DEFINE_SWITCH// OBSOLETE // OBSOLETE /* If hyper-fast [well not unnecessarily slow] execution is selected, turn// OBSOLETE off frills like tracing and profiling. */// OBSOLETE /* FIXME: A better way would be to have TRACE_RESULT check for something// OBSOLETE that can cause it to be optimized out. Another way would be to emit// OBSOLETE special handlers into the instruction "stream". */// OBSOLETE // OBSOLETE #if FAST_P// OBSOLETE #undef TRACE_RESULT// OBSOLETE #define TRACE_RESULT(cpu, abuf, name, type, val)// OBSOLETE #endif// OBSOLETE // OBSOLETE #undef GET_ATTR// OBSOLETE #if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)// OBSOLETE #define GET_ATTR(cpu, num, attr) CGEN_ATTR_VALUE (NULL, abuf->idesc->attrs, CGEN_INSN_##attr)// OBSOLETE #else// OBSOLETE #define GET_ATTR(cpu, num, attr) CGEN_ATTR_VALUE (NULL, abuf->idesc->attrs, CGEN_INSN_/**/attr)// OBSOLETE #endif// OBSOLETE // OBSOLETE {// OBSOLETE // OBSOLETE #if WITH_SCACHE_PBB// OBSOLETE // OBSOLETE /* Branch to next handler without going around main loop. */// OBSOLETE #define NEXT(vpc) goto * SEM_ARGBUF (vpc) -> semantic.sem_case// OBSOLETE SWITCH (sem, SEM_ARGBUF (vpc) -> semantic.sem_case)// OBSOLETE // OBSOLETE #else /* ! WITH_SCACHE_PBB */// OBSOLETE // OBSOLETE #define NEXT(vpc) BREAK (sem)// OBSOLETE #ifdef __GNUC__// OBSOLETE #if FAST_P// OBSOLETE SWITCH (sem, SEM_ARGBUF (sc) -> idesc->sem_fast_lab)// OBSOLETE #else// OBSOLETE SWITCH (sem, SEM_ARGBUF (sc) -> idesc->sem_full_lab)// OBSOLETE #endif// OBSOLETE #else// OBSOLETE SWITCH (sem, SEM_ARGBUF (sc) -> idesc->num)// OBSOLETE #endif// OBSOLETE // OBSOLETE #endif /* ! WITH_SCACHE_PBB */// OBSOLETE // OBSOLETE {// OBSOLETE // OBSOLETE CASE (sem, INSN_X_INVALID) : /* --invalid-- */// OBSOLETE {// OBSOLETE SEM_ARG sem_arg = SEM_SEM_ARG (vpc, sc);// OBSOLETE ARGBUF *abuf = SEM_ARGBUF (sem_arg);// OBSOLETE #define FLD(f) abuf->fields.fmt_empty.f// OBSOLETE int UNUSED written = 0;// OBSOLETE IADDR UNUSED pc = abuf->addr;// OBSOLETE vpc = SEM_NEXT_VPC (sem_arg, pc, 0);// OBSOLETE // OBSOLETE {// OBSOLETE /* Update the recorded pc in the cpu state struct.// OBSOLETE Only necessary for WITH_SCACHE case, but to avoid the// OBSOLETE conditional compilation .... */// OBSOLETE SET_H_PC (pc);// OBSOLETE /* Virtual insns have zero size. Overwrite vpc with address of next insn// OBSOLETE using the default-insn-bitsize spec. When executing insns in parallel// OBSOLETE we may want to queue the fault and continue execution. */// OBSOLETE vpc = SEM_NEXT_VPC (sem_arg, pc, 2);// OBSOLETE vpc = sim_engine_invalid_insn (current_cpu, pc, vpc);// OBSOLETE }// OBSOLETE // OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE NEXT (vpc);// OBSOLETE // OBSOLETE CASE (sem, INSN_X_AFTER) : /* --after-- */// OBSOLETE {// OBSOLETE SEM_ARG sem_arg = SEM_SEM_ARG (vpc, sc);// OBSOLETE ARGBUF *abuf = SEM_ARGBUF (sem_arg);// OBSOLETE #define FLD(f) abuf->fields.fmt_empty.f// OBSOLETE int UNUSED written = 0;// OBSOLETE IADDR UNUSED pc = abuf->addr;// OBSOLETE vpc = SEM_NEXT_VPC (sem_arg, pc, 0);// OBSOLETE // OBSOLETE {// OBSOLETE #if WITH_SCACHE_PBB_FR30BF// OBSOLETE fr30bf_pbb_after (current_cpu, sem_arg);// OBSOLETE #endif// OBSOLETE }// OBSOLETE // OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE NEXT (vpc);// OBSOLETE // OBSOLETE CASE (sem, INSN_X_BEFORE) : /* --before-- */// OBSOLETE {// OBSOLETE SEM_ARG sem_arg = SEM_SEM_ARG (vpc, sc);// OBSOLETE ARGBUF *abuf = SEM_ARGBUF (sem_arg);// OBSOLETE #define FLD(f) abuf->fields.fmt_empty.f// OBSOLETE int UNUSED written = 0;// OBSOLETE IADDR UNUSED pc = abuf->addr;// OBSOLETE vpc = SEM_NEXT_VPC (sem_arg, pc, 0);// OBSOLETE // OBSOLETE {// OBSOLETE #if WITH_SCACHE_PBB_FR30BF// OBSOLETE fr30bf_pbb_before (current_cpu, sem_arg);// OBSOLETE #endif// OBSOLETE }// OBSOLETE // OBSOLETE #undef FLD// OBSOLETE }// OBSOLETE NEXT (vpc);// OBSOLETE // OBSOLETE CASE (sem, INSN_X_CTI_CHAIN) : /* --cti-chain-- */// OBSOLETE {// OBSOLETE SEM_ARG sem_arg = SEM_SEM_ARG (vpc, sc);// OBSOLETE ARGBUF *abuf = SEM_ARGBUF (sem_arg);// OBSOLETE #define FLD(f) abuf->fields.fmt_empty.f// OBSOLETE int UNUSED written = 0;// OBSOLETE IADDR UNUSED pc = abuf->addr;// OBSOLETE vpc = SEM_NEXT_VPC (sem_arg, pc, 0);// OBSOLETE // OBSOLETE {// OBSOLETE #if WITH_SCACHE_PBB_FR30BF// OBSOLETE #ifdef DEFINE_SWITCH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -