mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-10-29 02:41:51 +00:00
This reverts commit 218c6705d9.
- [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions).
- [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md).
- [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability.
-------------------
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4532
Reviewed-by: lizzie <lizzie@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: Maufeat <sahyno1996@gmail.com>
This commit is contained in:
@@ -37,6 +37,18 @@ public:
|
||||
, user_ro{std::move(user_ro_)}
|
||||
, context{process_->GetMemory()}
|
||||
{
|
||||
|
||||
// clang-format off
|
||||
static const FunctionInfo functions[] = {
|
||||
{0, C<&IJitEnvironment::GenerateCode>, "GenerateCode"},
|
||||
{1, C<&IJitEnvironment::Control>, "Control"},
|
||||
{1000, C<&IJitEnvironment::LoadPlugin>, "LoadPlugin"},
|
||||
{1001, C<&IJitEnvironment::GetCodeAddress>, "GetCodeAddress"},
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
RegisterHandlers(functions);
|
||||
|
||||
// Identity map user code range into sysmodule context
|
||||
configuration.user_rx_memory.size = user_rx.GetSize();
|
||||
configuration.user_rx_memory.offset = user_rx.GetAddress();
|
||||
@@ -47,10 +59,6 @@ public:
|
||||
configuration.sys_ro_memory = configuration.user_ro_memory;
|
||||
}
|
||||
|
||||
std::optional<FunctionInfoBase> FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
|
||||
~IJitEnvironment() {
|
||||
user_rx.Finalize(system.Kernel());
|
||||
user_ro.Finalize(system.Kernel());
|
||||
@@ -240,13 +248,6 @@ private:
|
||||
return in;
|
||||
}
|
||||
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, C<&IJitEnvironment::GenerateCode>, "GenerateCode"},
|
||||
FunctionInfo{1, C<&IJitEnvironment::Control>, "Control"},
|
||||
FunctionInfo{1000, C<&IJitEnvironment::LoadPlugin>, "LoadPlugin"},
|
||||
FunctionInfo{1001, C<&IJitEnvironment::GetCodeAddress>, "GetCodeAddress"}
|
||||
);
|
||||
|
||||
Kernel::KScopedAutoObject<Kernel::KProcess> process;
|
||||
CodeMemory user_rx;
|
||||
CodeMemory user_ro;
|
||||
@@ -257,10 +258,14 @@ private:
|
||||
|
||||
class JITU final : public ServiceFramework<JITU> {
|
||||
public:
|
||||
explicit JITU(Core::System& system_) : ServiceFramework{system_, "jit:u"} {}
|
||||
explicit JITU(Core::System& system_) : ServiceFramework{system_, "jit:u"} {
|
||||
// clang-format off
|
||||
static const FunctionInfo functions[] = {
|
||||
{0, C<&JITU::CreateJitEnvironment>, "CreateJitEnvironment"},
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
std::optional<FunctionInfoBase> FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
RegisterHandlers(functions);
|
||||
}
|
||||
|
||||
private:
|
||||
@@ -289,10 +294,6 @@ private:
|
||||
}
|
||||
|
||||
private:
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, C<&JITU::CreateJitEnvironment>, "CreateJitEnvironment"}
|
||||
);
|
||||
|
||||
std::mt19937_64 generate_random{};
|
||||
};
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
// SPDX-FileCopyrightText: Copyright 2022 yuzu Emulator Project
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
|
||||
Reference in New Issue
Block a user