diff --git a/Source/Core/Common/CommonFuncs.h b/Source/Core/Common/CommonFuncs.h index 52ce71a540..8e039b6066 100644 --- a/Source/Core/Common/CommonFuncs.h +++ b/Source/Core/Common/CommonFuncs.h @@ -102,12 +102,6 @@ extern "C" __declspec(dllimport) void __stdcall DebugBreak(void); } #define Crash() {DebugBreak();} - - #if (_MSC_VER > 1800) - #error alignof compat can be removed - #else - #define alignof(x) __alignof(x) - #endif #endif // WIN32 ndef // Generic function to get last error message. diff --git a/Source/Core/Common/Event.h b/Source/Core/Common/Event.h index db98ce1574..e05bafac1f 100644 --- a/Source/Core/Common/Event.h +++ b/Source/Core/Common/Event.h @@ -24,9 +24,6 @@ namespace Common { -// Windows uses a specific implementation because std::condition_variable has -// terrible performance for this kind of workload with MSVC++ 2013. -#ifndef _WIN32 class Event final { public: @@ -76,39 +73,5 @@ private: std::condition_variable m_condvar; std::mutex m_mutex; }; -#else -class Event final -{ -public: - void Set() - { - m_event.set(); - } - - void Wait() - { - m_event.wait(); - m_event.reset(); - } - - template - bool WaitFor(const std::chrono::duration& rel_time) - { - bool signaled = m_event.wait( - (u32)std::chrono::duration_cast(rel_time).count() - ) == 0; - m_event.reset(); - return signaled; - } - - void Reset() - { - m_event.reset(); - } - -private: - concurrency::event m_event; -}; -#endif } // namespace Common diff --git a/Source/Core/Common/Flag.h b/Source/Core/Common/Flag.h index f2ed128f5a..846f953280 100644 --- a/Source/Core/Common/Flag.h +++ b/Source/Core/Common/Flag.h @@ -56,11 +56,7 @@ public: } private: - // We are not using std::atomic_bool here because MSVC sucks as of VC++ - // 2013 and does not implement the std::atomic_bool(bool) constructor. - // - // Re-evaluate next time we upgrade that piece of shit. - std::atomic m_val; + std::atomic_bool m_val; }; } // namespace Common diff --git a/Source/Core/Common/x64Emitter.h b/Source/Core/Common/x64Emitter.h index d444724705..8070d70212 100644 --- a/Source/Core/Common/x64Emitter.h +++ b/Source/Core/Common/x64Emitter.h @@ -954,8 +954,7 @@ public: template void ABI_CallLambdaC(const std::function* f, u32 p1) { - // Double casting is required by VC++ for some reason. - auto trampoline = (void(*)())&XEmitter::CallLambdaTrampoline; + auto trampoline = &XEmitter::CallLambdaTrampoline; ABI_CallFunctionPC((void*)trampoline, const_cast((const void*)f), p1); } }; // class XEmitter