diff --git a/src/Cafe/HW/Espresso/Recompiler/PPCRecompiler.cpp b/src/Cafe/HW/Espresso/Recompiler/PPCRecompiler.cpp index 83271e8c..376172f2 100644 --- a/src/Cafe/HW/Espresso/Recompiler/PPCRecompiler.cpp +++ b/src/Cafe/HW/Espresso/Recompiler/PPCRecompiler.cpp @@ -580,7 +580,7 @@ void PPCRecompiler_init() __cpuid(cpuInfo, 0x1); hasMOVBESupport = ((cpuInfo[2] >> 22) & 1) != 0; hasAVXSupport = ((cpuInfo[2] >> 28) & 1) != 0; - __cpuidex1(cpuInfo, 0x7, 0); + __cpuidex(cpuInfo, 0x7, 0); hasBMI2Support = ((cpuInfo[1] >> 8) & 1) != 0; forceLog_printf("Recompiler initialized. CPU extensions: %s%s%s", hasLZCNTSupport ? "LZCNT " : "", hasMOVBESupport ? "MOVBE " : "", hasAVXSupport ? "AVX " : ""); diff --git a/src/Common/unix/platform.cpp b/src/Common/unix/platform.cpp index 86973c7f..f0fc52a8 100644 --- a/src/Common/unix/platform.cpp +++ b/src/Common/unix/platform.cpp @@ -16,8 +16,10 @@ void (__cpuid)(int __cpuVal[4], unsigned int __leaf) } #undef __cpuid -void __cpuidex1(int __cpuid_info[4], int __leaf, int __subleaf) +#ifdef __clang__ +void __cpuidex(int __cpuid_info[4], int __leaf, int __subleaf) { __cpuid_count (__leaf, __subleaf, __cpuid_info[0], __cpuid_info[1], __cpuid_info[2], __cpuid_info[3]); } +#endif \ No newline at end of file diff --git a/src/Common/unix/platform.h b/src/Common/unix/platform.h index c3b1b011..d7522200 100644 --- a/src/Common/unix/platform.h +++ b/src/Common/unix/platform.h @@ -42,7 +42,7 @@ inline uint32_t GetExceptionError() // cpu id (somewhat hacky, reorganize later) void (__cpuid)(int __cpuVal[4], unsigned int __leaf); -void __cpuidex1 (int __cpuid_info[4], int __leaf, int __subleaf); +void __cpuidex (int __cpuid_info[4], int __leaf, int __subleaf); // placeholder uint32_t GetTickCount(); diff --git a/src/main.cpp b/src/main.cpp index 587d29e6..406c7ebd 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -27,6 +27,8 @@ #include "Cafe/IOSU/legacy/iosu_crypto.h" #include "Cafe/OS/libs/vpad/vpad.h" +#include "Common/platform.h" + #include "audio/IAudioAPI.h" #if BOOST_OS_WINDOWS #pragma comment(lib,"Dbghelp.lib") @@ -39,11 +41,13 @@ #define _putenv(__s) putenv((char*)(__s)) #endif +#if BOOST_OS_WINDOWS extern "C" { __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1; __declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001; } +#endif bool _cpuExtension_SSSE3 = false; bool _cpuExtension_SSE4_1 = false;