From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on2078.outbound.protection.outlook.com [40.107.13.78]) by sourceware.org (Postfix) with ESMTPS id ABDA53858D20 for ; Fri, 20 Jan 2023 18:03:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org ABDA53858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=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=V8GbdVysSv8KbCVd9F687S8Lj9Hg0oaxusFjZ9+Jhxo=; b=d+ALudMOghU3ccdUpBHbE3El+3DPOdJZJviJazlKFZw/mAmWQmWaux5AtUAa3tgsObzfi2xL/SQeB6VWfT98y9iOCD7UQjKsDjZDtNuoDCJLalBlK6P5YhQZTBvZ2oQKts/9Sp0PdzGr70NrIWbmtBBYoxuaMWy0diVoerdBy7Y= Received: from DB3PR08CA0030.eurprd08.prod.outlook.com (2603:10a6:8::43) by GV1PR08MB7897.eurprd08.prod.outlook.com (2603:10a6:150:5c::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.25; Fri, 20 Jan 2023 18:03:24 +0000 Received: from DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com (2603:10a6:8:0:cafe::cf) by DB3PR08CA0030.outlook.office365.com (2603:10a6:8::43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.27 via Frontend Transport; Fri, 20 Jan 2023 18:03:23 +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 DBAEUR03FT054.mail.protection.outlook.com (100.127.142.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6023.16 via Frontend Transport; Fri, 20 Jan 2023 18:03:23 +0000 Received: ("Tessian outbound 0d7b2ab0f13d:v132"); Fri, 20 Jan 2023 18:03:23 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 8ec2236beba52344 X-CR-MTA-TID: 64aa7808 Received: from 2df7a7e8c764.3 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 6B7F6989-C51E-461A-8308-F4FCD587DA26.1; Fri, 20 Jan 2023 18:03:17 +0000 Received: from EUR01-VE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 2df7a7e8c764.3 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 20 Jan 2023 18:03:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eI50Q829KJWFgEYDmEwWI8Yzmocsk1G9BFH8dAoXvl0BvvadEKcLhgrP+MC3tk52JRrAe6RrOOv0z9fXOD3Hkz5hNJ8xrvG+3uCz/b9pxR7wNfhtJEI/u3+JA48FSg32bKrew/F2L6H38yVl5Vh3CWBWag2oTDUq01sl0EyB+5gT8R75it8Sp1gXABI7DPhtpsQ5GE/F+pmAdCbGJGBmw2eFnU0uAb4JW6AIsKkMdwCuJO/Lnvwx5JZwGv1opSYjWiRfyFhCut19ASUP6H07KbC1pf+VK4eyP6TF/MIw5DzbdlFnp07up0S565F6IckZCl3EysS2ooeEgNRAq0uokw== 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=V8GbdVysSv8KbCVd9F687S8Lj9Hg0oaxusFjZ9+Jhxo=; b=DytPThuXSMcuvPdpHvOCFtbBMSiojR08PR/enJ8Yvlw3OA7QzJKOoRs7IU41UXP37HqniJNSgWaKYG3w5uz27+DNPVYxaMcDTcnq7jjqVPnx5pp0FSEglnUxQPHOt5ymsc4ODuK/3AqH+HSD4FesgJJmaSSQreSoEevHKk5Da+f14rTDhXJH7rs7gdoaI+8VjnNnE5fycCTyFo/8i4FyZ5JzHULx/LO4XxPaHiFEBtlaQ3uHgl04DZHcVjAulOSKF+shWjaHRHBQZiPATiCE8rWQoH6Dc2erUCZQ8zbn2zubaqDASo4XPwhwSvWYIbYbzB+M2vTObkdpD2qUjivfqQ== 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=V8GbdVysSv8KbCVd9F687S8Lj9Hg0oaxusFjZ9+Jhxo=; b=d+ALudMOghU3ccdUpBHbE3El+3DPOdJZJviJazlKFZw/mAmWQmWaux5AtUAa3tgsObzfi2xL/SQeB6VWfT98y9iOCD7UQjKsDjZDtNuoDCJLalBlK6P5YhQZTBvZ2oQKts/9Sp0PdzGr70NrIWbmtBBYoxuaMWy0diVoerdBy7Y= Received: from PAXPR08MB6926.eurprd08.prod.outlook.com (2603:10a6:102:138::24) by VI1PR08MB5517.eurprd08.prod.outlook.com (2603:10a6:803:139::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.27; Fri, 20 Jan 2023 18:03:14 +0000 Received: from PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::a7d2:445d:606d:7046]) by PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::a7d2:445d:606d:7046%2]) with mapi id 15.20.6002.024; Fri, 20 Jan 2023 18:03:14 +0000 From: Kyrylo Tkachov To: Andrea Corallo , "gcc-patches@gcc.gnu.org" CC: Richard Earnshaw , Andrea Corallo Subject: RE: [PATCH 11/23] arm: improve tests for vqdmladhq* Thread-Topic: [PATCH 11/23] arm: improve tests for vqdmladhq* Thread-Index: AQHZLO34ex/h7oYAR0Gq7Cx+eudTIq6nmQhw Date: Fri, 20 Jan 2023 18:03:13 +0000 Message-ID: References: <20230120163948.752531-1-andrea.corallo@arm.com> <20230120163948.752531-12-andrea.corallo@arm.com> In-Reply-To: <20230120163948.752531-12-andrea.corallo@arm.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAXPR08MB6926:EE_|VI1PR08MB5517:EE_|DBAEUR03FT054:EE_|GV1PR08MB7897:EE_ X-MS-Office365-Filtering-Correlation-Id: 50f8bbe9-cbcc-4bca-35fd-08dafb109f57 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: KBcDvxANYDXJnJFLD3eVFOECmDXUNt89Dx64U56BNZ1YM2pBPSeqJ9KNJFQ8EsmAq7D/rUcQyHBye8FZ3NdP+qgw+f3LiMmhr6GUepKvoeHX4ew87K8pUx7yvlXPv0n+zXDexmVzzSgWYC6RLwSRXURKkDSwlJufbyLqquG7RO0iP0TR1sMTpXP4WVVaRERRE/mUbXQLuC6zZ3+lo5xQ73CtXg253T369pEGV2CI+UFYROV0InYhG0h+fiHRyq3iYUmA7CUC/QAytprAmpeJxGgRHOcXAhg4+UO6uvLl3RiiF1DpwPhk93X8QQb3X2OqXOy1R5GQpqAFs6IpAEMClCUhVoY7CgMoJHEnWm2TgxEDpFfsRro9UH4yWY3YNpUHbQSzCFz5DE0e9p56R5JhyXVY2dNZR0mKjsMyRCCPYG3gPxwZYuK9MuSd9zvFTTMZzd85B7gIQNTM34DKt+ToepAWXwCHw19+qD6YokH6p4S4+CmRH16G3m58mxF6x2jISPrbU1gy1Hy/k/bpEagRpAw+R2VsMSBn7nFJcojX1S7KPu5qCUF9icpCwesU+QjBHvjyc699L3GS5Xc0YS9XZpE/UIJPzLLwNdpu/LdbVUX7pGR0X7Escy9L5w1aklk6JytZ2aAxu9NVmrS2QLdANSkRBC3cuLwonOSu5lPHbdPaVkRXE8ml+/vt+n6adzWpix7aiD4aR/vbodHTnwQe2iE0ABi6Qfcq+9Bbs7Wv5Px0TSVija/A8Uj7edejHA3WRqWtLXm3fm9aXXeGMfrBAA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR08MB6926.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(396003)(136003)(376002)(39860400002)(366004)(346002)(451199015)(38070700005)(316002)(86362001)(8676002)(33656002)(54906003)(110136005)(83380400001)(122000001)(6506007)(71200400001)(7696005)(9686003)(8936002)(26005)(53546011)(186003)(38100700002)(478600001)(5660300002)(2906002)(55016003)(66556008)(4326008)(66476007)(66446008)(64756008)(66946007)(76116006)(41300700001)(52536014)(84970400001);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB5517 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: DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e6028252-a00f-48bb-26b0-08dafb10996f X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: tUqtXXwtwc4wxpfTb8L7vofdjMHUJ2uNLeDSQgENdvo1ObePIHah+YudlUCrGyKv/NZhFkQJu2ILAXlpQDr6FNXzYzz8x5KN7waFrygfUvEDlOoUE8DMZAIyL93NsXGiZ1AXEtghow6SGfnLTM4e5Qjc17p0UsFk56EW+Pzfti1qozDnkQ5xJY23290g9fDoTF+hibUbE8cBKhuWBIdiq1Oyg8LU0NHpiUQonJ0rnt+H2SOOh9zrKqzLpCFoftW26w+BaoSyRvHtOa+NHIf+WZJagLha9U5Y/wnH7p0WubwbYbHIcATxh6H3WQLofdY3W5UxMi+1j2LGPEd6qe6+sHd8G4BgueFUZ6heI/B20etQKpBeR0jwh1tjX6ouiM7FcMv30bvzGSB9oAvKyqLRbcw+rzgh8QHy5rpDvoQbZ1OjHKg7UbsP/nYtiNZRj8kpGDMd8/3t/Qt2yjnOlRZRMnedR+U+s6T5V0cA+7359rdT4TnvZsj1B19kt1ybwqlTC8Blp8nj3m/tnoG20ibyJ0yg/mHNsQNumvXi/3jOev3aPLsOMnuClPHx2uIZAHOLYbmb23bEO9NYPI5t8C2qDtkLBMIFvFKa5y4pwXkb2rkO5VC3qbIivzV+y6AIgW1776ANVeecPWS54r37fK8xITOkIxUzyoCrEGRC9WizphkG+e6At8vWo22KFchB+TCZ/pboDMPGKes0860Gq+tKROG7zmIRNe62FuxppG92jTLLk/iu7IsSQ+rAHnCZw7S9NhOljE57j6x1og/YmWzAow== 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)(396003)(376002)(39860400002)(346002)(451199015)(36840700001)(40470700004)(46966006)(84970400001)(81166007)(2906002)(36860700001)(82740400003)(40460700003)(47076005)(40480700001)(33656002)(55016003)(70586007)(356005)(316002)(82310400005)(7696005)(110136005)(8676002)(86362001)(54906003)(41300700001)(5660300002)(6506007)(83380400001)(4326008)(336012)(53546011)(70206006)(8936002)(52536014)(186003)(9686003)(478600001)(26005);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jan 2023 18:03:23.7687 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 50f8bbe9-cbcc-4bca-35fd-08dafb109f57 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: DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7897 X-Spam-Status: No, score=-11.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,KAM_SHORT,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 List-Id: > -----Original Message----- > From: Andrea Corallo > Sent: Friday, January 20, 2023 4:40 PM > To: gcc-patches@gcc.gnu.org > Cc: Kyrylo Tkachov ; Richard Earnshaw > ; Andrea Corallo > Subject: [PATCH 11/23] arm: improve tests for vqdmladhq* >=20 > gcc/testsuite/ChangeLog: >=20 > * gcc.target/arm/mve/intrinsics/vqdmladhq_m_s16.c: Improve test. > * gcc.target/arm/mve/intrinsics/vqdmladhq_m_s32.c: Likewise. > * gcc.target/arm/mve/intrinsics/vqdmladhq_m_s8.c: Likewise. > * gcc.target/arm/mve/intrinsics/vqdmladhq_s16.c: Likewise. > * gcc.target/arm/mve/intrinsics/vqdmladhq_s32.c: Likewise. > * gcc.target/arm/mve/intrinsics/vqdmladhq_s8.c: Likewise. Ok. Thanks, Kyrill > --- > .../arm/mve/intrinsics/vqdmladhq_m_s16.c | 34 ++++++++++++++++--- > .../arm/mve/intrinsics/vqdmladhq_m_s32.c | 34 ++++++++++++++++--- > .../arm/mve/intrinsics/vqdmladhq_m_s8.c | 34 ++++++++++++++++--- > .../arm/mve/intrinsics/vqdmladhq_s16.c | 24 +++++++++++-- > .../arm/mve/intrinsics/vqdmladhq_s32.c | 24 +++++++++++-- > .../arm/mve/intrinsics/vqdmladhq_s8.c | 24 +++++++++++-- > 6 files changed, 156 insertions(+), 18 deletions(-) >=20 > diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s16.= c > b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s16.c > index 51cdadc9ece..aa9c78c883b 100644 > --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s16.c > +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s16.c > @@ -1,23 +1,49 @@ > /* { dg-require-effective-target arm_v8_1m_mve_ok } */ > /* { dg-add-options arm_v8_1m_mve } */ > /* { dg-additional-options "-O2" } */ > +/* { dg-final { check-function-bodies "**" "" } } */ >=20 > #include "arm_mve.h" >=20 > +#ifdef __cplusplus > +extern "C" { > +#endif > + > +/* > +**foo: > +** ... > +** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|) > +** ... > +** vpst(?: @.*|) > +** ... > +** vqdmladht.s16 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int16x8_t > foo (int16x8_t inactive, int16x8_t a, int16x8_t b, mve_pred16_t p) > { > return vqdmladhq_m_s16 (inactive, a, b, p); > } >=20 > -/* { dg-final { scan-assembler "vpst" } } */ > -/* { dg-final { scan-assembler "vqdmladht.s16" } } */ >=20 > +/* > +**foo1: > +** ... > +** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|) > +** ... > +** vpst(?: @.*|) > +** ... > +** vqdmladht.s16 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int16x8_t > foo1 (int16x8_t inactive, int16x8_t a, int16x8_t b, mve_pred16_t p) > { > return vqdmladhq_m (inactive, a, b, p); > } >=20 > -/* { dg-final { scan-assembler "vpst" } } */ > -/* { dg-final { scan-assembler "vqdmladht.s16" } } */ > +#ifdef __cplusplus > +} > +#endif > + > +/* { dg-final { scan-assembler-not "__ARM_undef" } } */ > \ No newline at end of file > diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s32.= c > b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s32.c > index 7e43fed1503..4694a6f9ec5 100644 > --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s32.c > +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s32.c > @@ -1,23 +1,49 @@ > /* { dg-require-effective-target arm_v8_1m_mve_ok } */ > /* { dg-add-options arm_v8_1m_mve } */ > /* { dg-additional-options "-O2" } */ > +/* { dg-final { check-function-bodies "**" "" } } */ >=20 > #include "arm_mve.h" >=20 > +#ifdef __cplusplus > +extern "C" { > +#endif > + > +/* > +**foo: > +** ... > +** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|) > +** ... > +** vpst(?: @.*|) > +** ... > +** vqdmladht.s32 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int32x4_t > foo (int32x4_t inactive, int32x4_t a, int32x4_t b, mve_pred16_t p) > { > return vqdmladhq_m_s32 (inactive, a, b, p); > } >=20 > -/* { dg-final { scan-assembler "vpst" } } */ > -/* { dg-final { scan-assembler "vqdmladht.s32" } } */ >=20 > +/* > +**foo1: > +** ... > +** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|) > +** ... > +** vpst(?: @.*|) > +** ... > +** vqdmladht.s32 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int32x4_t > foo1 (int32x4_t inactive, int32x4_t a, int32x4_t b, mve_pred16_t p) > { > return vqdmladhq_m (inactive, a, b, p); > } >=20 > -/* { dg-final { scan-assembler "vpst" } } */ > -/* { dg-final { scan-assembler "vqdmladht.s32" } } */ > +#ifdef __cplusplus > +} > +#endif > + > +/* { dg-final { scan-assembler-not "__ARM_undef" } } */ > \ No newline at end of file > diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s8.c > b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s8.c > index adf591041e3..c8dc67fdd12 100644 > --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s8.c > +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_m_s8.c > @@ -1,23 +1,49 @@ > /* { dg-require-effective-target arm_v8_1m_mve_ok } */ > /* { dg-add-options arm_v8_1m_mve } */ > /* { dg-additional-options "-O2" } */ > +/* { dg-final { check-function-bodies "**" "" } } */ >=20 > #include "arm_mve.h" >=20 > +#ifdef __cplusplus > +extern "C" { > +#endif > + > +/* > +**foo: > +** ... > +** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|) > +** ... > +** vpst(?: @.*|) > +** ... > +** vqdmladht.s8 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int8x16_t > foo (int8x16_t inactive, int8x16_t a, int8x16_t b, mve_pred16_t p) > { > return vqdmladhq_m_s8 (inactive, a, b, p); > } >=20 > -/* { dg-final { scan-assembler "vpst" } } */ > -/* { dg-final { scan-assembler "vqdmladht.s8" } } */ >=20 > +/* > +**foo1: > +** ... > +** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|) > +** ... > +** vpst(?: @.*|) > +** ... > +** vqdmladht.s8 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int8x16_t > foo1 (int8x16_t inactive, int8x16_t a, int8x16_t b, mve_pred16_t p) > { > return vqdmladhq_m (inactive, a, b, p); > } >=20 > -/* { dg-final { scan-assembler "vpst" } } */ > -/* { dg-final { scan-assembler "vqdmladht.s8" } } */ > +#ifdef __cplusplus > +} > +#endif > + > +/* { dg-final { scan-assembler-not "__ARM_undef" } } */ > \ No newline at end of file > diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s16.c > b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s16.c > index 2dc453bdd9a..74ebbfa8b97 100644 > --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s16.c > +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s16.c > @@ -1,21 +1,41 @@ > /* { dg-require-effective-target arm_v8_1m_mve_ok } */ > /* { dg-add-options arm_v8_1m_mve } */ > /* { dg-additional-options "-O2" } */ > +/* { dg-final { check-function-bodies "**" "" } } */ >=20 > #include "arm_mve.h" >=20 > +#ifdef __cplusplus > +extern "C" { > +#endif > + > +/* > +**foo: > +** ... > +** vqdmladh.s16 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int16x8_t > foo (int16x8_t inactive, int16x8_t a, int16x8_t b) > { > return vqdmladhq_s16 (inactive, a, b); > } >=20 > -/* { dg-final { scan-assembler "vqdmladh.s16" } } */ >=20 > +/* > +**foo1: > +** ... > +** vqdmladh.s16 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int16x8_t > foo1 (int16x8_t inactive, int16x8_t a, int16x8_t b) > { > return vqdmladhq (inactive, a, b); > } >=20 > -/* { dg-final { scan-assembler "vqdmladh.s16" } } */ > +#ifdef __cplusplus > +} > +#endif > + > +/* { dg-final { scan-assembler-not "__ARM_undef" } } */ > \ No newline at end of file > diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s32.c > b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s32.c > index 06f3204e47e..796de4df283 100644 > --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s32.c > +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s32.c > @@ -1,21 +1,41 @@ > /* { dg-require-effective-target arm_v8_1m_mve_ok } */ > /* { dg-add-options arm_v8_1m_mve } */ > /* { dg-additional-options "-O2" } */ > +/* { dg-final { check-function-bodies "**" "" } } */ >=20 > #include "arm_mve.h" >=20 > +#ifdef __cplusplus > +extern "C" { > +#endif > + > +/* > +**foo: > +** ... > +** vqdmladh.s32 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int32x4_t > foo (int32x4_t inactive, int32x4_t a, int32x4_t b) > { > return vqdmladhq_s32 (inactive, a, b); > } >=20 > -/* { dg-final { scan-assembler "vqdmladh.s32" } } */ >=20 > +/* > +**foo1: > +** ... > +** vqdmladh.s32 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int32x4_t > foo1 (int32x4_t inactive, int32x4_t a, int32x4_t b) > { > return vqdmladhq (inactive, a, b); > } >=20 > -/* { dg-final { scan-assembler "vqdmladh.s32" } } */ > +#ifdef __cplusplus > +} > +#endif > + > +/* { dg-final { scan-assembler-not "__ARM_undef" } } */ > \ No newline at end of file > diff --git a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s8.c > b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s8.c > index 79670b8b153..d585f5fac20 100644 > --- a/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s8.c > +++ b/gcc/testsuite/gcc.target/arm/mve/intrinsics/vqdmladhq_s8.c > @@ -1,21 +1,41 @@ > /* { dg-require-effective-target arm_v8_1m_mve_ok } */ > /* { dg-add-options arm_v8_1m_mve } */ > /* { dg-additional-options "-O2" } */ > +/* { dg-final { check-function-bodies "**" "" } } */ >=20 > #include "arm_mve.h" >=20 > +#ifdef __cplusplus > +extern "C" { > +#endif > + > +/* > +**foo: > +** ... > +** vqdmladh.s8 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int8x16_t > foo (int8x16_t inactive, int8x16_t a, int8x16_t b) > { > return vqdmladhq_s8 (inactive, a, b); > } >=20 > -/* { dg-final { scan-assembler "vqdmladh.s8" } } */ >=20 > +/* > +**foo1: > +** ... > +** vqdmladh.s8 q[0-9]+, q[0-9]+, q[0-9]+(?: @.*|) > +** ... > +*/ > int8x16_t > foo1 (int8x16_t inactive, int8x16_t a, int8x16_t b) > { > return vqdmladhq (inactive, a, b); > } >=20 > -/* { dg-final { scan-assembler "vqdmladh.s8" } } */ > +#ifdef __cplusplus > +} > +#endif > + > +/* { dg-final { scan-assembler-not "__ARM_undef" } } */ > \ No newline at end of file > -- > 2.25.1