From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 10A9345872 for ; Fri, 26 May 2023 08:04:03 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9512A68C1E5; Fri, 26 May 2023 11:03:27 +0300 (EEST) Received: from mail-lj1-f176.google.com (mail-lj1-f176.google.com [209.85.208.176]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 13C1668B9FF for ; Fri, 26 May 2023 11:03:19 +0300 (EEST) Received: by mail-lj1-f176.google.com with SMTP id 38308e7fff4ca-2af1e290921so4281601fa.3 for ; Fri, 26 May 2023 01:03:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=martin-st.20221208.gappssmtp.com; s=20221208; t=1685088198; x=1687680198; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=YFlUz7sZjYoQVjDEtjrVrhvD1J+V2cdKdTpEhwgUrLI=; b=sk1MynBpt8gcIODHgcn4K1wVPhQNPTUNFdoXKrF/74TyZazO7HcGFghNy68GW5+IQE mZlqzmt/gLkMlZ0GQiK/1NOaOX4iBPHPWi6k0p4xLuq7g0HBGvL+4ZJ85LeNonyyMh/j CJwUfdZwptwkjfe3sGrrMZnARLeCN3r4AfI6fhv+jGCS3R8+0i2fr0tY9ghMk4hraKee qndXjUGTlrgJ+mcxZPPj/Z1Cz76N6vjQW2gpbhwWPIRzj4kyKjtuacnQPpWLciPmeBBe 2r1kWKwdA3TMkq6r+iQPGHY/VBh40EUSjEX7O/jW1SWPeTDA8KXyzsbT+5e6mjszCfiu qAxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685088198; x=1687680198; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YFlUz7sZjYoQVjDEtjrVrhvD1J+V2cdKdTpEhwgUrLI=; b=WQpWULvU5socI1wbo6OyzlOqqjHcqfR8hp6teJn3RbIH4NMOLVhHqSGxczcolNZ4Qq NfRtSYeppJr9v1RS+I5Dlk3uuQ/49uZXuJJkJpmhHQM6nCR6Frw9Z+G+FbNVVAvojGIy 9z85qsGUWNpmLSgFZFZ711fcPIEVTcanyuDUMboew+zPaT2Sab7m50tcMllcR7PR83JS Nm7rLQVK6tQs7h3QGsC08XE2hshnmLLVMoadXbZJC0S2Kh+mYB5UXPDg6TdPHZoXxQu2 lX/rjaweFqdI1MEmqA5ruIWFKe4jcWj9UyrbZK+QfjL15Yw2aXVcQpDUHrNrRgKUNbVy ZKEQ== X-Gm-Message-State: AC+VfDz4MKg0WOxFBBgVOB/auNJG5WMQoQqkN9AcoPtAsmfPJKg9HIyu 4CzDrjOY/CCqdrhu1WYf9AF7ifG1RQWyViKs1oAMmw== X-Google-Smtp-Source: ACHHUZ6GXfOqrkE747XlD4snkDv1rSoIdQ4zFad6i7hDDccW6RkvtPxIzG1djNeReU1C7FxfpZcG1w== X-Received: by 2002:a2e:b6c2:0:b0:2a8:a651:8098 with SMTP id m2-20020a2eb6c2000000b002a8a6518098mr349827ljo.38.1685088198363; Fri, 26 May 2023 01:03:18 -0700 (PDT) Received: from localhost (dsl-tkubng21-58c01c-243.dhcp.inet.fi. [88.192.28.243]) by smtp.gmail.com with ESMTPSA id i10-20020a2e864a000000b002ad90c2d0dasm607301ljj.71.2023.05.26.01.03.18 for (version=TLS1 cipher=AES128-SHA bits=128/128); Fri, 26 May 2023 01:03:18 -0700 (PDT) From: =?UTF-8?q?Martin=20Storsj=C3=B6?= To: ffmpeg-devel@ffmpeg.org Date: Fri, 26 May 2023 11:03:15 +0300 Message-Id: <20230526080315.83424-4-martin@martin.st> X-Mailer: git-send-email 2.37.1 (Apple Git-137.1) In-Reply-To: <20230526080315.83424-1-martin@martin.st> References: <20230526080315.83424-1-martin@martin.st> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 4/4] aarch64: Add Apple runtime detection of dotprod and i8mm using sysctl X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --- configure | 2 ++ libavutil/aarch64/cpu.c | 22 ++++++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/configure b/configure index b5357b8d27..45bdc16c7d 100755 --- a/configure +++ b/configure @@ -2346,6 +2346,7 @@ SYSTEM_FUNCS=" strerror_r sysconf sysctl + sysctlbyname usleep UTGetOSTypeFromString VirtualAlloc @@ -6384,6 +6385,7 @@ check_func_headers mach/mach_time.h mach_absolute_time check_func_headers stdlib.h getenv check_func_headers sys/stat.h lstat check_func_headers sys/auxv.h getauxval +check_func_headers sys/sysctl.h sysctlbyname check_func_headers windows.h GetModuleHandle check_func_headers windows.h GetProcessAffinityMask diff --git a/libavutil/aarch64/cpu.c b/libavutil/aarch64/cpu.c index 34c838c2f5..f35e4356df 100644 --- a/libavutil/aarch64/cpu.c +++ b/libavutil/aarch64/cpu.c @@ -47,6 +47,28 @@ static int detect_flags(void) return flags; } +#elif defined(__APPLE__) && HAVE_SYSCTLBYNAME +#include + +static int detect_flags(void) +{ + uint32_t value = 0; + size_t size; + int flags = 0; + + size = sizeof(value); + if (!sysctlbyname("hw.optional.arm.FEAT_DotProd", &value, &size, NULL, 0)) { + if (value) + flags |= AV_CPU_FLAG_DOTPROD; + } + size = sizeof(value); + if (!sysctlbyname("hw.optional.arm.FEAT_I8MM", &value, &size, NULL, 0)) { + if (value) + flags |= AV_CPU_FLAG_I8MM; + } + return flags; +} + #else static int detect_flags(void) -- 2.37.1 (Apple Git-137.1) _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".