try another macro for arm vfp master github/master
authornotaz <notasas@gmail.com>
Sun, 17 Nov 2024 02:48:14 +0000 (04:48 +0200)
committernotaz <notasas@gmail.com>
Sun, 17 Nov 2024 02:53:02 +0000 (04:53 +0200)
frontend/main.c
plugins/gpulib/gpulib_thread_if.c

index 9aeece9..42a90d4 100644 (file)
@@ -513,14 +513,14 @@ int emu_core_init(void)
        SysPrintf("Starting PCSX-ReARMed " REV "%s\n", get_build_info());
        SysPrintf("build time: " __DATE__ " " __TIME__ "\n");
 
-#if defined(__arm__) && defined(__VFP_FP__)
+#if defined(__arm__) && defined(__ARM_FP)
        // RunFast mode
        u32 fpscr = ~0;
-       __asm__ volatile("fmrx %0, fpscr" : "=r"(fpscr));
+       __asm__ volatile("vmrs %0, fpscr" : "=r"(fpscr));
        SysPrintf("old fpscr = %08x\n", fpscr);
        fpscr &= ~0x00009f9f;
        fpscr |=  0x03000000; // DN | FZ
-       __asm__ volatile("fmxr fpscr, %0" :: "r"(fpscr));
+       __asm__ volatile("vmsr fpscr, %0" :: "r"(fpscr));
 #endif
 
 #ifdef HAVE_RTHREADS
index 6f927db..c625c55 100644 (file)
@@ -76,13 +76,13 @@ static void *video_thread_main(void *arg) {
        static int processed = 0;
 #endif /* _3DS */
 
-#if defined(__arm__) && defined(__VFP_FP__)
+#if defined(__arm__) && defined(__ARM_FP)
        // RunFast mode
        u32 fpscr = ~0;
-       __asm__ volatile("fmrx %0, fpscr" : "=r"(fpscr));
+       __asm__ volatile("vmrs %0, fpscr" : "=r"(fpscr));
        fpscr &= ~0x00009f9f;
        fpscr |=  0x03000000; // DN | FZ
-       __asm__ volatile("fmxr fpscr, %0" :: "r"(fpscr));
+       __asm__ volatile("vmsr fpscr, %0" :: "r"(fpscr));
 #endif
 
        while(1) {