Message ID | 1636594528-8175-5-git-send-email-yangxiaojuan@loongson.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add Loongarch softmmu support. | expand |
On 11/11/21 2:35 AM, Xiaojuan Yang wrote: > +++ b/target/loongarch/cpu.h > @@ -369,8 +369,21 @@ enum { > EXCP_BREAK, > EXCP_INE, > EXCP_FPE, > - > - EXCP_LAST = EXCP_FPE, > + EXCP_IPE, > + EXCP_TLBL, > + EXCP_TLBS, > + EXCP_INST_NOTAVAIL, > + EXCP_TLBM, > + EXCP_TLBPE, > + EXCP_TLBNX, > + EXCP_TLBNR, > + EXCP_EXT_INTERRUPT, > + EXCP_DBP, > + EXCP_IBE, > + EXCP_DBE, > + EXCP_DINT, > + > + EXCP_LAST = EXCP_DINT, Surely this is (essentially) a duplicate of EXCCODE_*. I think we should have only one copy of this. r~
Hi Richard, On 11/11/2021 09:36 PM, Richard Henderson wrote: > On 11/11/21 2:35 AM, Xiaojuan Yang wrote: >> +++ b/target/loongarch/cpu.h >> @@ -369,8 +369,21 @@ enum { >> EXCP_BREAK, >> EXCP_INE, >> EXCP_FPE, >> - >> - EXCP_LAST = EXCP_FPE, >> + EXCP_IPE, >> + EXCP_TLBL, >> + EXCP_TLBS, >> + EXCP_INST_NOTAVAIL, >> + EXCP_TLBM, >> + EXCP_TLBPE, >> + EXCP_TLBNX, >> + EXCP_TLBNR, >> + EXCP_EXT_INTERRUPT, >> + EXCP_DBP, >> + EXCP_IBE, >> + EXCP_DBE, >> + EXCP_DINT, >> + >> + EXCP_LAST = EXCP_DINT, > > Surely this is (essentially) a duplicate of EXCCODE_*. > I think we should have only one copy of this. > OK, I will use EXCCODE_* directly. Thanks Xiaojuan > > r~
diff --git a/target/loongarch/cpu.c b/target/loongarch/cpu.c index a53c8ebfb5..16443159cc 100644 --- a/target/loongarch/cpu.c +++ b/target/loongarch/cpu.c @@ -37,6 +37,19 @@ static const char * const excp_names[EXCP_LAST + 1] = { [EXCP_BREAK] = "Break", [EXCP_INE] = "Instruction Non-existent", [EXCP_FPE] = "Floating Point Exception", + [EXCP_IPE] = "Error privilege level access", + [EXCP_TLBL] = "TLB load", + [EXCP_TLBS] = "TLB store", + [EXCP_INST_NOTAVAIL] = "TLB inst not exist", + [EXCP_TLBM] = "TLB modify", + [EXCP_TLBPE] = "TLB priviledged error", + [EXCP_TLBNX] = "TLB execute-inhibit", + [EXCP_TLBNR] = "TLB read-inhibit", + [EXCP_EXT_INTERRUPT] = "Interrupt", + [EXCP_DBP] = "Debug breakpoint", + [EXCP_IBE] = "Instruction bus error", + [EXCP_DBE] = "Data bus error", + [EXCP_DINT] = "Debug interrupt", }; const char *loongarch_exception_name(int32_t exception) diff --git a/target/loongarch/cpu.h b/target/loongarch/cpu.h index 10fcd53104..399c4cb5e8 100644 --- a/target/loongarch/cpu.h +++ b/target/loongarch/cpu.h @@ -369,8 +369,21 @@ enum { EXCP_BREAK, EXCP_INE, EXCP_FPE, - - EXCP_LAST = EXCP_FPE, + EXCP_IPE, + EXCP_TLBL, + EXCP_TLBS, + EXCP_INST_NOTAVAIL, + EXCP_TLBM, + EXCP_TLBPE, + EXCP_TLBNX, + EXCP_TLBNR, + EXCP_EXT_INTERRUPT, + EXCP_DBP, + EXCP_IBE, + EXCP_DBE, + EXCP_DINT, + + EXCP_LAST = EXCP_DINT, }; #define LOONGARCH_CPU_TYPE_SUFFIX "-" TYPE_LOONGARCH_CPU