From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2044.outbound.protection.outlook.com [40.107.247.44]) by sourceware.org (Postfix) with ESMTPS id 10B663858D34 for ; Wed, 21 Feb 2024 14:34:54 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 10B663858D34 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 10B663858D34 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.247.44 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1708526106; cv=pass; b=GcgHm4I+MTlQImLIdSYG7RrLRnkZClK3OlrQT6hk+vALeOPO5VG8z+24mYurE+btDtFu82m+KmmRg5alJ3KoE8JSwFTegTvh2YeC4gkCSk5khqrhoLm1yk5FOVz/k/cEY9DlVlUHWptfrRsFhJgUiG5n7aIi0UX8gAuCH4AvqXs= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1708526106; c=relaxed/simple; bh=93w2M15WWczbDNgL18GIe5uODqVxQdBSyS1qetw0zqI=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=TxLM4DKnMcRCChH+0NZz38Ta0bIJyTOGDjpCBHW7GhSeAaJgEXXFVKj8Ca+p6e6zQ3QYqmkafnYrYdnQIuL+Ldp49ywZxd4XpiOLnJoTEVQSYsNPUlNwwC/FQ2IvWpUfYW8dEAC89yx37t30kLoowzRVJVpAOxBwoW70YGh8iy0= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=XbRvk8e7wXOofp8bfdZhpLlJqIZUATCldOifZ1koVr5S9vjUmUXPKUuXQySBpHXfOG76yOQYl4ePTKYiIE/QnRgsrKcUo2LbE2ODlczkWliz7/GAjknaBjcJVmY+7iy6vh1MvjVzLQz8XFiCPyuEZ+VFuKg3GqV4Dkz5XkV9xxpK4IGuk1rcEBtPuRd/hFfFu88j7GkOGLbLbgIt0rn6EFbtj64Kib5dlZpHK9ZrlgbkvhBVclU/UrzP3X8OlhqIxztSZ9X82bU6qJO/ZzshMMTlVzh1PWO1uml/vrAJFDXaRaXm/iHcpp2mbs6FxGpGIZlSjj8I5k4IdruLkJe3Wg== ARC-Message-Signature: i=2; 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=UNrpv/gbGP64THSeR3lhIO9d266QAsMMqKQDZOVWtsU=; b=e780a1eHYRZwpEXtD3GAgLqPfm8v2VppbRvai3Dmugoj/2A/ie/6iVX1bMiVglGJa4mJpuHS96g0s9+XZIMuJyc89iWlH5mOi0kMXbvsDOteEg2+62gNRF2ei0GEoYTJ88agf0NojHS8wQi6+dyBzaNO0iQJXRxBSkm6uT3UP1JGI6h+w3f819zHRWWnX3m6VN+xsqBtgccGPspCCYPoSOzdJ4tXeZYHvRb7BPOpGYN95vyZ6JO+hHTAuk4fSQzuwgTvILT2azHor7zzxiHTUgFIRgzNezthI0rWh2ntzPTOgjnaDA0N+KZ71G71RdgJ9cVjeooxsdm0DunwjjPyvQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UNrpv/gbGP64THSeR3lhIO9d266QAsMMqKQDZOVWtsU=; b=I0hDpyfK1/LL+lko8iJ/qxTy5mCPpvenhVSnmkxS+UMqN0rl8IHTthM6c1f3Df/Uz0hTW63Iluq/ayhnrXKDnS6FaJjAEUWG8SOxF3KoaJHg1OOPj/EktRdWZWGb6tC69a81Ck3rQVjWioxgzYuaITdsvpu2w5cvsB5ekB20TpU= Received: from AM6PR08CA0036.eurprd08.prod.outlook.com (2603:10a6:20b:c0::24) by DU0PR08MB8304.eurprd08.prod.outlook.com (2603:10a6:10:40c::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.39; Wed, 21 Feb 2024 14:34:50 +0000 Received: from AM2PEPF0001C709.eurprd05.prod.outlook.com (2603:10a6:20b:c0:cafe::4e) by AM6PR08CA0036.outlook.office365.com (2603:10a6:20b:c0::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.42 via Frontend Transport; Wed, 21 Feb 2024 14:34:50 +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 AM2PEPF0001C709.mail.protection.outlook.com (10.167.16.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.25 via Frontend Transport; Wed, 21 Feb 2024 14:34:50 +0000 Received: ("Tessian outbound c21fe6ca13cc:v228"); Wed, 21 Feb 2024 14:34:50 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 5edfce542082268f X-CR-MTA-TID: 64aa7808 Received: from 038b31ab9012.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 7C116C60-C353-43CF-8156-0B6719A1FF8E.1; Wed, 21 Feb 2024 14:34:44 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 038b31ab9012.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 21 Feb 2024 14:34:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZmswmYFDt2T3HThb5J7SLJEFzorC0BCrqstKzt3ACdKsdrDNrlOBr0UWCXlIMiIqS1OsFlmDHC7zzvk/RaCKq/xVvrSMEQlvH1pakgDecxtGZv2SDMA2jz6IotuATl3E4659qorr93h3dk3ZN/FO1mU2Wd9KQhPwXPXejULXacoOg9e7zw+lzf2l4KvR3RxE7EAehJyAYkOg0lgh+AYp9RWmDl6Xe+lnlpjujjpQKEA4yjoRDwRSBk/uXLGkPpx10Hzt7ZEIyomWUzWTv1kX2oGJVQQ0AImPeHBcrPVZLvE0smIC2zoW/zH5k1UZcviXP2kUnvzn+WFXbZ3AG+xpWg== 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=UNrpv/gbGP64THSeR3lhIO9d266QAsMMqKQDZOVWtsU=; b=GF3NtC7dckr5GCU+6r3Kz/EMbtAJt6hBf5LnHn+BgVtnVvORDyuQOgifw975RjB+iLd27jK976Y+Go1ruA5t95kVWJOMz9pQTl0vDksaugCCYXBkk2iB38fVJdvwh7iBtAqCms/BshHKpEY8iyOuyxj10wwpU54eOkIt3tvkM3Zgf+5UZmGgWoyC1CtQtowCPmaLDSHv0em3DMe1n5MtMSwmCJh3BuOdC5dH2UsD4sJqPENGCy04ZAFgS8XSuVN4xd6EXTDgQ/fDvhBjjzlUTFm5rcxcxwa7A9zDM7j2+9H1MIMGJ90R2x84OkZz1rJaLqsNIg/0MVJT73U2DZIdQA== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UNrpv/gbGP64THSeR3lhIO9d266QAsMMqKQDZOVWtsU=; b=I0hDpyfK1/LL+lko8iJ/qxTy5mCPpvenhVSnmkxS+UMqN0rl8IHTthM6c1f3Df/Uz0hTW63Iluq/ayhnrXKDnS6FaJjAEUWG8SOxF3KoaJHg1OOPj/EktRdWZWGb6tC69a81Ck3rQVjWioxgzYuaITdsvpu2w5cvsB5ekB20TpU= Received: from PAWPR08MB8982.eurprd08.prod.outlook.com (2603:10a6:102:33f::20) by DU0PR08MB7591.eurprd08.prod.outlook.com (2603:10a6:10:31d::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.38; Wed, 21 Feb 2024 14:34:42 +0000 Received: from PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::48c8:fba3:b3a9:cdec]) by PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::48c8:fba3:b3a9:cdec%6]) with mapi id 15.20.7292.036; Wed, 21 Feb 2024 14:34:42 +0000 From: Wilco Dijkstra To: Richard Earnshaw , Kyrylo Tkachov CC: GCC Patches Subject: [PATCH] ARM: Fix conditional execution [PR113915] Thread-Topic: [PATCH] ARM: Fix conditional execution [PR113915] Thread-Index: AQHaZNHTKZd/DmQU2kiR+j3lOYCpTw== Date: Wed, 21 Feb 2024 14:34:42 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAWPR08MB8982:EE_|DU0PR08MB7591:EE_|AM2PEPF0001C709:EE_|DU0PR08MB8304:EE_ X-MS-Office365-Filtering-Correlation-Id: ba738569-fbda-4c52-8940-08dc32ea42ed 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: nOAD+Ilkem6z5Lg8iuoZwfn0eqqIJzSmWL/eEX04+ev+Zk/FZLhtkPBa+prOnx1qMrkuoAJXasf0bWy//Cl3/H2ecSUogUlklD98dQgwZQtKqOOYG1qC8XXoq1ZqpsCn2Ee+G/2oxzarD6j0IyhnDF7+WUHCw6a4BVEFPyDfUHNEyhyujdiOLKt6xJ1ik/dL4WbkRHS7f9czqHJ3wWNY0s89u/YWYcj0n5xA+Tp0tR3M8AkFF1rJq5ridiSoKa/ewwXOKu7Qi96cvfXENj0WNlouTMs+WywMbtxZoZpcMiCjxSPCCBku3zNG7zMSsMuGvI5cMKDwbno2+on3DmDCuwTlH/a4CRDD/IXBoyf+YDZrYjDdr8qOx4oP5v5Uv98hiKHCTAoJK4uuT8rE1kdQ5LTnuqgz7ebvw57WTkqXOxOK5Yh7NIWCOTVCBpS167x4yCq0C+LQCxNvHSOv/xORyd3CK3fQBCeuTBCZTu4DyIuL4GEHY4wUvRoPz4c+r+ATnxnDY15plDYimQvRTpwohgbIHzqqlkXssob7wCrp0fJjod1H0zLzj4anxTk1c4mzfIGeI3KKyQuDvIqMpLBJn//gmYsz8Bx40/ex96SPQBw= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAWPR08MB8982.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(38070700009);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB7591 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: AM2PEPF0001C709.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 7484b4ff-2bc0-4cb1-70fb-08dc32ea3e06 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RxoAn47sQgfDrOSfqC62qSrZTZiWzyv+MSCsnTRxtlbUTQ4DDc4yQ+A5qRnpdp57F+l5rriaAJyrLZG1BsAtIdjCUmEgFNoNnrjgNZorBIzNUtSDPL8o51z1eGWgRY2WngljkWxV0nynXSBt1TH1jkB9G2Npp8PtITp1pNcF6t2zLloW7KO7PWj9B2IqUbMrhUthFm+OjoeqWspCC42/QSWT0UFI3jJDC2e3lcJeWFudaixjoaJLT705MUjZZ3BGSSSk1jzk1+07lferxWyCJYYZFZayMZzOVmNTQrQV+T5YOSwQGiY2xF+1vAPrRiOi7r1xiGkEGWkK677fUpk1ttHTHDFQhfQQxxQ2QpQK8XB9aRBPvNyslkUlVFIkjKQ6v71kjHh9o0o/J+QTitUvasK4gr6G7C01pRFjNwbllsWkgm+FrytUSnFAHUQKv8xxgAwljKBjGQRrIRsNoPfWSXvgMGmq2HRvJ9fF4M4pn0EzL7yrucOdVeo0nN3WZGfzSyHQ8WcQi74kuT4colUcBxcb+VsQpDSi4LbVPu1pP3XPaV47lsym8yiCdhmSFJuQHrfjbav3/Bp8v7kH8TszH8He4oKk/nMcrS4a6yaZHVMM/W4UdOMkGb6I37IYQx7MlMenKFHCP+yeyRfy+MTGbw== 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:(13230031)(36860700004)(40470700004)(46966006);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Feb 2024 14:34:50.5898 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ba738569-fbda-4c52-8940-08dc32ea42ed 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: AM2PEPF0001C709.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8304 X-Spam-Status: No, score=-10.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,KAM_LOTSOFHASH,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE,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 List-Id: =0A= By default most patterns can be conditionalized on Arm targets. However=0A= Thumb-2 predication requires the "predicable" attribute be explicitly=0A= set to "yes". Most patterns are shared between Arm and Thumb(-2) and are= =0A= marked with "predicable". Given this sharing, it does not make sense to=0A= use a different default for Arm. So only consider conditional execution=0A= of instructions that have the predicable attribute set to yes. This ensure= s=0A= that patterns not explicitly marked as such are never accidentally =0A= conditionally executed like in the PR.=0A= =0A= GLIBC codesize was ~0.014% worse due to atomic operations now being=0A= unconditional and a small number of patterns not setting "predicable".=0A= =0A= Passes regress and bootstrap, OK for commit?=0A= =0A= gcc/ChangeLog:=0A= PR target/113915=0A= * config/arm/arm.md (NOCOND): Improve comment.=0A= * config/arm/arm.cc (arm_final_prescan_insn): Add check for=0A= PREDICABLE_YES.=0A= =0A= gcc/testsuite/ChangeLog:=0A= PR target/113915=0A= * gcc.target/arm/builtin-bswap-1.c: Fix test.=0A= =0A= ---=0A= =0A= diff --git a/gcc/config/arm/arm.cc b/gcc/config/arm/arm.cc=0A= index c44047c377a802d0c1dc1406df1b88a6b079607b..29771d284831a995adcf9adbb52= 5396fbabb1ea2 100644=0A= --- a/gcc/config/arm/arm.cc=0A= +++ b/gcc/config/arm/arm.cc=0A= @@ -25610,11 +25610,12 @@ arm_final_prescan_insn (rtx_insn *insn)=0A= break;=0A= =0A= case INSN:=0A= - /* Instructions using or affecting the condition codes make it=0A= - fail. */=0A= + /* Check the instruction is explicitly marked as predicable.=0A= + Instructions using or affecting the condition codes are not. */=0A= scanbody =3D PATTERN (this_insn);=0A= if (!(GET_CODE (scanbody) =3D=3D SET=0A= || GET_CODE (scanbody) =3D=3D PARALLEL)=0A= + || get_attr_predicable (this_insn) !=3D PREDICABLE_YES=0A= || get_attr_conds (this_insn) !=3D CONDS_NOCOND)=0A= fail =3D TRUE;=0A= break;=0A= diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md=0A= index 5816409f86f1106b410c5e21d77e599b485f85f2..671f093862259c2c0df93a986fc= 22fa56a8ea6c7 100644=0A= --- a/gcc/config/arm/arm.md=0A= +++ b/gcc/config/arm/arm.md=0A= @@ -307,6 +307,8 @@=0A= ;=0A= ; NOCOND means that the instruction does not use or alter the condition=0A= ; codes but can be converted into a conditionally exectuted instruction.= =0A= +; Given that NOCOND is the default for most instructions if omitted,=0A= +; the attribute predicable must be set to yes as well.=0A= =0A= (define_attr "conds" "use,set,clob,unconditional,nocond"=0A= (if_then_else=0A= diff --git a/gcc/testsuite/gcc.target/arm/builtin-bswap-1.c b/gcc/testsuite= /gcc.target/arm/builtin-bswap-1.c=0A= index c1e7740d14d3ca4e93a71e38b12f82c19791a204..3de7cea81c1128c2fe5a9e1216e= 6b027d26bcab9 100644=0A= --- a/gcc/testsuite/gcc.target/arm/builtin-bswap-1.c=0A= +++ b/gcc/testsuite/gcc.target/arm/builtin-bswap-1.c=0A= @@ -5,14 +5,8 @@=0A= of the instructions. Add an -mtune option known to facilitate that. *= /=0A= /* { dg-additional-options "-O2 -mtune=3Dcortex-a53" } */=0A= /* { dg-final { scan-assembler-not "orr\[ \t\]" } } */=0A= -/* { dg-final { scan-assembler-times "revsh\\t" 1 { target { arm_nothumb }= } } } */=0A= -/* { dg-final { scan-assembler-times "revshne\\t" 1 { target { arm_nothumb= } } } } */=0A= -/* { dg-final { scan-assembler-times "revsh\\t" 2 { target { ! arm_nothumb= } } } } */=0A= -/* { dg-final { scan-assembler-times "rev16\\t" 1 { target { arm_nothumb }= } } } */=0A= -/* { dg-final { scan-assembler-times "rev16ne\\t" 1 { target { arm_nothumb= } } } } */=0A= -/* { dg-final { scan-assembler-times "rev16\\t" 2 { target { ! arm_nothumb= } } } } */=0A= -/* { dg-final { scan-assembler-times "rev\\t" 2 { target { arm_nothumb } }= } } */=0A= -/* { dg-final { scan-assembler-times "revne\\t" 2 { target { arm_nothumb }= } } } */=0A= -/* { dg-final { scan-assembler-times "rev\\t" 4 { target { ! arm_nothumb }= } } } */=0A= +/* { dg-final { scan-assembler-times "revsh\\t" 2 } } */=0A= +/* { dg-final { scan-assembler-times "rev16\\t" 2 } } */=0A= +/* { dg-final { scan-assembler-times "rev\\t" 4 } } */=0A= =0A= #include "builtin-bswap.x"=0A= =0A=