From 2fc529d5b767df4b0914650ebbf7cdbef49f5e4c Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Tue, 7 Mar 2023 17:01:17 -0800 Subject: [PATCH] AOTIR: Stop passing a mutex around. It's already guarded --- External/FEXCore/include/FEXCore/HLE/SyscallHandler.h | 8 ++------ Source/Tools/FEXLoader/IRLoader.cpp | 3 +-- .../Tools/FEXLoader/LinuxSyscalls/SyscallsSMCTracking.cpp | 3 ++- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/External/FEXCore/include/FEXCore/HLE/SyscallHandler.h b/External/FEXCore/include/FEXCore/HLE/SyscallHandler.h index 640fe44e6..6d40de84e 100644 --- a/External/FEXCore/include/FEXCore/HLE/SyscallHandler.h +++ b/External/FEXCore/include/FEXCore/HLE/SyscallHandler.h @@ -3,7 +3,6 @@ #include #include -#include namespace FEXCore { class CodeLoader; @@ -52,9 +51,8 @@ namespace FEXCore::HLE { class SourcecodeResolver; struct AOTIRCacheEntryLookupResult { - AOTIRCacheEntryLookupResult(FEXCore::IR::AOTIRCacheEntry *Entry, uintptr_t VAFileStart, FHU::ScopedSignalMaskWithSharedLock &&lk) - : Entry(Entry), VAFileStart(VAFileStart), lk(std::move(lk)) - { + AOTIRCacheEntryLookupResult(FEXCore::IR::AOTIRCacheEntry *Entry, uintptr_t VAFileStart) + : Entry(Entry), VAFileStart(VAFileStart) { } @@ -64,8 +62,6 @@ namespace FEXCore::HLE { uintptr_t VAFileStart; friend class SyscallHandler; - protected: - FHU::ScopedSignalMaskWithSharedLock lk; }; class SyscallHandler { diff --git a/Source/Tools/FEXLoader/IRLoader.cpp b/Source/Tools/FEXLoader/IRLoader.cpp index f310599e0..10afb7b6c 100644 --- a/Source/Tools/FEXLoader/IRLoader.cpp +++ b/Source/Tools/FEXLoader/IRLoader.cpp @@ -158,9 +158,8 @@ class DummySyscallHandler: public FEXCore::HLE::SyscallHandler, public FEXCore:: } // These are no-ops implementations of the SyscallHandler API - std::shared_mutex StubMutex; FEXCore::HLE::AOTIRCacheEntryLookupResult LookupAOTIRCacheEntry(uint64_t GuestAddr) override { - return {0, 0, FHU::ScopedSignalMaskWithSharedLock {StubMutex}}; + return {0, 0}; } }; diff --git a/Source/Tools/FEXLoader/LinuxSyscalls/SyscallsSMCTracking.cpp b/Source/Tools/FEXLoader/LinuxSyscalls/SyscallsSMCTracking.cpp index b9289b3d0..026277fbd 100644 --- a/Source/Tools/FEXLoader/LinuxSyscalls/SyscallsSMCTracking.cpp +++ b/Source/Tools/FEXLoader/LinuxSyscalls/SyscallsSMCTracking.cpp @@ -15,6 +15,7 @@ $end_info$ #include "LinuxSyscalls/Syscalls.h" #include +#include #include #include #include @@ -164,7 +165,7 @@ void SyscallHandler::MarkGuestExecutableRange(uint64_t Start, uint64_t Length) { // Used for AOT FEXCore::HLE::AOTIRCacheEntryLookupResult SyscallHandler::LookupAOTIRCacheEntry(uint64_t GuestAddr) { FHU::ScopedSignalMaskWithSharedLock lk(_SyscallHandler->VMATracking.Mutex); - auto rv = FEXCore::HLE::AOTIRCacheEntryLookupResult(nullptr, 0, std::move(lk)); + auto rv = FEXCore::HLE::AOTIRCacheEntryLookupResult(nullptr, 0); // Get the first mapping after GuestAddr, or end // GuestAddr is inclusive