[x264-devel] [Git][videolan/x264][master] arm: Don't test x264_cpu_fast_neon_mrc_test on Windows
Anton Mitrofanov (@BugMaster)
gitlab at videolan.org
Fri Jun 6 19:33:44 UTC 2025
Anton Mitrofanov pushed to branch master at VideoLAN / x264
Commits:
714e07b4 by Martin Storsjö at 2025-06-06T14:25:43+03:00
arm: Don't test x264_cpu_fast_neon_mrc_test on Windows
The performance counters themselves are accessible, but the PMNC
(control register) that we try to read to see if the performance
counters are accessible, is not readable, causing illegal
instructions in cpu_enable_armv7_counter.
As an alternative, we could also modify cpu_fast_neon_mrc_test to
not inspect the PMNC at all (skip calling cpu_enable_armv7_counter)
but just assume that the counters are available, in high resolution
mode. However just not calling this codepath is the simplest,
as Windows on 32 bit ARM isn't very relevant these days.
- - - - -
1 changed file:
- common/cpu.c
Changes:
=====================================
common/cpu.c
=====================================
@@ -450,7 +450,9 @@ uint32_t x264_cpu_detect( void )
// x264 instance disables or reinits the counters while x264 is using them,
// which may result in incorrect detection and the counters stuck enabled.
// right now Apple does not seem to support performance counters for this test
-#ifndef __MACH__
+ // Don't test this on Windows; performance counters are readable, but
+ // the PMNC is not readable.
+#if !defined(__MACH__) && !defined(_WIN32)
flags |= x264_cpu_fast_neon_mrc_test() ? X264_CPU_FAST_NEON_MRC : 0;
#endif
// TODO: write dual issue test? currently it's A8 (dual issue) vs. A9 (fast mrc)
View it on GitLab: https://code.videolan.org/videolan/x264/-/commit/714e07b47761e694d399a5e207a9a2d8dcfdbf04
--
View it on GitLab: https://code.videolan.org/videolan/x264/-/commit/714e07b47761e694d399a5e207a9a2d8dcfdbf04
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
More information about the x264-devel
mailing list