diff --git a/FEXCore/Source/Interface/Core/CodeCache.cpp b/FEXCore/Source/Interface/Core/CodeCache.cpp index 91b4059d5..efc6ca5cc 100644 --- a/FEXCore/Source/Interface/Core/CodeCache.cpp +++ b/FEXCore/Source/Interface/Core/CodeCache.cpp @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -#include "Utils/SpinWaitLock.h" +#include #include #include diff --git a/FEXCore/Source/Interface/Core/Core.cpp b/FEXCore/Source/Interface/Core/Core.cpp index 25c342771..718482700 100644 --- a/FEXCore/Source/Interface/Core/Core.cpp +++ b/FEXCore/Source/Interface/Core/Core.cpp @@ -30,7 +30,7 @@ $end_info$ #include "Interface/IR/RegisterAllocationData.h" #include "Utils/Allocator.h" #include "Utils/Allocator/HostAllocator.h" -#include "Utils/SpinWaitLock.h" +#include #include "Utils/variable_length_integer.h" #include diff --git a/FEXCore/Source/Interface/Core/LookupCache.h b/FEXCore/Source/Interface/Core/LookupCache.h index ab73cb1c3..bf958d80b 100644 --- a/FEXCore/Source/Interface/Core/LookupCache.h +++ b/FEXCore/Source/Interface/Core/LookupCache.h @@ -3,7 +3,7 @@ #include "Interface/Context/Context.h" #include #include -#include "Utils/WritePriorityMutex.h" +#include #include #include diff --git a/FEXCore/Source/Utils/ArchHelpers/Arm64.cpp b/FEXCore/Source/Utils/ArchHelpers/Arm64.cpp index 4d3c7978f..24ffeed28 100644 --- a/FEXCore/Source/Utils/ArchHelpers/Arm64.cpp +++ b/FEXCore/Source/Utils/ArchHelpers/Arm64.cpp @@ -2,7 +2,7 @@ #include "Interface/Core/CPUBackend.h" #include "Interface/Context/Context.h" -#include "Utils/SpinWaitLock.h" +#include #include #include diff --git a/FEXCore/Source/Utils/SpinWaitLock.cpp b/FEXCore/Source/Utils/SpinWaitLock.cpp index 89e9920ac..3dba2d564 100644 --- a/FEXCore/Source/Utils/SpinWaitLock.cpp +++ b/FEXCore/Source/Utils/SpinWaitLock.cpp @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -#include "Utils/SpinWaitLock.h" +#include namespace FEXCore::Utils::SpinWaitLock { #ifdef ARCHITECTURE_arm64 diff --git a/FEXCore/Source/Utils/SpinWaitLock.h b/FEXCore/include/FEXCore/Utils/SpinWaitLock.h similarity index 98% rename from FEXCore/Source/Utils/SpinWaitLock.h rename to FEXCore/include/FEXCore/Utils/SpinWaitLock.h index 910b69d3a..1fa0c0356 100644 --- a/FEXCore/Source/Utils/SpinWaitLock.h +++ b/FEXCore/include/FEXCore/Utils/SpinWaitLock.h @@ -50,8 +50,9 @@ namespace FEXCore::Utils::SpinWaitLock { #define SPINLOOP_32BIT SPINLOOP_BODY(ldar, w) #define SPINLOOP_64BIT SPINLOOP_BODY(ldar, x) -extern uint64_t CycleCounterFrequency; -extern uint64_t CyclesPerNanosecond; +FEX_DEFAULT_VISIBILITY extern uint64_t CycleCounterFrequency; + +FEX_DEFAULT_VISIBILITY extern uint64_t CyclesPerNanosecond; ///< Get the raw cycle counter which is synchronizing. /// `CNTVCTSS_EL0` also does the same thing, but requires the FEAT_ECV feature. diff --git a/FEXCore/Source/Utils/WritePriorityMutex.h b/FEXCore/include/FEXCore/Utils/WritePriorityMutex.h similarity index 98% rename from FEXCore/Source/Utils/WritePriorityMutex.h rename to FEXCore/include/FEXCore/Utils/WritePriorityMutex.h index a382edf5f..84742f86a 100644 --- a/FEXCore/Source/Utils/WritePriorityMutex.h +++ b/FEXCore/include/FEXCore/Utils/WritePriorityMutex.h @@ -9,11 +9,15 @@ #include #else #include +// Don't pull in all WIN32 headers for INFINITE. Causes too many problems. +#ifndef INFINITE +#define INFINITE 0xffffffff +#endif #endif #include -#include "Utils/SpinWaitLock.h" +#include namespace FEXCore::Utils::WritePriorityMutex { diff --git a/FEXCore/unittests/APITests/FutexSpinTest.cpp b/FEXCore/unittests/APITests/FutexSpinTest.cpp index 4413ea800..65f7276fc 100644 --- a/FEXCore/unittests/APITests/FutexSpinTest.cpp +++ b/FEXCore/unittests/APITests/FutexSpinTest.cpp @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -#include "Utils/SpinWaitLock.h" +#include #include #include #include