diff --git a/include/memory/paddr.h b/include/memory/paddr.h index c49b1fc3c6fc745cf5cb2690c659be0d4c6e7e02..dad808403445b355047a0261697c76cc4fa9e118 100644 --- a/include/memory/paddr.h +++ b/include/memory/paddr.h @@ -10,6 +10,8 @@ void* guest_to_host(paddr_t addr); /* convert the host virtual address in NEMU to guest physical address in the guest program */ paddr_t host_to_guest(void *addr); -#include +word_t paddr_ifetch(paddr_t addr, int len); +word_t paddr_read(paddr_t addr, int len); +void paddr_write(paddr_t addr, word_t data, int len); #endif diff --git a/src/engine/interpreter/paddr.h b/src/engine/interpreter/paddr.h deleted file mode 100644 index 44ca4d3286ec699fa5d607f09fd39c77b2759d44..0000000000000000000000000000000000000000 --- a/src/engine/interpreter/paddr.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef __PADDR_H__ -#define __PADDR_H__ - -#include - -word_t paddr_ifetch(paddr_t addr, int len); -word_t paddr_read(paddr_t addr, int len); -void paddr_write(paddr_t addr, word_t data, int len); - -#endif diff --git a/src/engine/rv64/paddr.h b/src/engine/rv64/paddr.h deleted file mode 100644 index af45dc7796d95d675907d93866faea7e837c1bcc..0000000000000000000000000000000000000000 --- a/src/engine/rv64/paddr.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef __PADDR_H__ -#define __PADDR_H__ - -#include - -static inline uint64_t paddr_ifetch(paddr_t addr, int len) { - uint8_t paddr_ifetch8 (paddr_t addr); - uint16_t paddr_ifetch16(paddr_t addr); - uint32_t paddr_ifetch32(paddr_t addr); - uint64_t paddr_ifetch64(paddr_t addr); - switch (len) { - case 1: return paddr_ifetch8 (addr); - case 2: return paddr_ifetch16(addr); - case 4: return paddr_ifetch32(addr); -#ifdef ISA64 - case 8: return paddr_ifetch64(addr); -#endif - default: assert(0); - } -} - -static inline uint64_t paddr_read(paddr_t addr, int len) { - uint8_t paddr_read8 (paddr_t addr); - uint16_t paddr_read16(paddr_t addr); - uint32_t paddr_read32(paddr_t addr); - uint64_t paddr_read64(paddr_t addr); - switch (len) { - case 1: return paddr_read8 (addr); - case 2: return paddr_read16(addr); - case 4: return paddr_read32(addr); -#ifdef ISA64 - case 8: return paddr_read64(addr); -#endif - default: assert(0); - } -} - -static inline void paddr_write(paddr_t addr, uint64_t data, int len) { - void paddr_write8 (paddr_t addr, uint8_t data); - void paddr_write16(paddr_t addr, uint16_t data); - void paddr_write32(paddr_t addr, uint32_t data); - void paddr_write64(paddr_t addr, uint64_t data); - switch (len) { - case 1: paddr_write8 (addr, data); break; - case 2: paddr_write16(addr, data); break; - case 4: paddr_write32(addr, data); break; -#ifdef ISA64 - case 8: paddr_write64(addr, data); break; -#endif - default: assert(0); - } -} - -#endif