提交 1777ca47 编写于 作者: W William Wang

Difftest: fix mastatus sync func type

上级 2920874a
......@@ -39,9 +39,9 @@ void isa_difftest_attach();
void isa_difftest_getregs(void *r);
void isa_difftest_setregs(const void *r);
void isa_difftest_raise_intr(word_t NO);
void isa_difftest_get_mastatus(uint64_t *s);
void isa_difftest_set_mastatus(uint64_t *s);
vaddr_t isa_disambiguate_exec(uint64_t *disambiguate_para);
void isa_difftest_get_mastatus(void *s);
void isa_difftest_set_mastatus(const void *s);
vaddr_t isa_disambiguate_exec(void *disambiguate_para);
bool isa_difftest_microarchitectural_pf_check(vaddr_t addr);
#endif
......@@ -16,6 +16,8 @@ void difftest_step(vaddr_t ori_pc, vaddr_t next_pc);
extern void (*ref_difftest_memcpy_from_dut)(paddr_t dest, void *src, size_t n);
extern void (*ref_difftest_getregs)(void *c);
extern void (*ref_difftest_setregs)(const void *c);
extern void (*ref_difftest_get_mastatus)(void *c);
extern void (*ref_difftest_set_mastatus)(const void *c);
extern void (*ref_difftest_exec)(uint64_t n);
static inline bool difftest_check_reg(const char *name, vaddr_t pc, rtlreg_t ref, rtlreg_t dut) {
......
......@@ -52,13 +52,13 @@ void isa_difftest_setregs(const void *r) {
csr_writeback();
}
void isa_difftest_get_mastatus(uint64_t *s) {
void isa_difftest_get_mastatus(void *s) {
struct SyncState ms;
ms.lrscValid = cpu.lr_valid;
memcpy(s, &ms, sizeof(struct SyncState));
}
void isa_difftest_set_mastatus(uint64_t *s) {
void isa_difftest_set_mastatus(const void *s) {
struct SyncState* ms = (struct SyncState*)s;
cpu.lr_valid = ms->lrscValid;
}
......
......@@ -236,6 +236,6 @@ vaddr_t isa_exec_once() {
return s.seq_pc;
}
vaddr_t isa_disambiguate_exec(uint64_t *disambiguate_para) {
vaddr_t isa_disambiguate_exec(void *disambiguate_para) {
return isa_exec_once(); //TODO
}
......@@ -21,15 +21,15 @@ void difftest_setregs(const void *r) {
isa_difftest_setregs(r);
}
void difftest_get_mastatus(uint64_t *s){
void difftest_get_mastatus(void *s){
isa_difftest_get_mastatus(s);
}
void difftest_set_mastatus(uint64_t *s){
void difftest_set_mastatus(const void *s){
isa_difftest_set_mastatus(s);
}
vaddr_t disambiguate_exec(uint64_t *disambiguate_para){
vaddr_t disambiguate_exec(void *disambiguate_para){
return isa_disambiguate_exec(disambiguate_para);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册