From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1314) id EA0A83858D37; Wed, 24 Jan 2024 18:22:20 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EA0A83858D37 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1706120540; bh=Ikic1ttjDfP4i1k4DiWMHnE/uOfHGfqXCDwlrlJFa1U=; h=From:To:Subject:Date:From; b=eLOyzMHwtwRft9CHDTbKUyQM4Biow5yHzu1EnR3P+0lJgx959hYOU4OsMgtbesiHR v9cK+stqr1MZk+8hWSJxY/RyPklLN7gDiFNDOdUfoplHSd2WwjSYgtVDmcWekuQ5SU J5rY19FpfjDucz7gPugT+Ij7A9TsViNYMszF6mPk= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Andrew Pinski To: gcc-cvs@gcc.gnu.org Subject: [gcc r14-8399] Fix vect_long_mult for aarch64 [PR109705] X-Act-Checkin: gcc X-Git-Author: Andrew Pinski X-Git-Refname: refs/heads/trunk X-Git-Oldrev: a9a8426e534760b8d3a250e9bd3cff4db131a2be X-Git-Newrev: e6fbc3cc786a74a098352868348e187877bfbc8b Message-Id: <20240124182220.EA0A83858D37@sourceware.org> Date: Wed, 24 Jan 2024 18:22:20 +0000 (GMT) List-Id: https://gcc.gnu.org/g:e6fbc3cc786a74a098352868348e187877bfbc8b commit r14-8399-ge6fbc3cc786a74a098352868348e187877bfbc8b Author: Andrew Pinski Date: Wed Jan 24 00:00:34 2024 -0800 Fix vect_long_mult for aarch64 [PR109705] On aarch64, vectorization of `long` multiply can be done if SVE is enabled or if long is 32bit (ILP32). It can also be done for constants too but there is no effective target test for that just yet. Build and tested on aarch64-linux-gnu with no regressions (also tested with SVE enabled). gcc/testsuite/ChangeLog: PR testsuite/109705 * lib/target-supports.exp (check_effective_target_vect_long_mult): Fix aarch64*-*-* checks. Signed-off-by: Andrew Pinski Diff: --- gcc/testsuite/lib/target-supports.exp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 73360cd3a0d..82520119026 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -9090,7 +9090,9 @@ proc check_effective_target_vect_long_mult { } { && [check_effective_target_has_arch_pwr10]) || [is-effective-target arm_neon] || ([istarget sparc*-*-*] && [check_effective_target_ilp32]) - || [istarget aarch64*-*-*] + || ([istarget aarch64*-*-*] + && ([check_effective_target_ilp32] + || check_effective_target_aarch64_sve])) || ([istarget mips*-*-*] && [et-is-effective-target mips_msa]) || ([istarget riscv*-*-*]