[FFmpeg-cvslog] aarch64: Simplify the linux runtime cpu detection code

Martin Storsjö git at videolan.org
Tue Oct 31 12:23:55 EET 2023


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Mon Oct 23 11:27:29 2023 +0300| [f05948ada435d95fed3cc9279cec0ccef8a10a2c] | committer: Martin Storsjö

aarch64: Simplify the linux runtime cpu detection code

Skip doing the whole getauxval(AT_HWCAP) if HWCAP_CPUID isn't
defined.

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f05948ada435d95fed3cc9279cec0ccef8a10a2c
---

 libavutil/aarch64/cpu.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/libavutil/aarch64/cpu.c b/libavutil/aarch64/cpu.c
index bd780e8591..2b50c426bc 100644
--- a/libavutil/aarch64/cpu.c
+++ b/libavutil/aarch64/cpu.c
@@ -30,11 +30,9 @@
 static int detect_flags(void)
 {
     int flags = 0;
-    unsigned long hwcap;
-
-    hwcap = getauxval(AT_HWCAP);
 
 #if defined(HWCAP_CPUID)
+    unsigned long hwcap = getauxval(AT_HWCAP);
     // We can check for DOTPROD and I8MM using HWCAP_ASIMDDP and
     // HWCAP2_I8MM too, avoiding to read the CPUID registers (which triggers
     // a trap, handled by the kernel). However the HWCAP_* defines for these
@@ -53,8 +51,6 @@ static int detect_flags(void)
         if (((tmp >> 52) & 0xf) == 0x1)
             flags |= AV_CPU_FLAG_I8MM;
     }
-#else
-    (void)hwcap;
 #endif
 
     return flags;



More information about the ffmpeg-cvslog mailing list