From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30089.outbound.protection.outlook.com [40.107.3.89]) by sourceware.org (Postfix) with ESMTPS id 04AE63858D3C for ; Wed, 29 Jun 2022 15:19:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 04AE63858D3C ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=ZixtegbvwFAXDCHjiPzWVDvxi7hSOGVKvH0Umq092LZw+LlSkZ4ik68YGINRqp/Do4C8xcfwVuQm328lxLb7DTTcK9k8E+Ea/rGn9iegSuJMuncIJNw1QdbQPqu1dIutemwwK45hqW3+wQ1iMy7WqY8XDEcIg8lvoJlNd9d0dQCGYJHFkXSfdDkkgjGzVlNF356IaX2dkUM8b0jIhBngX7i9BV9PXDY0m7xbzbQga1f1CpUUYRlxUew2mH8j7yUs/ykBIzBp9g9TcJE5TjRlh6eD+jRRnoaUwhDOaEl+FjFsukzRcSbAbUgXY+HNGwL5iLFfcbh23AHRO+i4Dl3PWw== 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=WvRsjoG4T8v1DkyHxg/OQsfq7W5UEfBAX5/ZPX0JgWs=; b=ayxWX039lNas7wizRH2M3oWvVTFbqyKk3yKZ4cwLboIDtDgz386cej9VR6e6EvOb84ROSbeKoWunYNM9pQWxPBJhDmGkydpQIwMB/rkCafs+t42R/vgOLQL9Ve+EcoK4dmmal0RZ4citQe+o8u7R6DL/dwXRnx/2QIsWRurMh/hnw96NFZJA3FHEkh1hid/C2ypx3O0GZn3uacETZhkNEAbhYEoaZ+jHPXwteGv4eZvypm+MeIZH+T6iYPGr84SggVZemBAHor9eYJXhPaxycXuoH/iwcq3l4mxoObfUAEGdiFtadWdoaKWibAD7P7IQjJJX6ebKMP7E6vhcKnmTXA== 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]) Received: from AM5PR0502CA0008.eurprd05.prod.outlook.com (2603:10a6:203:91::18) by DB8PR08MB5340.eurprd08.prod.outlook.com (2603:10a6:10:11c::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Wed, 29 Jun 2022 15:18:57 +0000 Received: from AM5EUR03FT034.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:91:cafe::ff) by AM5PR0502CA0008.outlook.office365.com (2603:10a6:203:91::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14 via Frontend Transport; Wed, 29 Jun 2022 15:18:57 +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 AM5EUR03FT034.mail.protection.outlook.com (10.152.16.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.15 via Frontend Transport; Wed, 29 Jun 2022 15:18:57 +0000 Received: ("Tessian outbound 514db98d9a19:v121"); Wed, 29 Jun 2022 15:18:57 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 3aae1366a13733f3 X-CR-MTA-TID: 64aa7808 Received: from 05b978663664.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 72CB08C4-66C0-457D-B060-2E8A5D46A8BB.1; Wed, 29 Jun 2022 15:16:51 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 05b978663664.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 29 Jun 2022 15:16:51 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YrfNWPsiLe/cRLyVjoJ4A3psKXBN0c3IMLgyB6RIi1KateYcDmRI81VmBHpHd/kiE0p05r6Gott/M/ed/zuVT6YzhqRYLpKgUXAaQEsa1U5ylhnSTj5+2lL0BukAOgjEKnWZ2MEt/q7dOONWIrhiJ6VQ8QCSTnl6Gm+06cSLX7r36aTRZavznaVPMg/9sn6JmDekMKIFwNuRaqyq53EH9+be+thbzKtJHsT09rLvKbgVwDHwhCYqt7I0XPmrEmdOx373OEIv+IBmTcm9x+Wo1x83RPeGVPJdqifmwbC153xJqaSBbcz5iza0q8y4k7jhW3+v4Q4vSyjP8BXWKftIKA== 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=WvRsjoG4T8v1DkyHxg/OQsfq7W5UEfBAX5/ZPX0JgWs=; b=WjcISvL94VXYbekJa/hChSrq8jnqjxBQTN6bDw2nCcUn//PA8JHkgJ357mutr9uk6ESYapvRjZj8ARs3U5FELI9EvLIU/iC1T/y+5u96iTv9SsKot57/FxAYTiDe2d1f6zDt8G2s8GGrWzAc3UvjqPXRlYtFfL1lJ0fRSiGVNLYWJMJgh+sHEsdz4w3I19ybKgbwANLLvKWfbqX/bYfOLMOGaYjiVT7LL0jsOz1ShQisrYSGD/TsqVW2VFNj9s7gu1KXD/5o84WYYEohOosz+6EVPasHZtV3DQkgG7BZzSiFIGLuKLSWNFqxPy2FEQ9S+TGD/eLSkp6bNLx4nmlEvA== 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 DB9PR08MB7179.eurprd08.prod.outlook.com (2603:10a6:10:2cc::19) by PR2PR08MB4649.eurprd08.prod.outlook.com (2603:10a6:101:1f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Wed, 29 Jun 2022 15:16:50 +0000 Received: from DB9PR08MB7179.eurprd08.prod.outlook.com ([fe80::7920:5d4b:d11d:d5e4]) by DB9PR08MB7179.eurprd08.prod.outlook.com ([fe80::7920:5d4b:d11d:d5e4%3]) with mapi id 15.20.5373.018; Wed, 29 Jun 2022 15:16:50 +0000 Date: Wed, 29 Jun 2022 16:16:30 +0100 From: Szabolcs Nagy To: gcc@gcc.gnu.org Cc: Jakub Jelinek , kyrylo.tkachov@arm.com, graham.hunter@arm.com, paul.walker@arm.com Subject: AArch64 vector ABI vs OpenMP Message-ID: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-ClientProxiedBy: SA9PR11CA0005.namprd11.prod.outlook.com (2603:10b6:806:6e::10) To DB9PR08MB7179.eurprd08.prod.outlook.com (2603:10a6:10:2cc::19) MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 6b068e1a-7be1-42a0-e38a-08da59e2b010 X-MS-TrafficTypeDiagnostic: PR2PR08MB4649:EE_|AM5EUR03FT034:EE_|DB8PR08MB5340:EE_ 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: yuMKuTCURwcjZQqej9UtgihDRMPuh0VMd6PkVBKtUhiS+tB5zWHCt5oZtSQSEc7Iq8JMKeEZ8OYfH2laNCnrI6Jo1mNh2KRQVgQJXg3Y6GcSNW+v5iS5SXZboz2wm9elzKD3lAorJXO34KM0STsNlLIFZ+4VbUx50z02SuXwcQHNmTwuWfo0IIsn1+VeEOK2TcSbdasxx5Khv7zTrOEjPzsv0e7Iv6zG2K20ucZWyNeRZK8lG2OJaUFjtdI9om/FTwHVfD+4TS5tGgFRgFx8k8aDytVKyv/oAnBmmX83hg1G3QlblMTG/rSDKRe/RiRY+xha57j9iwV01j8rH4PzizyqZXYM50mOSEocDwqLn3RZf2UYj47yN06ky9omLcvE34+YHJSP/Gt42WXrbXDiBMmn96nugl2bYo9TnKFs0NhuTsvKCTQTO0bkbK80F7rcrrfjDqG88ErKPUMCd6SVJRA/nFfI3bh4LbSsTastkxLpjUTkMgWnJI2sBdsAgYGygMVECnOYospZvyFRga3C8gb8YIOxaZKoaNlhyUbFe5yhbdyyc5TW+Eo2FuK+BdRZUDULVM01hE3sEmNOeSj48L4HQDR486N+3n7ATLyjh9xZkZfYpFyNzMT3dOPe7qH6hRk0PJDeG1ExjYZjjktXzWSOYLbSxfpVYv8D0Lok3/yXP1KdYo6M9ab5CIB5vGv8c/vjd0DY2tJRlOj8B7yTY5XomkkpiWRLLhA5bq1L5Oj1973XfngG7h+pWKAT8e46V//LwRauXskILDGX82Xq/vf2oSpvmLVPa0a1z10945I= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB9PR08MB7179.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(396003)(376002)(366004)(346002)(39860400002)(136003)(66556008)(6916009)(6486002)(6512007)(966005)(66946007)(26005)(8676002)(316002)(4326008)(66476007)(44832011)(5660300002)(2616005)(38100700002)(6506007)(2906002)(86362001)(6666004)(8936002)(186003)(478600001)(36756003)(41300700001); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR2PR08MB4649 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: AM5EUR03FT034.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 2ea700d0-e405-4a7e-4be2-08da59e263af X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jpUB59YCYhTTyGIIYWkZCrlVkKPNF7Lp8uOrPFGZl2cqPeo3v5n7ciVqUW0RcwaUj2Zk6GntGg+7knTJc60WLFuFSIPv4/1+Cz+U7v6OQb6bxxyzQFywsy505bVJI0NQk3wUdjKsecboZ55Hkm9y/pAh2YqYWJ1y9SwXkhGGLh4qDDlC8y7p/9dvmiwAzDukapSxrCDyIO2bmIKKCyLtsdN8Nsw4NEspeJmpiWZ8DhID4M77+MlhXfKiEmH6lGegvAA59A1aaiRkL2ACNkCxV2sDh0HHxdzzCCCTNuv1wotsr9sF5Vx+0+qTFg5FCu8nwlUPiDvqW+G7l99jPBbGeTjSZCYkirUn12yVHRaoolahxC3UJYiwF4/WdSjrPkPMKtaffWTXK1YGjrwEPMF+rFmIDaWLmdjUxguXUbN6w7dJI/PhP/UguyfAOfEPi71bqly4i7BfPK9H3r4uB34CR/0kZjBSs56JsQIKekJxKu6oVw+QlRvBecaqJZdS2Ek2GBOfkKWEKMFRbhQhPq6+52wNBbHB4BekUt4tUuqucpbg8Mjymyu/aGdDhIjDBNFKZ9eqKv8WVqEGK28GjLc428932f7d8XwqeXDAc/9qYilso7/7YBKzG1+hmLwjC8fAK4R+IhoNKB8EJvm72dH0ziZkYbbPjGRvGIOO1Ay8HNl6zSbRLE9BbqdeVpPpMS69s/+uKGNqKohKkWriAOaJypWZGutVuLRZbuBFOOQsxuo2q8F529iJJo+t7Z8UCyqc3/mjJZxNjuPs57v/yrwHHqjtfFGF9yKUHJK3ubL2zptZhMEWEeuTcjoMIcZohWTGJ5wW8eZ0J4WHFJP/0zZ/FhSZdlQrsuzkYfCeOWUu4q4= 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:(13230016)(4636009)(376002)(396003)(136003)(346002)(39860400002)(40470700004)(46966006)(36840700001)(478600001)(70206006)(8676002)(81166007)(82310400005)(4326008)(186003)(8936002)(966005)(40480700001)(41300700001)(6666004)(2616005)(70586007)(356005)(82740400003)(6506007)(6512007)(36860700001)(86362001)(316002)(26005)(2906002)(5660300002)(6916009)(47076005)(44832011)(40460700003)(36756003)(336012)(6486002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2022 15:18:57.7099 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6b068e1a-7be1-42a0-e38a-08da59e2b010 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: AM5EUR03FT034.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR08MB5340 X-Spam-Status: No, score=-6.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, KAM_DMARC_NONE, KAM_SHORT, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE, UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jun 2022 15:19:02 -0000 Last time aarch64 libmvec was discussed, the OpenMP declare variant syntax support was not ready in gcc and there were open questions around how simd isa variants would be supported. https://gcc.gnu.org/pipermail/gcc-patches/2019-October/532940.html The vector function ABI for aarch64 allows the declare variant syntax and that is the only way to declare vector math functions for a particular isa only. https://github.com/ARM-software/abi-aa/blob/main/vfabia64/vfabia64.rst#aarch64-variant-traits I would like to get feedback if there may be anything preventing declare variant simd support on aarch64 like float64x2_t simd_cos (float64x2_t); #pragma omp declare variant(simd_cos) \ match(construct={simd(simdlen(2), notinbranch)}, device={isa("simd")}) double cos (double); where isa("simd") means simd_cos can be used when auto vectorizing cos calls with advanced simd. Our hope is that this enables libmvec on aarch64 such that at least advanced simd variants of some math functions can be declared in math.h and implemented in libm, suitable for vectorization. (Using the vector ABI names of those functions.) Eventually we want to add isa("sve") support too, but that may require further work on how scalable vector length is represented. Please let me know if there are outstanding issues with this approach. thanks.