diff options
| author | 2019-11-26 14:10:49 -0500 | |
|---|---|---|
| committer | 2019-11-26 21:55:37 -0500 | |
| commit | 536fc7f0ea77e08d68c760f387c307d258804e3b (patch) | |
| tree | e979df531bf1222788cc26144531c6e6f5cca1d1 /src/core/arm/arm_interface.h | |
| parent | core/memory: Move memory read/write implementation functions into an anonymou... (diff) | |
| download | yuzu-536fc7f0ea77e08d68c760f387c307d258804e3b.tar.gz yuzu-536fc7f0ea77e08d68c760f387c307d258804e3b.tar.xz yuzu-536fc7f0ea77e08d68c760f387c307d258804e3b.zip | |
core: Prepare various classes for memory read/write migration
Amends a few interfaces to be able to handle the migration over to the
new Memory class by passing the class by reference as a function
parameter where necessary.
Notably, within the filesystem services, this eliminates two ReadBlock()
calls by using the helper functions of HLERequestContext to do that for
us.
Diffstat (limited to 'src/core/arm/arm_interface.h')
| -rw-r--r-- | src/core/arm/arm_interface.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/core/arm/arm_interface.h b/src/core/arm/arm_interface.h index 45e94e625..47b964eb7 100644 --- a/src/core/arm/arm_interface.h +++ b/src/core/arm/arm_interface.h | |||
| @@ -17,11 +17,13 @@ enum class VMAPermission : u8; | |||
| 17 | } | 17 | } |
| 18 | 18 | ||
| 19 | namespace Core { | 19 | namespace Core { |
| 20 | class System; | ||
| 20 | 21 | ||
| 21 | /// Generic ARMv8 CPU interface | 22 | /// Generic ARMv8 CPU interface |
| 22 | class ARM_Interface : NonCopyable { | 23 | class ARM_Interface : NonCopyable { |
| 23 | public: | 24 | public: |
| 24 | virtual ~ARM_Interface() {} | 25 | explicit ARM_Interface(System& system_) : system{system_} {} |
| 26 | virtual ~ARM_Interface() = default; | ||
| 25 | 27 | ||
| 26 | struct ThreadContext { | 28 | struct ThreadContext { |
| 27 | std::array<u64, 31> cpu_registers; | 29 | std::array<u64, 31> cpu_registers; |
| @@ -163,6 +165,10 @@ public: | |||
| 163 | /// fp+0 : pointer to previous frame record | 165 | /// fp+0 : pointer to previous frame record |
| 164 | /// fp+8 : value of lr for frame | 166 | /// fp+8 : value of lr for frame |
| 165 | void LogBacktrace() const; | 167 | void LogBacktrace() const; |
| 168 | |||
| 169 | protected: | ||
| 170 | /// System context that this ARM interface is running under. | ||
| 171 | System& system; | ||
| 166 | }; | 172 | }; |
| 167 | 173 | ||
| 168 | } // namespace Core | 174 | } // namespace Core |