Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp3790427pxb; Fri, 11 Feb 2022 07:50:45 -0800 (PST) X-Google-Smtp-Source: ABdhPJxj2rV8WVLljslicuiSPlY7Bqw9HK7bm/efzbSHfOf1vqpM9PKd8lHBzLy7XAhdlTqPiDI8 X-Received: by 2002:a05:6402:5113:: with SMTP id m19mr2573051edd.325.1644594645469; Fri, 11 Feb 2022 07:50:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644594645; cv=none; d=google.com; s=arc-20160816; b=iax6lMTcNxv/eewYUkKt38ecyYLx4BkUTcDpAE2MRR6JnD5j9zBobzbROxD9aUTEME prhhPZT4C3BkuJDucjLHtzhqp8JPaa/xoI5spfK2m86fuLzir0GtEfcux0QH4/Z73bmR HhdVy0YgWGOEKeA4H9h+qsdwks/fen70q2JwjWB7rK6Zk5vSwbQWAGHsXCzFZEQ7toAT PrmNapedTaLotZfNKBl2QY545Ex/QYgpQmuQMK5vPbOorA8qzD3t+L34zoVP11epjpZE xJvEtlwXiL9LS5k1YqnvQ5/8UI/dv78PaG5oZyYL5mlhss2Y14lp9MKYznPS8qHO24aa EISA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=XdJpKE7qzyLWabJi2XSkLClho5VsNot2jSIuhkkT7Uw=; b=Bphq6tr60Ou3V00Pptxw1maX5snczkeozJgmFpP/4B+EfGxrjiEN8IsKvD6XsbzGTO g3K/IW7CGeIx4Z0IsQWD99tnnNg+0yCaOgUmS6MRRDLoZrqd+JQ1ldsZJEM28Q3tOV2Z ocosXz+JLsiO8buaPYP1crHJRmZPIXCfNPD51VvS4hcwwJAcnn3nUlc+wjwjRnbUTUrG MM1R5m4ncj6SkRAiJdj/rhqgLvvdncFpgplSo/0MlrUu0+ZcQs+bwR3GzeMheqqxDoa5 IHt7DZ6y9holkX+khXBQp11G9hbkScmMj2C3yhjomTdY7ZDk09q+jNv//CqTvGh/8u+H sSUw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id nc31si6735052ejc.669.2022.02.11.07.50.13; Fri, 11 Feb 2022 07:50:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1343698AbiBKJhu (ORCPT + 99 others); Fri, 11 Feb 2022 04:37:50 -0500 Received: from mxb-00190b01.gslb.pphosted.com ([23.128.96.19]:56154 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232768AbiBKJhs (ORCPT ); Fri, 11 Feb 2022 04:37:48 -0500 Received: from fornost.hmeau.com (helcar.hmeau.com [216.24.177.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8CBE9F5B for ; Fri, 11 Feb 2022 01:37:47 -0800 (PST) Received: from gwarestrin.arnor.me.apana.org.au ([192.168.103.7]) by fornost.hmeau.com with smtp (Exim 4.92 #5 (Debian)) id 1nISN6-0004Vf-2c; Fri, 11 Feb 2022 20:37:45 +1100 Received: by gwarestrin.arnor.me.apana.org.au (sSMTP sendmail emulation); Fri, 11 Feb 2022 20:37:43 +1100 Date: Fri, 11 Feb 2022 20:37:43 +1100 From: Herbert Xu To: Ard Biesheuvel Cc: linux-crypto@vger.kernel.org, Nick Desaulniers , Nathan Chancellor Subject: Re: [PATCH v4 0/2] xor: enable auto-vectorization in Clang Message-ID: References: <20220205152346.237392-1-ardb@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220205152346.237392-1-ardb@kernel.org> X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_PASS,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 lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org On Sat, Feb 05, 2022 at 04:23:44PM +0100, Ard Biesheuvel wrote: > Update the xor_blocks() prototypes so that the compiler understands that > the inputs always refer to distinct regions of memory. This is implied > by the existing implementations, as they use different granularities for > the load/xor/store loops. > > With that, we can fix the ARM/Clang version, which refuses to SIMD > vectorize otherwise, and throws a spurious warning related to the GCC > version being incompatible. > > Changes since v3: > - revert broken PPC argument rename - doing it fully results in too > much pointless churn, and the 'inner' altivec routines are not > strictly part of the xor_blocks API anyway > > Changes since v2: > - fix arm64 build after rebase > - name PPC argument names consistently > - add Nick's acks and link tags > > Changes since v1: > - fix PPC build > - add Nathan's Tested-by > > Cc: Nick Desaulniers > Cc: Nathan Chancellor > > Ard Biesheuvel (2): > lib/xor: make xor prototypes more friendly to compiler vectorization > crypto: arm/xor - make vectorized C code Clang-friendly > > arch/alpha/include/asm/xor.h | 53 ++++++++---- > arch/arm/include/asm/xor.h | 42 ++++++---- > arch/arm/lib/xor-neon.c | 12 +-- > arch/arm64/include/asm/xor.h | 21 +++-- > arch/arm64/lib/xor-neon.c | 46 +++++++---- > arch/ia64/include/asm/xor.h | 21 +++-- > arch/powerpc/include/asm/xor_altivec.h | 25 +++--- > arch/powerpc/lib/xor_vmx.c | 28 ++++--- > arch/powerpc/lib/xor_vmx.h | 27 ++++--- > arch/powerpc/lib/xor_vmx_glue.c | 32 ++++---- > arch/s390/lib/xor.c | 21 +++-- > arch/sparc/include/asm/xor_32.h | 21 +++-- > arch/sparc/include/asm/xor_64.h | 42 ++++++---- > arch/x86/include/asm/xor.h | 42 ++++++---- > arch/x86/include/asm/xor_32.h | 42 ++++++---- > arch/x86/include/asm/xor_avx.h | 21 +++-- > include/asm-generic/xor.h | 84 +++++++++++++------- > include/linux/raid/xor.h | 21 +++-- > 18 files changed, 384 insertions(+), 217 deletions(-) All applied. Thanks. -- Email: Herbert Xu Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt