提交 8ae20d12 编写于 作者: Z Zihao Yu

monitor,diff-test: move `#if defined(DIFF_TEST)` to function declaration

上级 3f0e723c
......@@ -24,9 +24,7 @@ static inline int find_mapid_by_addr(IOMap *maps, int size, paddr_t addr) {
int i;
for (i = 0; i < size; i ++) {
if (map_inside(maps + i, addr)) {
#if defined(DIFF_TEST)
difftest_skip_ref();
#endif
return i;
}
}
......
......@@ -4,8 +4,15 @@
#include "common.h"
#include "isa/diff-test.h"
#ifdef DIFF_TEST
void difftest_skip_ref(void);
void difftest_skip_dut(int nr_ref, int nr_dut);
void difftest_step(vaddr_t ori_pc, vaddr_t next_pc);
#else
#define difftest_skip_ref()
#define difftest_skip_dut(nr_ref, nr_dut)
#define difftest_step(ori_pc, next_pc)
#endif
extern void (*ref_difftest_memcpy_from_dut)(paddr_t dest, void *src, size_t n);
extern void (*ref_difftest_getregs)(void *c);
......
#include "cpu/exec.h"
static inline void difftest_skip_delay_slot(void) {
#if defined(DIFF_TEST)
difftest_skip_dut(2, 1);
#endif
}
make_EHelper(j) {
......
......@@ -20,9 +20,7 @@ make_EHelper(inv) {
}
make_EHelper(nemu_trap) {
#if defined(DIFF_TEST)
difftest_skip_ref();
#endif
rtl_exit(NEMU_END, cpu.pc, cpu.gpr[2]._32); // grp[2] is $v0
......
......@@ -19,9 +19,7 @@ void raise_intr(uint32_t NO, vaddr_t epc) {
rtl_j(target);
#if defined(DIFF_TEST)
difftest_skip_dut(1, 2);
#endif
}
bool isa_query_intr(void) {
......
......@@ -16,9 +16,7 @@ make_EHelper(jalr) {
rtl_andi(&s0, &s0, ~0x1u);
rtl_jr(&s0);
#if defined(DIFF_TEST)
difftest_skip_dut(1, 2);
#endif
print_asm_template3(jalr);
}
......
......@@ -20,9 +20,7 @@ make_EHelper(inv) {
}
make_EHelper(nemu_trap) {
#if defined(DIFF_TEST)
difftest_skip_ref();
#endif
rtl_exit(NEMU_END, cpu.pc, cpu.gpr[10]._32); // grp[10] is $a0
......
#include "cpu/exec.h"
static inline rtlreg_t* csr_decode(uint32_t csr) {
#if defined(DIFF_TEST)
difftest_skip_dut(1, 3);
#endif
switch (csr) {
case 0x180: return &cpu.satp.val;
......@@ -53,7 +51,5 @@ make_EHelper(priv) {
default: panic("unimplemented priv instruction type = 0x%x", type);
}
#if defined(DIFF_TEST)
difftest_skip_dut(1, 2);
#endif
}
......@@ -25,9 +25,7 @@ make_EHelper(inv) {
}
make_EHelper(nemu_trap) {
#if defined(DIFF_TEST)
difftest_skip_ref();
#endif
rtl_exit(NEMU_END, cpu.pc, cpu.eax);
......
......@@ -20,9 +20,7 @@ make_EHelper(mov_cr2r) {
print_asm("movl %%cr%d,%%%s", id_src->reg, reg_name(id_dest->reg, 4));
#if defined(DIFF_TEST)
difftest_skip_ref();
#endif
}
make_EHelper(int) {
......@@ -31,9 +29,7 @@ make_EHelper(int) {
print_asm("int %s", id_dest->str);
#if defined(DIFF_TEST)
difftest_skip_dut(1, 2);
#endif
}
make_EHelper(iret) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册