From patchwork Fri Feb 23 11:28:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 205324 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:a81b:b0:108:e6aa:91d0 with SMTP id bq27csp519271dyb; Fri, 23 Feb 2024 03:28:25 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCXhqisDet51k/2LbWAU3fOi51cVi9Z1HRylHZ0uE8gJrHvE6gqyBWEv8xHrJ2Ljp68WHk1WZfliNSeS2qNvhW7NTjSYVg== X-Google-Smtp-Source: AGHT+IGvT6LgAQON7wLIwekp18NPAndw4KZk58NL8VlqTiq7QSIKXqJjj5BAN5gIf2vMGFrWauN5 X-Received: by 2002:a0c:e108:0:b0:68f:d6a9:7065 with SMTP id w8-20020a0ce108000000b0068fd6a97065mr1065787qvk.44.1708687705310; Fri, 23 Feb 2024 03:28:25 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1708687705; cv=pass; d=google.com; s=arc-20160816; b=qcKUj7eMLPg5lAsfYdysdSBRnuOaRSSmwcO26tB30Tu3TO7DlMdimXAOPKQmXH/qwT RLTho71YcamVZrOI9drvnUfARQZd/nMgSGIjCaPcgWRvDU5tFSpwhmApZHAB6shuRVbb htHfP/iaCjaYkHHJz5x0NqWb2AelT1FYWMO1BRssaZ0ta+XJt2ON7sOLv60QuQqmtsGQ eMmwEBI8U7f3HiYxxmYr3d3CMlRNq8FV//egCdCgeUnc1DVpwuneXbltf0Yi1ZWk9mQl 2LR2jj8QgWd5qPkhxD3H35QVS6j4/eoe2O+LBuQOjGNGUFNgvr0BnFDoK/7JwWvifTZW r3/w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :in-reply-to:autocrypt:content-language:references:cc:to:from :subject:user-agent:mime-version:date:message-id:dkim-signature :arc-filter:dmarc-filter:delivered-to; bh=9qWVrkwR42RrUquJ8uGW0LD3UispxApm9l51m19fZXc=; fh=9g4K3zZDolve3lgFi83ZiNQygY4B2AoCRghqiKI8ad0=; b=tYI6RiJJRH141ZCT6PBQBii5Cxt1JZHauuzk5y0UXY9ETsLsYAM6qGiMZElKIFuuxw WHjC2JO4xfoVx4wE4Xx7AvIEEPWWLCIjsu2Q9pegbfUvMdXcG0LNHiSZYMbIxp7Z1Os6 awciiG78zx4oI6jGvr7i500GJaHf9IseW4Ggp0jhgD49xj8AmtiYE94CcGHDI9SvlYwL lv/XeOUBjIyycgPKfr+XYShbVDDBXREvfXc83J7bZWmHgUiRZkdCDWCZW80lKHA4zqEC kGwRyqYKCjpvCRtia76FAdBRFNojgFdnP0/vCnpmbB+uyyf92BkzIoLg03RIUa7It0K4 y1Fg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@suse.com header.s=google header.b=R39hbCTc; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id iv14-20020ad45cee000000b0068fa24e579csi5630104qvb.555.2024.02.23.03.28.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 Feb 2024 03:28:25 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.com header.s=google header.b=R39hbCTc; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=suse.com Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id E87CD3858018 for ; Fri, 23 Feb 2024 11:28:24 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [IPv6:2a00:1450:4864:20::62c]) by sourceware.org (Postfix) with ESMTPS id 441123858022 for ; Fri, 23 Feb 2024 11:28:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 441123858022 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 441123858022 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::62c ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1708687696; cv=none; b=XufaAyec+W7zy++1ITfGXDywNCvsak1JgkSfIQkmJyl91P/XmsgMRhuJ04PYD3CRbEKdjLVzqoxMP1v3GNfJrLY+8/esL8pwskw6jKCjG1752Q6K5/zASIjT9CDUd/57M1K8EM2RAd0zHGqHUxkrzfz7Qn5tQ2DcFUWfbdTdRRw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1708687696; c=relaxed/simple; bh=E4PJzgdbSJk12jkDnVlvUciAPx6q5y/It4PwtfqjzIs=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=wp4EAHlDVQoiYbL+jVuqUahCCyM7XcKxbh8OVPVYQkaUlJxvcsrZ6jhDBHnCnMHkTP569qCp2cRdC8sab1pvN4IXPNODEs+b8o1PLEeAJovGncANdtAztp0/3kKh6wYfB7RK4029SF4H+wI8w9veW14frX4dPh7L21VVT0ewxPM= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-ej1-x62c.google.com with SMTP id a640c23a62f3a-a3d5e77cfbeso135434166b.0 for ; Fri, 23 Feb 2024 03:28:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1708687691; x=1709292491; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=9qWVrkwR42RrUquJ8uGW0LD3UispxApm9l51m19fZXc=; b=R39hbCTcd2VwYGLq9lDOrzEofIfubizZoxelxqCIv0JGFHRSV3KrMasa44sxexm0e+ imL2jV5pa3Vj03QxW3CrDH/u3NfWsWysiC8aRBVK65v3A5Da7937ysqVjmCRLKM9wKBn 1btGlOJ2EESpso3kystruM+z2dbQdFv3oBMReXVoLaq51wT3k0L5lUs1+li/AEkRXWVp C5sk4G2nr5tR/uVMsk02n/EwYXEdRIcyggskRc0kbS4M6N2bYj9rkXyR/a+aNlWr00Vc kJuSF1KV/5VDiKqvrVnyavtiYiJ9Buhqbm3uMwpNol3Qf9PXS7i3MdHf6K7DSlArxEpA VFgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708687691; x=1709292491; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=9qWVrkwR42RrUquJ8uGW0LD3UispxApm9l51m19fZXc=; b=qoKaI+2hpVki4xDoURLMB/tZT0lU8VQywfGSAIC9/oVYngJxb74dM+BaGw2gjHgN// SvD1JgdKmkg5c2aCymjOLMx4U674dGvItthsXjPKekHyRInshh8GWy3/mh6sivqIkiI0 s0mR5NnLZB6/heE3pX7ZRHrupBaE+BYWgehgRY3fTIvUMjap018JJa8WJ0ORLW/1YduE 40Ih3F35UVLo68Iho0znLOwiO3nopzJQyDIGXBJIBntQ2kQDMeeN7UeG9cO3eb2fwBJa 61ldU3zugpJRcTRGtfsdtYPQJzvIUvoVvTyMEbvuKhZKVijFQiefd0M6RHo8uqvIxlB5 0eTw== X-Gm-Message-State: AOJu0YzmHqHzaBG8msEE6UrgcWetdMYPBRuPvdl9SGtcVaoX4phzefwH ArKhMCp6GLXiTxHgzsO0tYelN5aaTda2KsbSUkyVwAeX91bwo/kTIMDEpD+4BzMYIwsSYLxKV9s = X-Received: by 2002:a17:907:76ac:b0:a3c:2f68:54a9 with SMTP id jw12-20020a17090776ac00b00a3c2f6854a9mr1365100ejc.3.1708687690990; Fri, 23 Feb 2024 03:28:10 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id lu16-20020a170906fad000b00a3d5efc65e0sm5486296ejb.91.2024.02.23.03.28.10 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 23 Feb 2024 03:28:10 -0800 (PST) Message-ID: <2b3f3784-481d-4b8c-861f-7c9ac062683b@suse.com> Date: Fri, 23 Feb 2024 12:28:09 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 1/6] Arm64: correct B16B16 indexed bf{mla,mls,mul} From: Jan Beulich To: Binutils Cc: Richard Earnshaw , Marcus Shawcroft References: <2dbdd49f-2302-4dbc-98ba-0bdaf3c4cad2@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <2dbdd49f-2302-4dbc-98ba-0bdaf3c4cad2@suse.com> X-Spam-Status: No, score=-3025.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, 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: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1791688919105769606 X-GMAIL-MSGID: 1791688919105769606 Their index is in bits 19, 20, and 22. Bit 11 in particular is already set in the base opcode. Note also how disassembler output didn't match assembler input in the respective testcase. --- a/gas/testsuite/gas/aarch64/bfloat16-1.d +++ b/gas/testsuite/gas/aarch64/bfloat16-1.d @@ -56,24 +56,24 @@ .*: 65221084 bfmla z4.h, p4\/m, z4.h, z2.h .*: 65211908 bfmla z8.h, p6\/m, z8.h, z1.h .*: 65201e10 bfmla z16.h, p7\/m, z16.h, z0.h -.*: 643e0a00 bfmla z0.h, z16.h, z6.h\[7\] -.*: 643d0901 bfmla z1.h, z8.h, z5.h\[7\] -.*: 643409c2 bfmla z2.h, z14.h, z4.h\[5\] -.*: 642a0aa4 bfmla z4.h, z21.h, z2.h\[3\] -.*: 64210988 bfmla z8.h, z12.h, z1.h\[1\] -.*: 64200950 bfmla z16.h, z10.h, z0.h\[1\] +.*: 647e0a00 bfmla z0.h, z16.h, z6.h\[7\] +.*: 64750901 bfmla z1.h, z8.h, z5.h\[6\] +.*: 646409c2 bfmla z2.h, z14.h, z4.h\[4\] +.*: 64320aa4 bfmla z4.h, z21.h, z2.h\[2\] +.*: 64290988 bfmla z8.h, z12.h, z1.h\[1\] +.*: 64200950 bfmla z16.h, z10.h, z0.h\[0\] .*: 65302000 bfmls z0.h, p0\/m, z0.h, z16.h .*: 65282421 bfmls z1.h, p1\/m, z1.h, z8.h .*: 65242842 bfmls z2.h, p2\/m, z2.h, z4.h .*: 65223084 bfmls z4.h, p4\/m, z4.h, z2.h .*: 65213908 bfmls z8.h, p6\/m, z8.h, z1.h .*: 65203e10 bfmls z16.h, p7\/m, z16.h, z0.h -.*: 643e0e00 bfmls z0.h, z16.h, z6.h\[7\] -.*: 643d0d01 bfmls z1.h, z8.h, z5.h\[7\] -.*: 64340dc2 bfmls z2.h, z14.h, z4.h\[5\] -.*: 642a0ea4 bfmls z4.h, z21.h, z2.h\[3\] -.*: 64210d88 bfmls z8.h, z12.h, z1.h\[1\] -.*: 64200d50 bfmls z16.h, z10.h, z0.h\[1\] +.*: 647e0e00 bfmls z0.h, z16.h, z6.h\[7\] +.*: 64750d01 bfmls z1.h, z8.h, z5.h\[6\] +.*: 64640dc2 bfmls z2.h, z14.h, z4.h\[4\] +.*: 64320ea4 bfmls z4.h, z21.h, z2.h\[2\] +.*: 64290d88 bfmls z8.h, z12.h, z1.h\[1\] +.*: 64200d50 bfmls z16.h, z10.h, z0.h\[0\] .*: 65028200 bfmul z0.h, p0\/m, z0.h, z16.h .*: 65028501 bfmul z1.h, p1\/m, z1.h, z8.h .*: 65028882 bfmul z2.h, p2\/m, z2.h, z4.h @@ -86,12 +86,12 @@ .*: 65020a04 bfmul z4.h, z16.h, z2.h .*: 65010a88 bfmul z8.h, z20.h, z1.h .*: 65000b10 bfmul z16.h, z24.h, z0.h -.*: 643e2a00 bfmul z0.h, z16.h, z6.h\[7\] -.*: 643d2901 bfmul z1.h, z8.h, z5.h\[7\] -.*: 643429c2 bfmul z2.h, z14.h, z4.h\[5\] -.*: 642a2aa4 bfmul z4.h, z21.h, z2.h\[3\] -.*: 64212988 bfmul z8.h, z12.h, z1.h\[1\] -.*: 64202950 bfmul z16.h, z10.h, z0.h\[1\] +.*: 647e2a00 bfmul z0.h, z16.h, z6.h\[7\] +.*: 64752901 bfmul z1.h, z8.h, z5.h\[6\] +.*: 646429c2 bfmul z2.h, z14.h, z4.h\[4\] +.*: 64322aa4 bfmul z4.h, z21.h, z2.h\[2\] +.*: 64292988 bfmul z8.h, z12.h, z1.h\[1\] +.*: 64202950 bfmul z16.h, z10.h, z0.h\[0\] .*: 65018200 bfsub z0.h, p0\/m, z0.h, z16.h .*: 65018501 bfsub z1.h, p1\/m, z1.h, z8.h .*: 65018882 bfsub z2.h, p2\/m, z2.h, z4.h --- a/opcodes/aarch64-tbl.h +++ b/opcodes/aarch64-tbl.h @@ -6344,9 +6344,9 @@ const struct aarch64_opcode aarch64_opco B16B16_INSN("bfmul", 0x65000800, 0xffe0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm_16), OP_SVE_HHH, 0, 0), B16B16_INSNC("bfsub", 0x65018000, 0xffffe000, sve_misc, 0, OP4 (SVE_Zd, SVE_Pg3, SVE_Zd, SVE_Zm_5), OP_SVE_SMSS, 0, C_SCAN_MOVPRFX, 0), B16B16_INSN("bfsub", 0x65000400, 0xffe0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm_16), OP_SVE_HHH, 0, 0), - B16B16_INSN("bfmla", 0x64200800, 0xffa0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm3_11_INDEX), OP_SVE_VVV_H, 0, 0), - B16B16_INSN("bfmls", 0x64200c00, 0xffa0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm3_11_INDEX), OP_SVE_VVV_H, 0, 0), - B16B16_INSN("bfmul", 0x64202800, 0xffa0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm3_11_INDEX), OP_SVE_VVV_H, 0, 0), + B16B16_INSN("bfmla", 0x64200800, 0xffa0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm3_22_INDEX), OP_SVE_VVV_H, 0, 0), + B16B16_INSN("bfmls", 0x64200c00, 0xffa0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm3_22_INDEX), OP_SVE_VVV_H, 0, 0), + B16B16_INSN("bfmul", 0x64202800, 0xffa0fc00, sve_misc, 0, OP3 (SVE_Zd, SVE_Zn, SVE_Zm3_22_INDEX), OP_SVE_VVV_H, 0, 0), /* SME2.1 movaz instructions. */ SME2p1_INSN ("movaz", 0xc0060600, 0xffff1f83, sme2_movaz, 0, OP2 (SME_Zdnx4, SME_ZA_array_vrsb_2), OP_SVE_BB, 0, 0),