diff options
| author | 2023-12-24 19:30:16 -0500 | |
|---|---|---|
| committer | 2023-12-24 19:36:42 -0500 | |
| commit | 47e44a6693ad2e8c7fbdaa23ed440d9780e1d54b (patch) | |
| tree | e5102e449dbec63dda46188ea2fe98691caef857 | |
| parent | kernel: remove unecessary process member from handle table (diff) | |
| download | yuzu-47e44a6693ad2e8c7fbdaa23ed440d9780e1d54b.tar.gz yuzu-47e44a6693ad2e8c7fbdaa23ed440d9780e1d54b.tar.xz yuzu-47e44a6693ad2e8c7fbdaa23ed440d9780e1d54b.zip | |
am/jit: reference memory instance from context
| -rw-r--r-- | src/core/hle/service/am/am.cpp | 6 | ||||
| -rw-r--r-- | src/core/hle/service/hle_ipc.h | 4 | ||||
| -rw-r--r-- | src/core/hle/service/jit/jit.cpp | 2 |
3 files changed, 7 insertions, 5 deletions
diff --git a/src/core/hle/service/am/am.cpp b/src/core/hle/service/am/am.cpp index dabec1119..97eb56ff0 100644 --- a/src/core/hle/service/am/am.cpp +++ b/src/core/hle/service/am/am.cpp | |||
| @@ -1523,8 +1523,7 @@ void ILibraryAppletCreator::CreateTransferMemoryStorage(HLERequestContext& ctx) | |||
| 1523 | } | 1523 | } |
| 1524 | 1524 | ||
| 1525 | std::vector<u8> memory(transfer_mem->GetSize()); | 1525 | std::vector<u8> memory(transfer_mem->GetSize()); |
| 1526 | system.ApplicationMemory().ReadBlock(transfer_mem->GetSourceAddress(), memory.data(), | 1526 | ctx.GetMemory().ReadBlock(transfer_mem->GetSourceAddress(), memory.data(), memory.size()); |
| 1527 | memory.size()); | ||
| 1528 | 1527 | ||
| 1529 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; | 1528 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; |
| 1530 | rb.Push(ResultSuccess); | 1529 | rb.Push(ResultSuccess); |
| @@ -1556,8 +1555,7 @@ void ILibraryAppletCreator::CreateHandleStorage(HLERequestContext& ctx) { | |||
| 1556 | } | 1555 | } |
| 1557 | 1556 | ||
| 1558 | std::vector<u8> memory(transfer_mem->GetSize()); | 1557 | std::vector<u8> memory(transfer_mem->GetSize()); |
| 1559 | system.ApplicationMemory().ReadBlock(transfer_mem->GetSourceAddress(), memory.data(), | 1558 | ctx.GetMemory().ReadBlock(transfer_mem->GetSourceAddress(), memory.data(), memory.size()); |
| 1560 | memory.size()); | ||
| 1561 | 1559 | ||
| 1562 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; | 1560 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; |
| 1563 | rb.Push(ResultSuccess); | 1561 | rb.Push(ResultSuccess); |
diff --git a/src/core/hle/service/hle_ipc.h b/src/core/hle/service/hle_ipc.h index 69a3cce36..40d86943e 100644 --- a/src/core/hle/service/hle_ipc.h +++ b/src/core/hle/service/hle_ipc.h | |||
| @@ -360,6 +360,10 @@ public: | |||
| 360 | return *thread; | 360 | return *thread; |
| 361 | } | 361 | } |
| 362 | 362 | ||
| 363 | [[nodiscard]] Core::Memory::Memory& GetMemory() const { | ||
| 364 | return memory; | ||
| 365 | } | ||
| 366 | |||
| 363 | template <typename T> | 367 | template <typename T> |
| 364 | Kernel::KScopedAutoObject<T> GetObjectFromHandle(u32 handle) { | 368 | Kernel::KScopedAutoObject<T> GetObjectFromHandle(u32 handle) { |
| 365 | auto obj = client_handle_table->GetObjectForIpc(handle, thread); | 369 | auto obj = client_handle_table->GetObjectForIpc(handle, thread); |
diff --git a/src/core/hle/service/jit/jit.cpp b/src/core/hle/service/jit/jit.cpp index 8648c76fa..a94d05e19 100644 --- a/src/core/hle/service/jit/jit.cpp +++ b/src/core/hle/service/jit/jit.cpp | |||
| @@ -26,7 +26,7 @@ public: | |||
| 26 | explicit IJitEnvironment(Core::System& system_, Kernel::KProcess& process_, CodeRange user_rx, | 26 | explicit IJitEnvironment(Core::System& system_, Kernel::KProcess& process_, CodeRange user_rx, |
| 27 | CodeRange user_ro) | 27 | CodeRange user_ro) |
| 28 | : ServiceFramework{system_, "IJitEnvironment"}, process{&process_}, | 28 | : ServiceFramework{system_, "IJitEnvironment"}, process{&process_}, |
| 29 | context{system_.ApplicationMemory()} { | 29 | context{process->GetMemory()} { |
| 30 | // clang-format off | 30 | // clang-format off |
| 31 | static const FunctionInfo functions[] = { | 31 | static const FunctionInfo functions[] = { |
| 32 | {0, &IJitEnvironment::GenerateCode, "GenerateCode"}, | 32 | {0, &IJitEnvironment::GenerateCode, "GenerateCode"}, |