From patchwork Mon Jan 16 15:14:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Stamatis Markianos-Wright X-Patchwork-Id: 44218 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp1244292wrn; Mon, 16 Jan 2023 07:15:35 -0800 (PST) X-Google-Smtp-Source: AMrXdXvksZf6P+yzuBYhrnUt1PSrxLQYx2zDmyZo6iZLmcpT2KIZJD8SLMV815Tdu1gJE3nnR0MG X-Received: by 2002:a05:6402:4441:b0:47f:6531:dee9 with SMTP id o1-20020a056402444100b0047f6531dee9mr75421074edb.20.1673882134957; Mon, 16 Jan 2023 07:15:34 -0800 (PST) Received: from sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id d25-20020a05640208d900b0046187ab5c1bsi17200273edz.512.2023.01.16.07.15.34 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Jan 2023 07:15:34 -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=@sourceware.org header.s=default header.b=uV8Q0V1C; arc=fail (signature failed); 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=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id AA8293858C66 for ; Mon, 16 Jan 2023 15:15:31 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org AA8293858C66 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1673882131; bh=cqu8ElgIUQDZfMbO095A4lwLMqb4vNfAXqVx20vfsxo=; h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=uV8Q0V1CDqF/yO9OIdaVz/xAVoJS7/o0qM2RYIH0uc2rXDyXGRZK59YGlrFiYqiLW +BLBsJ261/wgmQioNssHoIGhWDm2Fb+SSIOCd9sownBw8ekGxgEG4TK/27zISI8ANT JOJrGOjEdWZcE+RrDGZSu131P+Frj9XS7OYlJwH4= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2087.outbound.protection.outlook.com [40.107.20.87]) by sourceware.org (Postfix) with ESMTPS id F234A3858D32 for ; Mon, 16 Jan 2023 15:15:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F234A3858D32 Received: from DUZPR01CA0021.eurprd01.prod.exchangelabs.com (2603:10a6:10:46b::15) by DU0PR08MB9252.eurprd08.prod.outlook.com (2603:10a6:10:41b::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.23; Mon, 16 Jan 2023 15:15:17 +0000 Received: from DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:46b:cafe::65) by DUZPR01CA0021.outlook.office365.com (2603:10a6:10:46b::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.19 via Frontend Transport; Mon, 16 Jan 2023 15:15:17 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT055.mail.protection.outlook.com (100.127.142.171) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.13 via Frontend Transport; Mon, 16 Jan 2023 15:15:17 +0000 Received: ("Tessian outbound b1d3ffe56e73:v132"); Mon, 16 Jan 2023 15:15:17 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 250c5f12bde9cff3 X-CR-MTA-TID: 64aa7808 Received: from 444d3799e5b4.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id EBCCAAC4-CE95-4074-93C4-CB29F63F0D6C.1; Mon, 16 Jan 2023 15:15:09 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 444d3799e5b4.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 16 Jan 2023 15:15:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ihKUAKxTew2l7SDPIXFWDGtq6Z68F6BrOeGHJQmY8d/5HdqeTdTE8dq5ZGDxUiJsmxS4dppigxxQrTLHGGI2fBIYjR5K4s8c10dYEOUZYDPyRJlri+8nN7jBJRUEy8xC9hV1eHefFND8wi6G2OM83y02wE2f7XYccqMO9sWs160amL/ZSLejwkaEheraIO47Lql9f8NkNbjHAj7VnD3f9St1JHznKfEi3j05G/s1cg4lWa1+EuNNGaNEcCqqbOVW9hqEAH7UsOj6sgjZuJ9itzvlpiLZ1O6o4w/DDlu2/L1CHe/3ClHSeQ3Nxjz6HEQ9dt6a6MYK1UTwInSToYW/xA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cqu8ElgIUQDZfMbO095A4lwLMqb4vNfAXqVx20vfsxo=; b=gnqGT3iWKkxyzJauSXWs8kJJx6X96E9g7ZYnAdBRcYI3PZfZ5paQiH+010ft8wRgbYL8Y0/3rQjcSJVNL/qC1vONp3SAcPZBqeNU1C6Mf8ucIN+W0dciPhV+aZomsWPx2oOEr8pMGmEJRIUym3O3zKcrmcPLy66yaemeEwrcvEd/lDsHhDs4ycHbwnKqypF8G/WtDN0RXnSzkExNMLPS7uUUHyYCEAx0tIg7MgsXLRADzvQ/Cy4EJO4Qh11QGU7mPpzzEIs9hGVOu4hkObq1XrDZlXa5P+N9uNpZPxUNw4UTn8TqbbuwX72LerFdLcoAPJX9bVc+86qWsl4uF6Nx4w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DB9PR08MB6507.eurprd08.prod.outlook.com (2603:10a6:10:25a::6) by DU0PR08MB7921.eurprd08.prod.outlook.com (2603:10a6:10:3c8::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.13; Mon, 16 Jan 2023 15:15:07 +0000 Received: from DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::514:a882:342f:558f]) by DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::514:a882:342f:558f%5]) with mapi id 15.20.5986.023; Mon, 16 Jan 2023 15:15:06 +0000 Message-ID: <1ff07fee-24f1-7aeb-8fb6-44457af557c4@arm.com> Date: Mon, 16 Jan 2023 15:14:42 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 Subject: [PING][PATCH 1/2] gas: arm: Fix a further IT-predicated vcvt issue in the presense of MVE vcvtn To: binutils@sourceware.org References: <67cc7870-f49c-08ed-afb3-e83f4378095a@arm.com> Content-Language: en-US In-Reply-To: <67cc7870-f49c-08ed-afb3-e83f4378095a@arm.com> X-ClientProxiedBy: VI1PR09CA0157.eurprd09.prod.outlook.com (2603:10a6:800:120::11) To DB9PR08MB6507.eurprd08.prod.outlook.com (2603:10a6:10:25a::6) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DB9PR08MB6507:EE_|DU0PR08MB7921:EE_|DBAEUR03FT055:EE_|DU0PR08MB9252:EE_ X-MS-Office365-Filtering-Correlation-Id: c46d9495-3711-4824-9043-08daf7d479b8 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: +1jDac7exg8PYJy7CuyPicRQ/EZ98H0SDmRf7157WoQXkh0R4ZTO+0heTIdwI8C1sZinbz6kfSg560NdFRH3/Yf2PamKolsIkcWPWBdBSYRc4gqU/050tW7FtfFlJE8xiBY4ROlOpcp/iQiN8FbYVZNY7wc0sKI4jTP75IQ9FcNMn6nTjCBPxph0VETWY1cjHOWk1mlFbs7rC0Il950DuG+Au7lg9Sku3y6F2q+44eSRJFxGgjdHhM17qCsemZCPPPSRG1BvV/NNBff40wjDvhS2Q/Y0k3jIPJA1ebAez2SU40FjeF1KZsKuwXTP4Bxo2khuF8lSpGv2w9a7j31UfNJ06KDsCHMo/SKQPpZY8W88HNa9rx/nl/ngLvo5nZGBVmZEq8CniiSEE+Ey+aOELZ/RSrmrPjrcaDMXHKyYzAo3Ec+tkjV0LXsjaTyvdOHqzZKTa/bSkNx6MrAf8WHYhfmhhGurpVDPMAwpDF9Y2CbL3w/na/TDRWsRHQ3DyIslKEVCkIp+uMXEMMQmwr+UIS9BlgSOaQwE73HaVPBVdeD/iL21DFsbUzUqbrfSfrMJ+mCm5Co+wNjHdV2Kr4S3lUspWzhPM0/Oa+JwRwbyyiq81R3+Q+dp572aQHbgJgbFLbHqmmKnPWKZJLsm3u6C+DpNJRH+T7db4TFhoQSxCUz9ZwngBaKztbX5ZdB8CWicxdWU2RQkMOUvNS84aoi9TVmkuAhlubOr0OtODFF9tjVc++Kk2BoJkW3lWeHDjOScRCKnOokkQ20qxvpRkHQdN+tfeHkQHh8G/vQe4rJ0XWTONeira1TajyfBfiScJK7W X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB9PR08MB6507.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(136003)(39860400002)(366004)(376002)(346002)(396003)(451199015)(478600001)(6666004)(8936002)(31686004)(66476007)(6916009)(41300700001)(66899015)(66946007)(66556008)(8676002)(2906002)(316002)(2616005)(38100700002)(26005)(5660300002)(235185007)(186003)(36756003)(31696002)(6486002)(86362001)(6512007)(33964004)(6506007)(966005)(83380400001)(17423001)(43740500002)(45980500001)(357404004); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7921 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 51f659dd-89a1-4954-b8ba-08daf7d4732c X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: aucGO870/0s7wM5yPjdsHedrKKJoYiwtMZBhJWhHjvHxRDilJQXBi6zrsqiy8RdHuDVK0INzxWTIj71QrfmUX/R48Qnc2yLqGuTx5lOHqG0Vn7uGICNukRlyLOonkroZnLRljnO9tUYGVSzHYfPjuMD5k0lLJ67XdbivNZYyfiCB13f7VYSWrBRKRaId1l6+KKPkpGRUpRRVPraqsocxZCnvTGMiphxiLHALLbWb1GcAOrP8fdAV0+KWAQO706TTyDgJ8KC4O9KmN/PUapcCtfZ1IPXNY4nzVMp0K5bCdkbYWobCysq3yZW+3QlCKuypBD3SRMTzKWOB1njRxlmdsG5Cif0Z2fFZCXnN5n0wI/GyxFAzhC66nCtSsWz5y/b6TCREVPbVL4XUnVFyFbrv3PcyIk3qzexbhvHuIXhztyinjPlcqg2xFQWlAHYzZNdsJfZRJqVvK5Xc2ltqpYT4+uvCEBHQ6Cmj9FgtBBbJDIxAHKt7IDUMOt9kM/lpe8kDWb+ItDvnw8XiMOxI4Xiz6NAvDoR15QyKv9POUbrWVMaHWL7Usj9l/VYDXMFt+MoacmYevyw1lpo9pvwNUQ/WEDMa7FrklWevFFyPtiDs4c/ltLCOj4n3L3rRuoMhmvKfWEETsjIPCOy12mb/wtjanFo3QIimjDdQ9pEQn/ri/8mJfjex2tw2FwA/Ldqs4SGWUQgRF81e5MV5qa9008TA53Vs65Yu1k3kFCz34VUBmPMXp9UHCG5vnjd8Qr/5tkUxI2Mdd/MDFNgCV3d2HrovMpgLh3uigaPOZjiAr1RhBIhO9CDTj9ed6U15vGFKKoOB X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230022)(4636009)(136003)(39860400002)(396003)(346002)(376002)(451199015)(40470700004)(46966006)(36840700001)(82740400003)(36860700001)(81166007)(83380400001)(86362001)(356005)(235185007)(70586007)(31696002)(2906002)(5660300002)(8936002)(6916009)(70206006)(8676002)(41300700001)(82310400005)(40480700001)(186003)(6506007)(33964004)(26005)(2616005)(6512007)(336012)(47076005)(6666004)(316002)(966005)(40460700003)(478600001)(6486002)(31686004)(66899015)(36756003)(17423001)(43740500002)(357404004); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2023 15:15:17.3456 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c46d9495-3711-4824-9043-08daf7d479b8 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT055.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB9252 X-Spam-Status: No, score=-12.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, GIT_PATCH_0, KAM_DMARC_NONE, KAM_LOTSOFHASH, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY 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.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Stamatis Markianos-Wright via Binutils From: Stamatis Markianos-Wright Reply-To: Stamatis Markianos-Wright Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750749490325985762?= X-GMAIL-MSGID: =?utf-8?q?1755192633164965247?= Hi all, Previously we had experienced issues with assembling a "VCVTNE" instruction in the presence of the MVE architecture extension, because it could be interpreted both as: * The base instruction VCVT + NE for IT predication when inside an IT block. * The MVE instruction VCVTN + E in the Else of a VPT block. Given a C reproducer of: ``` int test_function(float value) {   int ret_val = 10;   if (value != 0.0)   {     ret_val = (int) value;   }   return ret_val; } ``` GCC generates a VCVTNE instruction based on the `truncsisf2_vfp` pattern, which will look like: `vcvtne.s32.f32 s-reg, s-reg` This still triggers an error due to being misidentified as "vcvtn+e" Similar errors were found with other type combinations and instruction patterns (these have all been added to the testing of this patch). This class of errors was previously worked around by: https://sourceware.org/pipermail/binutils/2020-August/112728.html which addressed this by looking at the operand types, however, that isn't adequate to cover all the extra cases that have been found.  Instead, we add some special-casing logic earlier when the instructions are parsed that is conditional on whether we are in a VPT block or not, when the instruction is parsed. Note that in the follo-up 2/2 patch I have done a find n replace to change the misleading error message mentioning ARMv8.2. gas/ChangeLog:     * config/tc-arm.c (opcode_lookup): Add special vcvtn handling.     * testsuite/gas/arm/mve-vcvtne-it-bad.l: Add further testing.     * testsuite/gas/arm/mve-vcvtne-it-bad.s: Likewise.     * testsuite/gas/arm/mve-vcvtne-it.d: Likewise.     * testsuite/gas/arm/mve-vcvtne-it.s: Likewise. Inline copy of patch: diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 2e6d175482efe4bc58a2e277bd2cc4c48f9e1863..25506241f29cdb0db169bb7801604ea4e356989c 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -19143,16 +19143,6 @@ do_neon_cvt_1 (enum neon_cvt_mode mode) return; } - if ((rs == NS_FD || rs == NS_QQI) && mode == neon_cvt_mode_n - && ARM_CPU_HAS_FEATURE (cpu_variant, mve_ext)) - { - /* We are dealing with vcvt with the 'ne' condition. */ - inst.cond = 0x1; - inst.instruction = N_MNEM_vcvt; - do_neon_cvt_1 (neon_cvt_mode_z); - return; - } - /* VFP rather than Neon conversions. */ if (flavour >= neon_cvt_flavour_first_fp) { @@ -22748,6 +22738,23 @@ opcode_lookup (char **str) cond = (const struct asm_cond *) str_hash_find_n (arm_vcond_hsh, affix, 1); opcode = (const struct asm_opcode *) str_hash_find_n (arm_ops_hsh, base, affix - base); + + /* A known edge case is a conflict between an 'e' as a suffix for an + Else of a VPT predication block and an 'ne' suffix for an IT block. + If we detect that edge case here and we are not in a VPT VECTOR_PRED + block, reset opcode and cond, so that the 'ne' case can be detected + in the next section for 2-character conditional suffixes. + An example where this is a problem is between the MVE 'vcvtn' and the + non-MVE 'vcvt' instructions. */ + if (cond && opcode + && cond->template_name[0] == 'e' + && opcode->template_name[affix - base - 1] == 'n' + && now_pred.type != VECTOR_PRED) + { + opcode = NULL; + cond = NULL; + } + /* If this opcode can not be vector predicated then don't accept it with a vector predication code. */ if (opcode && !opcode->mayBeVecPred) diff --git a/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l b/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l index 8765ae0d6912e322ecabfb215f5401327fa97cbe..ca57a38537c62926f43119c1e9abd9dbaf549a1b 100644 --- a/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l +++ b/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l @@ -1,2 +1,17 @@ [^:]*: Assembler messages: [^:]*:3: Error: thumb conditional instruction should be in IT block -- `vcvtne.s32.f64 s13,d8' +[^:]*:4: Error: thumb conditional instruction should be in IT block -- `vcvtne.u32.f64 s13,d8' +[^:]*:5: Error: thumb conditional instruction should be in IT block -- `vcvtne.s32.f32 s13,s8' +[^:]*:6: Error: thumb conditional instruction should be in IT block -- `vcvtne.u32.f32 s13,s8' +[^:]*:7: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:7: Error: thumb conditional instruction should be in IT block -- `vcvtne.s32.f16 s13,s8' +[^:]*:8: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:8: Error: thumb conditional instruction should be in IT block -- `vcvtne.u32.f16 s13,s8' +[^:]*:9: Error: thumb conditional instruction should be in IT block -- `vcvtne.f64.s32 d13,s8' +[^:]*:10: Error: thumb conditional instruction should be in IT block -- `vcvtne.f64.u32 d13,s8' +[^:]*:11: Error: thumb conditional instruction should be in IT block -- `vcvtne.f32.s32 s13,s8' +[^:]*:12: Error: thumb conditional instruction should be in IT block -- `vcvtne.f32.u32 s13,s8' +[^:]*:13: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:13: Error: thumb conditional instruction should be in IT block -- `vcvtne.f16.s32 s13,s8' +[^:]*:14: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:14: Error: thumb conditional instruction should be in IT block -- `vcvtne.f16.u32 s13,s8' diff --git a/gas/testsuite/gas/arm/mve-vcvtne-it-bad.s b/gas/testsuite/gas/arm/mve-vcvtne-it-bad.s index e4c1b99906536c3c6cc8334e98d84cd170c19d76..b7d83f6fe0dfd4140b6cc11cf748d43787e932ba 100644 --- a/gas/testsuite/gas/arm/mve-vcvtne-it-bad.s +++ b/gas/testsuite/gas/arm/mve-vcvtne-it-bad.s @@ -1,3 +1,14 @@ .syntax unified .text vcvtne.s32.f64 s13, d8 +vcvtne.u32.f64 s13, d8 +vcvtne.s32.f32 s13, s8 +vcvtne.u32.f32 s13, s8 +vcvtne.s32.f16 s13, s8 +vcvtne.u32.f16 s13, s8 +vcvtne.f64.s32 d13, s8 +vcvtne.f64.u32 d13, s8 +vcvtne.f32.s32 s13, s8 +vcvtne.f32.u32 s13, s8 +vcvtne.f16.s32 s13, s8 +vcvtne.f16.u32 s13, s8 diff --git a/gas/testsuite/gas/arm/mve-vcvtne-it.d b/gas/testsuite/gas/arm/mve-vcvtne-it.d index 2bc069a77e5a46d83dd42d658b2d79a53e9da593..27e45753c6497fec85ee194e9ebae4a3fdbeee0f 100644 --- a/gas/testsuite/gas/arm/mve-vcvtne-it.d +++ b/gas/testsuite/gas/arm/mve-vcvtne-it.d @@ -1,10 +1,31 @@ # name: Armv8.1-M Mainline vcvt instruction in it block (with MVE) # as: -march=armv8.1-m.main+mve.fp+fp.dp +#warning: [^:]*: Assembler messages: +#warning: [^:]*:10: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:11: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:19: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:20: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE # objdump: -dr --prefix-addresses --show-raw-insn -marmv8.1-m.main .*: +file format .*arm.* Disassembly of section .text: -^[^>]*> bf18[ ]+it[ ]+ne +^[^>]*> bf1c[ ]+itt[ ]+ne ^[^>]*> eefd 6bc8[ ]+vcvtne.s32.f64[ ]+s13, d8 +^[^>]*> eefc 6bc8[ ]+vcvtne.u32.f64[ ]+s13, d8 +^[^>]*> bf1c[ ]+itt[ ]+ne +^[^>]*> eefd 6ac4[ ]+vcvtne.s32.f32[ ]+s13, s8 +^[^>]*> eefc 6ac4[ ]+vcvtne.u32.f32[ ]+s13, s8 +^[^>]*> bf1c[ ]+itt[ ]+ne +^[^>]*> eefd 69c4[ ]+vcvtne.s32.f16[ ]+s13, s8.* +^[^>]*> eefc 69c4[ ]+vcvtne.u32.f16[ ]+s13, s8.* +^[^>]*> bf1c[ ]+itt[ ]+ne +^[^>]*> eeb8 dbc4[ ]+vcvtne.f64.s32[ ]+d13, s8 +^[^>]*> eeb8 db44[ ]+vcvtne.f64.u32[ ]+d13, s8 +^[^>]*> bf1c[ ]+itt[ ]+ne +^[^>]*> eef8 6ac4[ ]+vcvtne.f32.s32[ ]+s13, s8 +^[^>]*> eef8 6a44[ ]+vcvtne.f32.u32[ ]+s13, s8 +^[^>]*> bf1c[ ]+itt[ ]+ne +^[^>]*> eef8 69c4[ ]+vcvtne.f16.s32[ ]+s13, s8.* +^[^>]*> eef8 6944[ ]+vcvtne.f16.u32[ ]+s13, s8.* #pass diff --git a/gas/testsuite/gas/arm/mve-vcvtne-it.s b/gas/testsuite/gas/arm/mve-vcvtne-it.s index a9f260681283c3c68bace0abaa6754a4cab9c62f..e8be576c2960fc6c2cf3582604c436561099d046 100644 --- a/gas/testsuite/gas/arm/mve-vcvtne-it.s +++ b/gas/testsuite/gas/arm/mve-vcvtne-it.s @@ -1,4 +1,20 @@ .syntax unified .text -it ne +itt ne vcvtne.s32.f64 s13, d8 +vcvtne.u32.f64 s13, d8 +itt ne +vcvtne.s32.f32 s13, s8 +vcvtne.u32.f32 s13, s8 +itt ne +vcvtne.s32.f16 s13, s8 +vcvtne.u32.f16 s13, s8 +itt ne +vcvtne.f64.s32 d13, s8 +vcvtne.f64.u32 d13, s8 +itt ne +vcvtne.f32.s32 s13, s8 +vcvtne.f32.u32 s13, s8 +itt ne +vcvtne.f16.s32 s13, s8 +vcvtne.f16.u32 s13, s8 From patchwork Mon Jan 16 15:14:55 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Stamatis Markianos-Wright X-Patchwork-Id: 44219 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp1244879wrn; Mon, 16 Jan 2023 07:16:38 -0800 (PST) X-Google-Smtp-Source: AMrXdXtMnTesMz6bf7bWi8v5FVmV07IQsFzR+7gSwzPhCcSc9/0Q3P78jECe9qSO0NehmEgWUXND X-Received: by 2002:a05:6402:22ad:b0:488:6003:24b6 with SMTP id cx13-20020a05640222ad00b00488600324b6mr48549273edb.40.1673882198707; Mon, 16 Jan 2023 07:16:38 -0800 (PST) Received: from sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id m12-20020a056402510c00b0049dfd28dc0fsi8255434edd.347.2023.01.16.07.16.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Jan 2023 07:16:38 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b=NB6xDG9m; arc=fail (signature failed); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 1E7883858CDB for ; Mon, 16 Jan 2023 15:16:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1E7883858CDB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1673882197; bh=eJJX7p2koFlyV9hsg6V8OMMMMcgOhSZEcuksS6bRYMA=; h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=NB6xDG9mFGjTMADGJyVjl+t0rUTf4B1cyVq/w89NXs5OzfKw+1CeSa4k/bC2PYSi+ 80rZt/o0599/eZgDsfB/Bk5Byd1qV4pM7PLrjMpCMb8o7mT2eWCEkgM3HCmb7X8Z2s 5kTeseyjpjwPROhNMQpiHHGhvTFXxKRqL2mJ3Kos= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on2055.outbound.protection.outlook.com [40.107.6.55]) by sourceware.org (Postfix) with ESMTPS id 77707385841D for ; Mon, 16 Jan 2023 15:15:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 77707385841D Received: from FR3P281CA0157.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a2::13) by VI1PR08MB5519.eurprd08.prod.outlook.com (2603:10a6:803:133::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.23; Mon, 16 Jan 2023 15:15:35 +0000 Received: from VI1EUR03FT009.eop-EUR03.prod.protection.outlook.com (2603:10a6:d10:a2:cafe::a0) by FR3P281CA0157.outlook.office365.com (2603:10a6:d10:a2::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6023.12 via Frontend Transport; Mon, 16 Jan 2023 15:15:34 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VI1EUR03FT009.mail.protection.outlook.com (100.127.144.72) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.13 via Frontend Transport; Mon, 16 Jan 2023 15:15:34 +0000 Received: ("Tessian outbound 3ad958cd7492:v132"); Mon, 16 Jan 2023 15:15:34 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: d90c3ab9622f379b X-CR-MTA-TID: 64aa7808 Received: from e57c2c3525d6.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id B9057811-9FBB-4A7B-9E73-B64E3FFABDDF.1; Mon, 16 Jan 2023 15:15:26 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e57c2c3525d6.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 16 Jan 2023 15:15:26 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=khry6di5RJ0s5pu8hKVOxAWLA3EtYZTPvonzs493h3wnKphyJTDmvxpeKTql+RJLjEipQOumsZT1xi2nGcU97xosPmvqVBC4dFuwaa/0TA+5Xor2YO3R+gsUxjmaa5S8uw4MHJ4rIZ9MuKZaSkizCv5pz/FJ9HsKO76+95TF8Arf8eJwpiSRrQXl9bM9edj5N+NJV54JhOW8HUgGWnyrdiXgLerchUW0hccOJtH0vb5Inyzw/DnCOUr5w+QtATA+NurLa5zlVowe8pFjsnq36dfdCdNGtMafR492Hy33e8Ua4AKPeX1r6y6mLLbxHXtYjPijBWZa9mCy2jfBWh4MrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=eJJX7p2koFlyV9hsg6V8OMMMMcgOhSZEcuksS6bRYMA=; b=aWgNjVAbx+3Cl3b7dNINYjSWGYdKUTPESTkTCcPoPH+aBQpDNnRbylf1h3HYVQYUJpiIVXA0dLlMrHEqeNO5r/2otWz6/slDWL9M0CwttJU3uukbgSpuSSplv2bPRMnFjBoZRd3zM3/v/h5mmVilEP/0JtGVGZNtCUCtmVu1cfY45NzN93QBIkV0wdncH/BAtGIOQ3jKeO1Si+/J5f72pBtW4p5aO92uW08V4Y6qXJJaxtUa1528J6P80/X+QROWmBCf5i4qCgIZM625akKq+2DRxUs2VPlP6MTVkwDR23PUup69yd66kdH+nXMpX1ijNDh7lNyIvRULXu5g5yhr5g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DB9PR08MB6507.eurprd08.prod.outlook.com (2603:10a6:10:25a::6) by DU0PR08MB7921.eurprd08.prod.outlook.com (2603:10a6:10:3c8::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.13; Mon, 16 Jan 2023 15:15:17 +0000 Received: from DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::514:a882:342f:558f]) by DB9PR08MB6507.eurprd08.prod.outlook.com ([fe80::514:a882:342f:558f%5]) with mapi id 15.20.5986.023; Mon, 16 Jan 2023 15:15:17 +0000 Message-ID: <0b4d01ad-38b9-428e-39af-3ff452f94ef2@arm.com> Date: Mon, 16 Jan 2023 15:14:55 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 Subject: [PING][PATCH 2/2] gas: arm: Change warning message to not reference specific A-class architecture revision To: binutils@sourceware.org References: Content-Language: en-US In-Reply-To: X-ClientProxiedBy: VI1PR09CA0176.eurprd09.prod.outlook.com (2603:10a6:800:120::30) To DB9PR08MB6507.eurprd08.prod.outlook.com (2603:10a6:10:25a::6) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DB9PR08MB6507:EE_|DU0PR08MB7921:EE_|VI1EUR03FT009:EE_|VI1PR08MB5519:EE_ X-MS-Office365-Filtering-Correlation-Id: 210d4857-d9b4-4c93-24c9-08daf7d48422 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: rEazTC2TcrMGCHHsDuyRjCQd6GxcO+Zr8eEkI8jQflckQjKgB8/jB5XJnAV3n8oSCTuwdy8TflVFqpCLsKlACnniayrNR2kIy1MtqWnBkfiT11ym/w9LwKDRvCs0nb9cc1Z1+n6/A5GDLtgjSQOfQb9DTG0S3UnrtSvZqH5zsZ1nnhYNtAnHmeRyHT170gtDZIt1i1ieTLgjxpMJRCcI1h1E/XACxtOF/VoILzOrpGSGzUA+Gab0pGuAih9eAWBF5uKp/Cr3B3/MFhgoirRSUhUs68wx18Ukw85VNsqpAGj7V91YpYEtq5FrM7F3OOX+LrmdxoJAhDAqGVGf0ly3hFJp/tSmuRMQBDDptlJyIQLnnrKPvQVSCxwjXFlKZ3E9Z3/GCOZlLU9aFMsJRKqQV56mSD6qIW0m5CZIOXXa9KGGQI/UrTwHKPjZoF5ruaMx6ZUGTQs/w/aV5o5PkeZVJJrfP3H7IslPksv6V2j3HyCsJ6xMaZOuQolY9gTavDm88AbwyPTj6arQfkEAajEjmBcstYSkyhpTF3kdmjI9eG/oGdIQANDFce1PtQHmit0nxxGX1Z+wJDOAtwY3D2TAFv9belmMuwPQXN37TwSr71Z6deJdmza8Aa63MHsqe5KmlDAdjAOnh5FsqAN69RuvcIVheWwtPdQ+C4OJuhF/JTOQ6iYjdcbSqJ43WsJUKYdaIa80ryqyhVqTUjvSxgMzS7/1FUE4f9LT9xrEhwPz4Ew= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB9PR08MB6507.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(136003)(39860400002)(366004)(376002)(346002)(396003)(451199015)(478600001)(6666004)(8936002)(31686004)(66476007)(6916009)(41300700001)(66946007)(66556008)(8676002)(15650500001)(2906002)(316002)(2616005)(38100700002)(26005)(30864003)(5660300002)(235185007)(186003)(36756003)(31696002)(6486002)(86362001)(6512007)(33964004)(6506007)(83380400001)(43740500002)(45980500001)(579004)(559001); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7921 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VI1EUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 21568f8d-99c4-418b-0a16-08daf7d47963 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: HjvSZOEFIU6YJgoSlvHpAQyyqwzqFWeFgdPLBmdwOVDpm4EFhXgD+jKFuMs0tlcMRsZsMXXoPBzMiCeYNz5Tyvm0YbF8/jNspfjmWaVRkzwveKPvpjxiTHkBlC1+awBKkZSNwXfNQXdeUC9yA+gOptgUrBqzrxmNizyBxEKyijO+3oxiaKh924lCiHYW6hCaL9mSKdzv/rCNEkx1gjp1y2bQI/KWoOwBWUb+juwD9sEWQDMGPaHnzJuXaxdxb9q4gYSafVAYrRBneUPqxjD9PvGuHyJk0P1Ar6+RwRuabc6I7hXPJ/Hxltwt1/JhdLjZVFHp9wa18mgd8i9F1gzgGnVVjyR1ChRHOvgNHhF4zeadR8+0T83uovmAfcVq348cRqgUdV2/D7LloOm1j0zeBB+FOjZeM6u/4Dhj4y+YbPERRfzFMTRq+73AweLRE+xmR5mIjClluVmlIOmiyJxpiEWBl09reo2bdRE9CeOSFQWQp5hmZfm8yUcS8adYHin4zQZJH3RFkfEmb1OdsjlbNCsKej82Rs2zqsIrsGLRV95mO8JEKbjP4gUvNikVM7jbs7sCRzQgMqmJTAVLKKrqo864zohse24i/AnB1tbo+OAzRSNmBxkMn+XxpX3Dfel4syMrN1E0Ip+PvJcnZfKi0gZ8DxJsaknlB8+68uMYcfKZM9ddCfESBf9NBFVOOHoGS6oVcYUAT0Vk7Du6RBBOWNS96o7mgtixOOJe0s/6CTE9ejUTQGjb1UfVDnqXeNr9 X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230022)(4636009)(376002)(136003)(346002)(396003)(39850400004)(451199015)(36840700001)(46966006)(40470700004)(31686004)(36756003)(86362001)(356005)(15650500001)(8936002)(70206006)(70586007)(8676002)(31696002)(30864003)(2906002)(235185007)(6916009)(81166007)(82740400003)(83380400001)(36860700001)(5660300002)(40460700003)(316002)(6666004)(6486002)(41300700001)(40480700001)(82310400005)(478600001)(2616005)(47076005)(6512007)(33964004)(26005)(336012)(6506007)(186003)(43740500002)(579004)(559001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2023 15:15:34.6897 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 210d4857-d9b4-4c93-24c9-08daf7d48422 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: VI1EUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5519 X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00, BODY_8BITS, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, GIT_PATCH_0, KAM_DMARC_NONE, KAM_LOTSOFHASH, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY 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.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Stamatis Markianos-Wright via Binutils From: Stamatis Markianos-Wright Reply-To: Stamatis Markianos-Wright Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750749516158380616?= X-GMAIL-MSGID: =?utf-8?q?1755192700430422340?= Hi all, We noticed that a warning message about the use of scalar fp16 instructions being UNPREDICTABLE when conditionalized in an IT block referenced the specific A-class architecture revision ARMv8.2-A. Many of these instructions are now also part of ARMv8.1-M, so the warning message had become misleading.  Here we just change the message to not specify an architecture revision at all and update all testing accordingly.  This was done with a simple find-n-replace within the binutils sources.  No tests have regressed for the arm target. gas/ChangeLog:         * config/tc-arm.c (do_scalar_fp16_v82_encode): Remove         ARMv8.2-A from the warning message.         (do_neon_movhf): Likewise         * testsuite/gas/arm/armv8-2-fp16-scalar-bad.l: Likewise         * testsuite/gas/arm/mve-vaddsub-it-bad.l: Likewise         * testsuite/gas/arm/mve-vcvtne-it-bad.l: Likewise         * testsuite/gas/arm/mve-vcvtne-it.d: Likewise Inline copy of patch: conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:19: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:20: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE # objdump: -dr --prefix-addresses --show-raw-insn -marmv8.1-m.main .*: +file format .*arm.* diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 25506241f29cdb0db169bb7801604ea4e356989c..d7d9c6e99bddb8df4d6220a1d12ff7ff712da4a4 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -8316,7 +8316,7 @@ static void do_scalar_fp16_v82_encode (void) { if (inst.cond < COND_ALWAYS) - as_warn (_("ARMv8.2 scalar fp16 instruction cannot be conditional," + as_warn (_("scalar fp16 instruction cannot be conditional," " the behaviour is UNPREDICTABLE")); constraint (!ARM_CPU_HAS_FEATURE (cpu_variant, arm_ext_fp16), _(BAD_FP16)); @@ -20551,7 +20551,7 @@ do_neon_movhf (void) { if (thumb_mode) { - as_warn (_("ARMv8.2 scalar fp16 instruction cannot be conditional," + as_warn (_("scalar fp16 instruction cannot be conditional," " the behaviour is UNPREDICTABLE")); } else diff --git a/gas/testsuite/gas/arm/armv8-2-fp16-scalar-bad.l b/gas/testsuite/gas/arm/armv8-2-fp16-scalar-bad.l index 9e614e76e9e1d774eac6471e55c155f2e973808f..0f8e4877c23e4aaeb9951889a9359953ce75a951 100644 --- a/gas/testsuite/gas/arm/armv8-2-fp16-scalar-bad.l +++ b/gas/testsuite/gas/arm/armv8-2-fp16-scalar-bad.l @@ -3,204 +3,204 @@ .*:93: Error: immediate value out of range, expected range \[1, 32\] -- `vcvt.u32.f16 s11,s11,#0' .*:94: Error: immediate value out of range -- `vcvt.f16.s32 s12,s12,#34' .*:95: Error: immediate value out of range -- `vcvt.f16.u32 s12,s12,#-1' -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:98: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:99: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:100: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:101: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:102: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:103: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:104: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -.*:105: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:98: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:99: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:100: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:101: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:102: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:103: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:104: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:105: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:106: Error: instruction cannot be conditional.* .*:106: Error: instruction cannot be conditional.* .*:106: Error: instruction cannot be conditional.* @@ -213,29 +213,29 @@ .*:106: Error: instruction cannot be conditional.* .*:106: Error: instruction cannot be conditional.* .*:106: Error: instruction cannot be conditional.* -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R -.*:110: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +.*:110: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE .*:110: IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R .*:87: Error: co-processor offset out of range .*:88: Error: co-processor offset out of range diff --git a/gas/testsuite/gas/arm/mve-vaddsub-it-bad.l b/gas/testsuite/gas/arm/mve-vaddsub-it-bad.l index 5f41bceaf405c90fa7a323f63c6d4ae35fc7d14b..13f464694fdb49d57e4c896db4193217e0b010a6 100644 --- a/gas/testsuite/gas/arm/mve-vaddsub-it-bad.l +++ b/gas/testsuite/gas/arm/mve-vaddsub-it-bad.l @@ -1,7 +1,7 @@ [^:]*: Assembler messages: -[^:]*:4: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -[^:]*:5: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -[^:]*:7: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -[^:]*:8: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:4: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:5: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:7: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:8: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE [^:]*:10: Error: selected FPU does not support instruction -- `vaddl.s8 q0,d1,d2' [^:]*:11: Error: selected FPU does not support instruction -- `vsubl.s8 q0,d1,d2' diff --git a/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l b/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l index ca57a38537c62926f43119c1e9abd9dbaf549a1b..6f66e53240f98a7cac4dde3488ac4ccbec5eb74c 100644 --- a/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l +++ b/gas/testsuite/gas/arm/mve-vcvtne-it-bad.l @@ -3,15 +3,15 @@ [^:]*:4: Error: thumb conditional instruction should be in IT block -- `vcvtne.u32.f64 s13,d8' [^:]*:5: Error: thumb conditional instruction should be in IT block -- `vcvtne.s32.f32 s13,s8' [^:]*:6: Error: thumb conditional instruction should be in IT block -- `vcvtne.u32.f32 s13,s8' -[^:]*:7: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:7: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE [^:]*:7: Error: thumb conditional instruction should be in IT block -- `vcvtne.s32.f16 s13,s8' -[^:]*:8: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:8: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE [^:]*:8: Error: thumb conditional instruction should be in IT block -- `vcvtne.u32.f16 s13,s8' [^:]*:9: Error: thumb conditional instruction should be in IT block -- `vcvtne.f64.s32 d13,s8' [^:]*:10: Error: thumb conditional instruction should be in IT block -- `vcvtne.f64.u32 d13,s8' [^:]*:11: Error: thumb conditional instruction should be in IT block -- `vcvtne.f32.s32 s13,s8' [^:]*:12: Error: thumb conditional instruction should be in IT block -- `vcvtne.f32.u32 s13,s8' -[^:]*:13: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:13: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE [^:]*:13: Error: thumb conditional instruction should be in IT block -- `vcvtne.f16.s32 s13,s8' -[^:]*:14: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +[^:]*:14: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE [^:]*:14: Error: thumb conditional instruction should be in IT block -- `vcvtne.f16.u32 s13,s8' diff --git a/gas/testsuite/gas/arm/mve-vcvtne-it.d b/gas/testsuite/gas/arm/mve-vcvtne-it.d index 27e45753c6497fec85ee194e9ebae4a3fdbeee0f..87c3c592aedab567257246410f120b310b2014e5 100644 --- a/gas/testsuite/gas/arm/mve-vcvtne-it.d +++ b/gas/testsuite/gas/arm/mve-vcvtne-it.d @@ -1,10 +1,10 @@ # name: Armv8.1-M Mainline vcvt instruction in it block (with MVE) # as: -march=armv8.1-m.main+mve.fp+fp.dp #warning: [^:]*: Assembler messages: -#warning: [^:]*:10: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -#warning: [^:]*:11: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -#warning: [^:]*:19: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE -#warning: [^:]*:20: Warning: ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:10: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:11: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:19: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE +#warning: [^:]*:20: Warning: scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE # objdump: -dr --prefix-addresses --show-raw-insn -marmv8.1-m.main .*: +file format .*arm.*