From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 17813158046 for ; Sat, 12 Oct 2024 04:55:01 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 9BAFAE29D5; Sat, 12 Oct 2024 04:54:57 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 5A88BE29CD for ; Sat, 12 Oct 2024 04:54:57 +0000 (UTC) From: Sam James To: Ulrich Mueller Cc: gentoo-dev@lists.gentoo.org, Paul Zander Subject: Re: [gentoo-dev] [COMMITTED] profiles: sync cpu_flags_x86 with cpuid2cpuflags In-Reply-To: (Ulrich Mueller's message of "Sat, 12 Oct 2024 06:47:25 +0200") Organization: Gentoo References: <1ba25c096ad0a00988ca30e5c6ccece8b6828169.1728669506.git.sam@gentoo.org> Date: Sat, 12 Oct 2024 05:54:53 +0100 Message-ID: <87a5f9zzs2.fsf@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Type: text/plain X-Archives-Salt: 62b5bc5c-242c-47df-89c1-592c78655d2e X-Archives-Hash: 0f2dce1285257c16d29933411320c2d6 Ulrich Mueller writes: >>>>>> On Fri, 11 Oct 2024, Sam James wrote: > >> From: Paul Zander >> Signed-off-by: Paul Zander >> Closes: https://github.com/gentoo/gentoo/pull/38695 >> Signed-off-by: Sam James >> --- >> profiles/arch/amd64/use.mask | 23 +++++++++++++++++++++++ >> profiles/arch/base/use.mask | 23 +++++++++++++++++++++++ >> profiles/arch/x86/use.mask | 23 +++++++++++++++++++++++ >> profiles/desc/cpu_flags_x86.desc | 5 +++++ >> 4 files changed, 74 insertions(+) > >> diff --git a/profiles/arch/amd64/use.mask b/profiles/arch/amd64/use.mask >> index 445c840781e21..2a1f8b7949057 100644 >> --- a/profiles/arch/amd64/use.mask >> +++ b/profiles/arch/amd64/use.mask >> @@ -157,12 +157,34 @@ >> -cpu_flags_x86_aes >> -cpu_flags_x86_avx >> -cpu_flags_x86_avx2 >> +-cpu_flags_x86_avx512_4fmaps >> +-cpu_flags_x86_avx512_4vnniw >> +-cpu_flags_x86_avx512_bf16 >> +-cpu_flags_x86_avx512_bitalg >> +-cpu_flags_x86_avx512_fp16 >> +-cpu_flags_x86_avx512_vbmi2 >> +-cpu_flags_x86_avx512_vnni >> +-cpu_flags_x86_avx512_vp2intersect >> +-cpu_flags_x86_avx512_vpopcntdq >> +-cpu_flags_x86_avx512bw >> +-cpu_flags_x86_avx512cd >> +-cpu_flags_x86_avx512dq >> +-cpu_flags_x86_avx512er >> +-cpu_flags_x86_avx512f >> +-cpu_flags_x86_avx512ifma >> +-cpu_flags_x86_avx512pf >> +-cpu_flags_x86_avx512vbmi >> +-cpu_flags_x86_avx512vl >> +-cpu_flags_x86_f16c >> -cpu_flags_x86_fma3 >> -cpu_flags_x86_fma4 >> -cpu_flags_x86_mmx >> -cpu_flags_x86_mmxext >> -cpu_flags_x86_padlock >> +-cpu_flags_x86_pclmul >> -cpu_flags_x86_popcnt >> +-cpu_flags_x86_rdrand >> +-cpu_flags_x86_sha >> -cpu_flags_x86_sse >> -cpu_flags_x86_sse2 >> -cpu_flags_x86_sse3 >> @@ -170,6 +192,7 @@ >> -cpu_flags_x86_sse4_2 >> -cpu_flags_x86_sse4a >> -cpu_flags_x86_ssse3 >> +-cpu_flags_x86_vpclmulqdq >> -cpu_flags_x86_xop > >> # Robert Buchholz (2007-06-03) >> diff --git a/profiles/arch/base/use.mask b/profiles/arch/base/use.mask >> index a9616ebb25879..d511d85784005 100644 >> --- a/profiles/arch/base/use.mask >> +++ b/profiles/arch/base/use.mask >> @@ -83,12 +83,34 @@ cpu_flags_x86_3dnowext >> cpu_flags_x86_aes >> cpu_flags_x86_avx >> cpu_flags_x86_avx2 >> +cpu_flags_x86_avx512_4fmaps >> +cpu_flags_x86_avx512_4vnniw >> +cpu_flags_x86_avx512_bf16 >> +cpu_flags_x86_avx512_bitalg >> +cpu_flags_x86_avx512_fp16 >> +cpu_flags_x86_avx512_vbmi2 >> +cpu_flags_x86_avx512_vnni >> +cpu_flags_x86_avx512_vp2intersect >> +cpu_flags_x86_avx512_vpopcntdq >> +cpu_flags_x86_avx512bw >> +cpu_flags_x86_avx512cd >> +cpu_flags_x86_avx512dq >> +cpu_flags_x86_avx512er >> +cpu_flags_x86_avx512f >> +cpu_flags_x86_avx512ifma >> +cpu_flags_x86_avx512pf >> +cpu_flags_x86_avx512vbmi >> +cpu_flags_x86_avx512vl >> +cpu_flags_x86_f16c >> cpu_flags_x86_fma3 >> cpu_flags_x86_fma4 >> cpu_flags_x86_mmx >> cpu_flags_x86_mmxext >> cpu_flags_x86_padlock >> +cpu_flags_x86_pclmul >> cpu_flags_x86_popcnt >> +cpu_flags_x86_rdrand >> +cpu_flags_x86_sha >> cpu_flags_x86_sse >> cpu_flags_x86_sse2 >> cpu_flags_x86_sse3 >> @@ -96,6 +118,7 @@ cpu_flags_x86_sse4_1 >> cpu_flags_x86_sse4_2 >> cpu_flags_x86_sse4a >> cpu_flags_x86_ssse3 >> +cpu_flags_x86_vpclmulqdq >> cpu_flags_x86_xop > >> # ppc arch specific USE flags >> diff --git a/profiles/arch/x86/use.mask b/profiles/arch/x86/use.mask >> index 2157622d2e3cb..a3438e1c9a159 100644 >> --- a/profiles/arch/x86/use.mask >> +++ b/profiles/arch/x86/use.mask >> @@ -130,12 +130,34 @@ webengine >> -cpu_flags_x86_aes >> -cpu_flags_x86_avx >> -cpu_flags_x86_avx2 >> +-cpu_flags_x86_avx512_4fmaps >> +-cpu_flags_x86_avx512_4vnniw >> +-cpu_flags_x86_avx512_bf16 >> +-cpu_flags_x86_avx512_bitalg >> +-cpu_flags_x86_avx512_fp16 >> +-cpu_flags_x86_avx512_vbmi2 >> +-cpu_flags_x86_avx512_vnni >> +-cpu_flags_x86_avx512_vp2intersect >> +-cpu_flags_x86_avx512_vpopcntdq >> +-cpu_flags_x86_avx512bw >> +-cpu_flags_x86_avx512cd >> +-cpu_flags_x86_avx512dq >> +-cpu_flags_x86_avx512er >> +-cpu_flags_x86_avx512f >> +-cpu_flags_x86_avx512ifma >> +-cpu_flags_x86_avx512pf >> +-cpu_flags_x86_avx512vbmi >> +-cpu_flags_x86_avx512vl >> +-cpu_flags_x86_f16c >> -cpu_flags_x86_fma3 >> -cpu_flags_x86_fma4 >> -cpu_flags_x86_mmx >> -cpu_flags_x86_mmxext >> -cpu_flags_x86_padlock >> +-cpu_flags_x86_pclmul >> -cpu_flags_x86_popcnt >> +-cpu_flags_x86_rdrand >> +-cpu_flags_x86_sha >> -cpu_flags_x86_sse >> -cpu_flags_x86_sse2 >> -cpu_flags_x86_sse3 >> @@ -143,6 +165,7 @@ webengine >> -cpu_flags_x86_sse4_2 >> -cpu_flags_x86_sse4a >> -cpu_flags_x86_ssse3 >> +-cpu_flags_x86_vpclmulqdq >> -cpu_flags_x86_xop > >> # Modular X: unmask for architectures on which they are available >> diff --git a/profiles/desc/cpu_flags_x86.desc b/profiles/desc/cpu_flags_x86.desc >> index d7dee6227a71e..6324e4a540e25 100644 >> --- a/profiles/desc/cpu_flags_x86.desc >> +++ b/profiles/desc/cpu_flags_x86.desc >> @@ -19,9 +19,14 @@ avx512_vbmi2 - Use AVX-512 Vector Bit Manipulation Instructions 2 >> avx512_vnni - Use vector neural network instructions for 8- and 16-bit multiply-add operations >> avx512_vp2intersect - Use AVX-512 Intersect instruction set >> avx512_vpopcntdq - Use AVX-512 Vector Population Count Doubleword and Quadword instruction set >> +avx512bw - Use AVX-512 byte- and word instructions >> +avx512cd - Use AVX-512 conflict detection instructions >> avx512dq - Use AVX-512 double- and quad-word instructions >> +avx512er - Use AVX-512 exponential and reciprocal instructions >> avx512f - Adds support for AVX-512 Foundation instructions >> avx512ifma - Use AVX-512 Integer Fused Multiply-Add instruction set >> +avx512pf - Use AVX-512 prefetch instructions >> +avx512vbmi - Use AVX-512 vector byte manipulation instructions >> avx512vl - Use AVX-512 vector-length instructions >> f16c - Adds support for F16C instruction set for converting between half-precision and single-precision floats >> fma3 - Use the Fused Multiply Add 3 instruction set ([fma] in cpuinfo) >> -- > >> 2.47.0 > > This adds 20-ish flags to use.mask but only 5 to use.desc. Why are these > numbers different? The SHA flag, for example, isn't new, but wasn't masked before on most arches as it should be (in 32ee755a00526ed167ab6826eb1572b83f078558).