--- library/borealis/library/lib/extern/libretro-common/features/features_cpu.c +++ library/borealis/library/lib/extern/libretro-common/features/features_cpu.c 2025-10-04 19:30:42.000000000 +0800 @@ -45,10 +45,14 @@ #if defined(_XBOX360) #include -#elif !defined(__MACH__) && (defined(__POWERPC__) || defined(__powerpc__) || defined(__ppc__) || defined(__PPC64__) || defined(__powerpc64__)) +#elif defined(__POWERPC__) || defined(__powerpc__) || defined(__ppc__) || defined(__PPC64__) || defined(__powerpc64__) +#ifdef __MACH__ +#include +#else #ifndef _PPU_INTRINSICS_H #include #endif +#endif #elif defined(_POSIX_MONOTONIC_CLOCK) || defined(ANDROID) || defined(__QNX__) || defined(DJGPP) /* POSIX_MONOTONIC_CLOCK is not being defined in Android headers despite support being present. */ #include @@ -111,18 +115,12 @@ /* iOS/OSX specific. Lacks clock_gettime(), so implement it. */ #ifdef __MACH__ #include +#endif #ifndef CLOCK_MONOTONIC #define CLOCK_MONOTONIC 0 -#endif - -#ifndef CLOCK_REALTIME #define CLOCK_REALTIME 0 -#endif -/** - * TODO/FIXME: clock_gettime function is part of iOS 10 now - **/ static int ra_clock_gettime(int clk_ik, struct timespec *t) { struct timeval now; @@ -133,9 +131,6 @@ t->tv_nsec = now.tv_usec * 1000; return 0; } -#endif - -#if defined(__MACH__) && __IPHONE_OS_VERSION_MIN_REQUIRED < 100000 #else #define ra_clock_gettime clock_gettime #endif @@ -174,7 +169,7 @@ time_ticks = (1000000 * tv_sec + tv_usec); #elif defined(GEKKO) time_ticks = gettime(); -#elif !defined(__MACH__) && (defined(_XBOX360) || defined(__powerpc__) || defined(__ppc__) || defined(__POWERPC__) || defined(__PSL1GHT__) || defined(__PPC64__) || defined(__powerpc64__)) +#elif defined(_XBOX360) || defined(__powerpc__) || defined(__ppc__) || defined(__POWERPC__) || defined(__PSL1GHT__) || defined(__PPC64__) || defined(__powerpc64__) time_ticks = __mftb(); #elif (defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK > 0) || defined(__QNX__) || defined(ANDROID) struct timespec tv;