mirror of
https://github.com/pound-emu/pound.git
synced 2025-12-12 01:36:57 +00:00
This commit introduces a proper abstraction layer for all read and write
operations.
The previous approach of directly calculating a Host Virtual Address
(HVA) from a Guest Physical Address (GPA) via gpa_to_hva() forces every
part of the emulator that touches guest memory to be aware of the
underlying host pointer, which is poor design.
This new layer introduces a suite of guest_mem_read{b,w,l,q} and
guest_mem_write{b,w,l,q} fuctions. All future memory accesses from the
emulated CPU should be performed through these functions.
The code has also been moved into the pound::aarch64 namespace for
better organization.
Signed-off-by: Ronald Caesar <github43132@proton.me>
|
||
|---|---|---|
| .. | ||
| Logging | ||
| Arch.h | ||
| Assert.cpp | ||
| Assert.h | ||
| BoundedQueue.h | ||
| Config.cpp | ||
| Config.h | ||
| Enum.h | ||
| Error.h | ||
| IoFile.cpp | ||
| IoFile.h | ||
| PathUtil.cpp | ||
| PathUtil.h | ||
| PolyfillThread.h | ||
| StringUtil.cpp | ||
| StringUtil.h | ||
| swap.h | ||
| Thread.cpp | ||
| Thread.h | ||
| Types.h | ||