From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) by sourceware.org (Postfix) with ESMTPS id 9574438418BB for ; Wed, 29 Jun 2022 20:27:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9574438418BB Received: by mail-pl1-x630.google.com with SMTP id b2so8134803plx.7 for ; Wed, 29 Jun 2022 13:27:01 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=2bsnshw3+n6Y83kCb6q9ifr/eUMtWFi5J6TJKL1UhJA=; b=OjQhCUAZFyx50HALTZiGLudXQBJkR6mZfGei9o0VMO16zs6gcLs3r29Xs3pe+ifah9 jqEnJ17N6AYgX3YT41GnH2u1rUieuy3hJ4c5mY6W/DQY8qbY4co4Zo4pN4KSCLI+x4pW FfumVj683fM0xJnO+4kVKwjx436bp0juqF2TDV6iM5ZQQimiwvkWmixK4+9aVu2H1pYT FHriIh+BMae9sdZ3WNrkxcm4XcntVNEdfw43+W8Al3EWOGzjuRVsbYCXKHF7NisTo/mr ZgyY4lhs4le0DXK8PUQGsuS66nZXWZy2ojXMWge1pyOOqsz+l0B9TqgJbZ56wTBs5AVY 2+TQ== X-Gm-Message-State: AJIora+viO0O29qMIF+QC77ef4WXdOqMPZF4ETk7KluqOxaefeFHCq0i YLlUW/xp2Ou16KwalowCalb9u6hwBVWfBqLY4RCYtccd X-Google-Smtp-Source: AGRyM1u5yw9ERueRuknZsTD1Fr6LA+XXISi5PiPYu+Sa9cSXqBdv6EzLABGEjGvWc+gPDUk4g583aHbsE0TGAxAIGRo= X-Received: by 2002:a17:90a:e413:b0:1ec:8952:cc5d with SMTP id hv19-20020a17090ae41300b001ec8952cc5dmr7534051pjb.101.1656534420579; Wed, 29 Jun 2022 13:27:00 -0700 (PDT) MIME-Version: 1.0 References: <20220629202223.293961-1-goldstein.w.n@gmail.com> In-Reply-To: <20220629202223.293961-1-goldstein.w.n@gmail.com> From: "H.J. Lu" Date: Wed, 29 Jun 2022 13:26:24 -0700 Message-ID: Subject: Re: [PATCH v2] x86-64: Properly indent X86_IFUNC_IMPL_ADD_VN arguments To: Noah Goldstein Cc: GNU C Library , "Carlos O'Donell" Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-3025.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jun 2022 20:27:03 -0000 On Wed, Jun 29, 2022 at 1:22 PM Noah Goldstein wrote: > > From: "H.J. Lu" > > Properly indent X86_IFUNC_IMPL_ADD_VN arguments for memchr, rawmemchr > and wmemchr. > > Co-authored-by: H.J. Lu > --- > sysdeps/x86_64/multiarch/ifunc-impl-list.c | 99 +++++++++++----------- > 1 file changed, 51 insertions(+), 48 deletions(-) > > diff --git a/sysdeps/x86_64/multiarch/ifunc-impl-list.c b/sysdeps/x86_64/multiarch/ifunc-impl-list.c > index 1452b2809e..119f5f040b 100644 > --- a/sysdeps/x86_64/multiarch/ifunc-impl-list.c > +++ b/sysdeps/x86_64/multiarch/ifunc-impl-list.c > @@ -58,26 +58,27 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, > /* Support sysdeps/x86_64/multiarch/memchr.c. */ > IFUNC_IMPL (i, name, memchr, > X86_IFUNC_IMPL_ADD_V4 (array, i, memchr, > - (CPU_FEATURE_USABLE (AVX512VL) > - && CPU_FEATURE_USABLE (AVX512BW) > - && CPU_FEATURE_USABLE (BMI2)), > - __memchr_evex) > + (CPU_FEATURE_USABLE (AVX512VL) > + && CPU_FEATURE_USABLE (AVX512BW) > + && CPU_FEATURE_USABLE (BMI2)), > + __memchr_evex) > X86_IFUNC_IMPL_ADD_V4 (array, i, memchr, > - (CPU_FEATURE_USABLE (AVX512VL) > - && CPU_FEATURE_USABLE (AVX512BW) > - && CPU_FEATURE_USABLE (BMI2)), > - __memchr_evex_rtm) > + (CPU_FEATURE_USABLE (AVX512VL) > + && CPU_FEATURE_USABLE (AVX512BW) > + && CPU_FEATURE_USABLE (BMI2)), > + __memchr_evex_rtm) > X86_IFUNC_IMPL_ADD_V3 (array, i, memchr, > - CPU_FEATURE_USABLE (AVX2), > - __memchr_avx2) > + CPU_FEATURE_USABLE (AVX2), > + __memchr_avx2) > X86_IFUNC_IMPL_ADD_V3 (array, i, memchr, > - (CPU_FEATURE_USABLE (AVX2) > - && CPU_FEATURE_USABLE (RTM)), > - __memchr_avx2_rtm) > - /* Can be lowered to V1 if a V2 implementation is added. */ > + (CPU_FEATURE_USABLE (AVX2) > + && CPU_FEATURE_USABLE (RTM)), > + __memchr_avx2_rtm) > + /* ISA V2 wrapper for sse2 implementation because the sse2 It should be SSE2, not sse2. > + implementation is also used at ISA level 2. */ > X86_IFUNC_IMPL_ADD_V2 (array, i, memchr, > - 1, > - __memchr_sse2)) > + 1, > + __memchr_sse2)) > > /* Support sysdeps/x86_64/multiarch/memcmp.c. */ > IFUNC_IMPL (i, name, memcmp, > @@ -315,26 +316,27 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, > /* Support sysdeps/x86_64/multiarch/rawmemchr.c. */ > IFUNC_IMPL (i, name, rawmemchr, > X86_IFUNC_IMPL_ADD_V4 (array, i, rawmemchr, > - (CPU_FEATURE_USABLE (AVX512VL) > - && CPU_FEATURE_USABLE (AVX512BW) > - && CPU_FEATURE_USABLE (BMI2)), > - __rawmemchr_evex) > + (CPU_FEATURE_USABLE (AVX512VL) > + && CPU_FEATURE_USABLE (AVX512BW) > + && CPU_FEATURE_USABLE (BMI2)), > + __rawmemchr_evex) > X86_IFUNC_IMPL_ADD_V4 (array, i, rawmemchr, > - (CPU_FEATURE_USABLE (AVX512VL) > - && CPU_FEATURE_USABLE (AVX512BW) > - && CPU_FEATURE_USABLE (BMI2)), > - __rawmemchr_evex_rtm) > + (CPU_FEATURE_USABLE (AVX512VL) > + && CPU_FEATURE_USABLE (AVX512BW) > + && CPU_FEATURE_USABLE (BMI2)), > + __rawmemchr_evex_rtm) > X86_IFUNC_IMPL_ADD_V3 (array, i, rawmemchr, > - CPU_FEATURE_USABLE (AVX2), > - __rawmemchr_avx2) > + CPU_FEATURE_USABLE (AVX2), > + __rawmemchr_avx2) > X86_IFUNC_IMPL_ADD_V3 (array, i, rawmemchr, > - (CPU_FEATURE_USABLE (AVX2) > - && CPU_FEATURE_USABLE (RTM)), > - __rawmemchr_avx2_rtm) > - /* Can be lowered to V1 if a V2 implementation is added. */ > + (CPU_FEATURE_USABLE (AVX2) > + && CPU_FEATURE_USABLE (RTM)), > + __rawmemchr_avx2_rtm) > + /* ISA V2 wrapper for sse2 implementation because the sse2 > + implementation is also used at ISA level 2. */ > X86_IFUNC_IMPL_ADD_V2 (array, i, rawmemchr, > - 1, > - __rawmemchr_sse2)) > + 1, > + __rawmemchr_sse2)) > > /* Support sysdeps/x86_64/multiarch/strlen.c. */ > IFUNC_IMPL (i, name, strlen, > @@ -784,26 +786,27 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, > /* Support sysdeps/x86_64/multiarch/wmemchr.c. */ > IFUNC_IMPL (i, name, wmemchr, > X86_IFUNC_IMPL_ADD_V4 (array, i, wmemchr, > - (CPU_FEATURE_USABLE (AVX512VL) > - && CPU_FEATURE_USABLE (AVX512BW) > - && CPU_FEATURE_USABLE (BMI2)), > - __wmemchr_evex) > + (CPU_FEATURE_USABLE (AVX512VL) > + && CPU_FEATURE_USABLE (AVX512BW) > + && CPU_FEATURE_USABLE (BMI2)), > + __wmemchr_evex) > X86_IFUNC_IMPL_ADD_V4 (array, i, wmemchr, > - (CPU_FEATURE_USABLE (AVX512VL) > - && CPU_FEATURE_USABLE (AVX512BW) > - && CPU_FEATURE_USABLE (BMI2)), > - __wmemchr_evex_rtm) > + (CPU_FEATURE_USABLE (AVX512VL) > + && CPU_FEATURE_USABLE (AVX512BW) > + && CPU_FEATURE_USABLE (BMI2)), > + __wmemchr_evex_rtm) > X86_IFUNC_IMPL_ADD_V3 (array, i, wmemchr, > - CPU_FEATURE_USABLE (AVX2), > - __wmemchr_avx2) > + CPU_FEATURE_USABLE (AVX2), > + __wmemchr_avx2) > X86_IFUNC_IMPL_ADD_V3 (array, i, wmemchr, > - (CPU_FEATURE_USABLE (AVX2) > - && CPU_FEATURE_USABLE (RTM)), > - __wmemchr_avx2_rtm) > - /* Can be lowered to V1 if a V2 implementation is added. */ > + (CPU_FEATURE_USABLE (AVX2) > + && CPU_FEATURE_USABLE (RTM)), > + __wmemchr_avx2_rtm) > + /* ISA V2 wrapper for sse2 implementation because the sse2 > + implementation is also used at ISA level 2. */ > X86_IFUNC_IMPL_ADD_V2 (array, i, wmemchr, > - 1, > - __wmemchr_sse2)) > + 1, > + __wmemchr_sse2)) > > /* Support sysdeps/x86_64/multiarch/wmemcmp.c. */ > IFUNC_IMPL (i, name, wmemcmp, > -- > 2.34.1 > -- H.J.