Message ID | 20241129035404.3363162-1-tejas.belagod@arm.com |
---|---|
Headers |
Return-Path: <gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 933493858C78 for <patchwork@sourceware.org>; Fri, 29 Nov 2024 03:57:42 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 933493858C78 Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=JZy0Tux5; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=JZy0Tux5 X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20622.outbound.protection.outlook.com [IPv6:2a01:111:f403:2613::622]) by sourceware.org (Postfix) with ESMTPS id 2F1243858D20 for <gcc-patches@gcc.gnu.org>; Fri, 29 Nov 2024 03:54:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2F1243858D20 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 2F1243858D20 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:2613::622 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1732852467; cv=pass; b=qZ8jViULhcJli4l7vJdp11FAYTYDL+V87IjkCNlOODxZ0+r7DoiHLjwDQwowxdnvLaGL7s4jhKmtzuM+//02y970b8UF+0hFb07q+D31XanDqKGhCQTG0eDbgWuwLTtvatDTJs2w0R6abMYlwZ7xXW88lJ8W7+Z7ChDDot9YtQ8= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1732852467; c=relaxed/simple; bh=USn9lv7s7QA/WjcREpvxouXL7YqOXsapX+7hvihn2VM=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=c7P3RAZI3dNn/BvzsjHbToUWlfLHo+V5mCyBAlWcPdWZMUQqP5V4Ni3OuocI/Pq3kryP/Bwj5QfVyIxMb7jumDxXHyzYWRSeW+enfQgc4gxd3LGAtwdIS5ENMFVInu8R4eoEwTGnJnwAFRkCzznB+SaJHwowIFwN9exCuKsXWxM= ARC-Authentication-Results: i=3; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2F1243858D20 ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=kMLS0opBzvEWFCExxuwkl/9ZHd0i1JBEipSMHYZq5V1o1PzCpNXZyDkh4ZbpZF3XK8zb06by1gVmM6KFpPyNUrfhNSZpV32JIzZrpMm9FuhS5CAw7mcM4ywLf37o/qL1mwT8NOmfz8gNUzviOi8B4ku87PDalZnXC6UvZ8NFHLlxmG/W6LbDrFMo/jWM0p+3Kv8JRm1R0YVT3bCax8FZtVherJLK3l/kRiDKsNyXrfdte6CNkSbYS2NcyK+5tiMlhnquezEdxP8gXFbhEV7phRST6wGbHDP3Ri5zRCkLFrzoQnWsmMHfnCSdBNqCNIMSX+tcItZ4eR9tOcH0//Fygw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=nvE/QfBGPabYReG8e1/28THZOQ1IVydKuO8tTaOqm0I=; b=m7KlRMh9/MH9jRj4FdvrCELlN1fdPU++O1ge167M3LYUXHU96RpnXFtH24m/p0n9Wz/htBROwuqCImlHNj53UuYPCeRATMLZeBne1r7GJdc8X1AvGY4NCJZhNheOkEKjWF6f3kLvb88JJvUN4tjyI6QGQZNfD0EB38iR+H/Kuoh6veSVC+SiuAKiF/S2ylZSCaRgAdK2IJcw5xmuwOQ5MS9KVWNh5O2B6SHxX5WoDehFOOsnc9ewThheCoijmySE1eQPb+mkQRpZVf3DKtptisWrCbMd26y8W5HebbG4DvJPI0fYu/R626xjjOB03423YonYFXM38lShEO/Qrk8r0g== 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=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nvE/QfBGPabYReG8e1/28THZOQ1IVydKuO8tTaOqm0I=; b=JZy0Tux5hGb9KeQSv+U5EfnL9NvWHYETNKax3ICjgChWNh0LO19ofJDt++okC3RLpU3eX1KsVUZeKsZDjPoi+CjjYIVmANmbDtwDdUm2/sDYIQyKhjOTN3bhYicNjWdM9s2H9zwWbjnwtMvRumPhEBLj4u5jBCPxt/IlJibTL2U= Received: from DUZPR01CA0048.eurprd01.prod.exchangelabs.com (2603:10a6:10:469::17) by DBBPR08MB10507.eurprd08.prod.outlook.com (2603:10a6:10:53a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8207.12; Fri, 29 Nov 2024 03:54:20 +0000 Received: from DB5PEPF00014B90.eurprd02.prod.outlook.com (2603:10a6:10:469:cafe::50) by DUZPR01CA0048.outlook.office365.com (2603:10a6:10:469::17) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8207.13 via Frontend Transport; Fri, 29 Nov 2024 03:54:20 +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=arm.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 DB5PEPF00014B90.mail.protection.outlook.com (10.167.8.228) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8207.12 via Frontend Transport; Fri, 29 Nov 2024 03:54:19 +0000 Received: ("Tessian outbound 206fab1c37e0:v514"); Fri, 29 Nov 2024 03:54:19 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: a855afcd8e2dbd41 X-TessianGatewayMetadata: NrYCiiyHgSS8QZHovncXJAJIpCd7jGsZH970VSaC9IxAiVwN7RE0to3VuUbL7u1Yhfq/HjXe7bjXU6Oo28T5gAe/fTzYvGLar2Ov+ZClX8y2MLqYtpbFJW49VNmLLU+aGDN7anfIp/ypCcxGswIr0AL7bvO/uxUK63Q9oJDSQHU= X-CR-MTA-TID: 64aa7808 Received: from Le87500a8c973.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9A144E81-1414-4C82-9CB7-C7157239E1CA.1; Fri, 29 Nov 2024 03:54:13 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id Le87500a8c973.1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 29 Nov 2024 03:54:13 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Dlet07G6Tet8ubzfyPCaRqycqRJNTpZFcuPPOLiwyPv3IRPd6RCZ4kZs9AFzkc0I4GLf6D8u3s31vXZPRTrfNA4nKb+SNyi5T7i0tDmohf1Yz9f5OxYsRIiyfwhnbH3gzpild/Ry7gqzwOzFscj5naeYOYjUn/d4gV4jDixa+ePQfcp7ksy5ptjEiOn72SHIas+yi8isrBniEBLKcpCktqjFznNPuQ66Nq4oHxmbuSC5yLvKz54RTWx3+e7wDWzLxF0/BXntJecZedeuDx7fmx49e1NMBRrcs7BrFmPmFvLfpYM4ieHyTTOCqFohqJNUyGOO3/6M2S410cVLTSHYNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=nvE/QfBGPabYReG8e1/28THZOQ1IVydKuO8tTaOqm0I=; b=xwTJ+cyEMyvAcgONXnkcd5+C/GqUmpQhzfHRkiTCPz0CI77Mxdxvdiuer3QwVWU7qGVi2gr1l/l57S1QOgigxX6i8WF2J8gLGjcT+XrYilnOIUmhvBZyY+8nxH1TF5j9mOSeeUEDlAgvmXA8s6rhY0pLwqRf5AKmVFoUsL4WeRvAwuh5hdzQ0zV4yXyTjrah3JaWmpoYsPHEDuDZpr2GvyVKcCPJTbxXm+4LCnjei4Jy+Iqj+StaOrSVfZlxwdxLIXHMMqj6nr89arnTraS/PpNX350e3h9g3nJtwkA5+VPtITYYXt4vRXZ9AfDPacuUk5CX6Od5DOCVU1chyaXlIA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nvE/QfBGPabYReG8e1/28THZOQ1IVydKuO8tTaOqm0I=; b=JZy0Tux5hGb9KeQSv+U5EfnL9NvWHYETNKax3ICjgChWNh0LO19ofJDt++okC3RLpU3eX1KsVUZeKsZDjPoi+CjjYIVmANmbDtwDdUm2/sDYIQyKhjOTN3bhYicNjWdM9s2H9zwWbjnwtMvRumPhEBLj4u5jBCPxt/IlJibTL2U= Received: from AS4P191CA0052.EURP191.PROD.OUTLOOK.COM (2603:10a6:20b:657::25) by PAWPR08MB10257.eurprd08.prod.outlook.com (2603:10a6:102:367::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8207.14; Fri, 29 Nov 2024 03:54:09 +0000 Received: from AM4PEPF00027A63.eurprd04.prod.outlook.com (2603:10a6:20b:657:cafe::ca) by AS4P191CA0052.outlook.office365.com (2603:10a6:20b:657::25) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8207.12 via Frontend Transport; Fri, 29 Nov 2024 03:54:09 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 40.67.248.234) smtp.mailfrom=arm.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; pr=C Received: from nebula.arm.com (40.67.248.234) by AM4PEPF00027A63.mail.protection.outlook.com (10.167.16.73) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8207.12 via Frontend Transport; Fri, 29 Nov 2024 03:54:09 +0000 Received: from AZ-NEU-EX06.Arm.com (10.240.25.134) by AZ-NEU-EX04.Arm.com (10.251.24.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Fri, 29 Nov 2024 03:54:08 +0000 Received: from AZ-NEU-EX04.Arm.com (10.251.24.32) by AZ-NEU-EX06.Arm.com (10.240.25.134) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Fri, 29 Nov 2024 03:54:07 +0000 Received: from a078660.blr.arm.com (10.162.46.14) by mail.arm.com (10.251.24.32) with Microsoft SMTP Server id 15.1.2507.39 via Frontend Transport; Fri, 29 Nov 2024 03:54:06 +0000 From: Tejas Belagod <tejas.belagod@arm.com> To: <gcc-patches@gcc.gnu.org> CC: Tejas Belagod <tejas.belagod@arm.com>, <richard.sandiford@arm.com>, <rguenther@suse.de>, <josmyers@redhat.com>, <jason@redhat.com>, <polacek@redhat.com> Subject: [PATCH v3 0/8] aarch64: Enable C/C++ operations on SVE ACLE types. Date: Fri, 29 Nov 2024 09:23:56 +0530 Message-ID: <20241129035404.3363162-1-tejas.belagod@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: AM4PEPF00027A63:EE_|PAWPR08MB10257:EE_|DB5PEPF00014B90:EE_|DBBPR08MB10507:EE_ X-MS-Office365-Filtering-Correlation-Id: dc9f9589-e39c-474d-33ce-08dd102980b8 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; ARA:13230040|36860700013|1800799024|82310400026|376014; X-Microsoft-Antispam-Message-Info-Original: /wbwgOdXvMvwjnYzps6unrEeBy+qIaQQmSEiL2NZFHv+VTHpBd1J4AD36UQHxHiUgyDCWTZV7ymLpUD5bCt4yHD6UXcP395hfUkayVJnE0tk2diKNHjPxeBklR75UrqG5yBprk16VRedtSKauHaK8CJR1vROF2qwNIAG8rx6FfMnc0NlUTrglhQwGHHQ/C8c3aYPhAWr2+AwMiIhJcm3L4ngfjl2NuhOi3XFMLqE90Xzk4DrUbfA9e1mjf3YAW4WO/XxaZHcZzchMsjkcp3MQ5BnatPAMRnkKucs/iJ6R6scaPqP6TetMyBncZt6By1FOOhu2f6i9w72rRRQomPk0l57tWn5zsZvT0YfGggpmnOtzbQ7OyO1cnRq6vAS7N0XEJlGpCKcMRdIDfiJcVjSPqV11bCvttG9mWzq3gzJ/QM2ELEvTiIiUaAhC05woC0LcFi1TcYYmAL2PrtA4NJUcBbg3sm16rOnvS/GOy6DZis+qB08BS76+WYrgF16yG0RvtJhSnwjpFITVFadavp5MipXZGL5aflz1qYc+orZdshx4oEREjhf7bZ8j/53SGLA8VKi8tTt1OtoGeNsmHltFmrPvLOdOmcA0173rDmu57fBODtrCp5wqkcEiUWAkk7COzIYtluLn1etkpLUOud4ezd0C/WTVAZj7Ur/vlwC7V8Ipoh2xC7w2G9rptUM4VooZuJqjcMy2wqqthIrZnUKPhu+W8BFTCZmWLvXVQ0DH3plSNRwTy3D4k42mppzeGOH/qBhGIyRPlszC9ETih8bmuUBWR9e9sfuzhDnmLVunBcYNMnC/nfC41vL47NRYOpwsRudsMXVntUf8GPD/qsDxWJ+mhIWWv94Eskidq9ZtxEazc7Bvw3WZpUWeGnbc9yCBtbO5Hs7D8kpuCDtGV9Jj4vilqSwPtR/RQTf3qnTKwBPfOw0kD0BFwqcXUg8PeaHmkoun4p+rfC79K0VOMnestMzb4uvNrZA0eixF8nF3lUCTdukFgCaj+tQc/tqq7c6FFFcmC5O0tQx1OZw+k9SmLe9/79PoxLKpDbl0LxqNe6lHnlfHtMfVfiCvOSCpScgu1uCtjftjultlJ3T4jbzBbh7PCu4Da5T5+brDMaxZQAl8Wy4v/ECUpmIJHIvB/+PyXHfVphhTI+hh/8V3CYLJwlG45aJg/R/1aVwoub6tPcrCK00dx8GTiW+Xy0JllovtGsPLRKrXrTDd/m4+uNGOqaYZ2e/4PgXlf382kggqxXHmYSHZ/RW9JHwisXZxEl9vCb2fVbu5khHeZUQ34euuzn4NltqizFlCL1CvQIwgzLwCMiVdJMOQ+hzYMrY2j4khfT9fvDyVVyoLV8NlmrJoEU+YHwQ7+dpQIy71tqS+UCXiu4pLm9jCVXnDl/2pXiHYZzqpwXS/EOnVr2jm+i1mwUiZk1YovembX/oGMd6jwM0FJ8kl5nECt66/8dS0LrxU1fuEAOPF6FC6hbqB+suDQ== X-Forefront-Antispam-Report-Untrusted: CIP:40.67.248.234; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:nebula.arm.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(36860700013)(1800799024)(82310400026)(376014); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB10257 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:20b:657::25]; domain=AS4P191CA0052.EURP191.PROD.OUTLOOK.COM X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5PEPF00014B90.eurprd02.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e49cb41e-c355-40bd-ce3c-08dd10297a9e X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|82310400026|35042699022|14060799003|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: wecxuiSrft72kGuDW3sU1oeGu8F9fSUb1kj8oII/FdW9vgdhPtRLDu/wmKQ2Pn+bNaZdpSxzIRWynyUHp7KdWD4k6+71Jk6lpxnZwD8FtkGqAouXSZ6Us4p8L/JLx16fNqcxWATrE25nqRk5F6JY1fFef6bVkoxBZYaIjdzIq5aEtoXmemmc48/wITAuzjPWERmqeu/03/dn4qgH2ZXEAmaC7FZbvmEEnZ0Obwkq6/ibdx7paM1N43BjupMALMFyFK5J9vZypWnas2sl/b1WTeKyagBcfT48gRBJL/s584acPUqLPXKBOqomEp3UsX97OmO00ShpBzfeMFRlxcoPPpotRkSsFwGz1DVmHfrp28flZuIjNcMAN/azMRvnATcd8qvlUClLN1+y+188en1druUI40AMJ4WHOQAIyzm2Ti2Tfd69JelO2GCD1ATRTI3p12fcftSqZGzOwmIImTsLQtnVN/ve85015wgIqFsDQv1oqp6GP7pRGxz/pok4WuwhNB7t2if9snJDf57Imbu+PuJ6Gv1dTU5tddRWYpURXm0LYd25GUycUsit4F5dIbOLhD9yivPOcIEybktntAhqm22OZMDJ4raHBptRXh1343DfabIGIKtRlAeK9DuLK5s5PPQ8zDUI/3YOSAq6hJCJUfnRyN0vPczSTGjt35K2dD7UybJbbtSkcXLDRSk09P+BigVQEYLT5l8IQyKCaZQzrG7zIteFy+B2+wsYnq4BtUMDGJUuZ/F1NNs2T3WYIUUiZuGjELd/xyNBWM/puXQuxouov5Rz90+hLdKW7kmh8IKWCHki0VfQM6Tm89ByjNe1Y4UjE+qtlMdQ5/DnMCr2cjy9lexpc6OtPPab1HWzi+QgAL9/v/4XU/zU4lUlPBOtHBULHw4DFUNZtT+TX7b1ZzBlwDDbj3KcKIjueQ11n3VUEm+jdB/F9e/o8U2oAS4LaXWkdQGmmdSBKTaZOF4nAaRG1gxvdjMf93Fdgws7YiMZ/Og3Q4z/clONeUG/88qIIna8kSThDVW1XYkl5kre+PiJ2y1JYRjmOCPZ6xNL3B8pgZD60P/+leTKfgDo/U/SQacXaZwCxIsAbYLz89dyWUVAu1ly4jI6LT6/q0jHb9nNUjE/OLGSiazFEBN3sCtzl9zbG4y+TMxvx0LROQsc07WnfLJhS3splyRtRGEdBpcLn4uJXxRxdg+FE/9KHtGjGGUiYhfpa7+CZj/1vZXSd/SiqHGuu9T5QZVZTcLrfFhprAyjuqIVvJCzSWsxhZY6oJpqJ6NnKIZdELkM2M1x/OOkH/Eu73bjf69ECFXlkLpqDS94edHgrYMIfMULt2KNFGV8D0OzZqkOiIuTa+ay2g5FG7MzZaVAkAXFiXgBctwkJsIr6oY/x4FFYwucrmQa3lhV92SRA0Jm1yOT1k7TBC2Plkd8QdNWzwDgI3kaTiatvqfXIBaayFkJ7MhgkmQBzhXaS6TsqvOrh6FmCMbRew== 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:64aa7808-outbound-1.mta.getcheckrecipient.com; CAT:NONE; SFS:(13230040)(376014)(82310400026)(35042699022)(14060799003)(1800799024)(36860700013); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Nov 2024 03:54:19.5581 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: dc9f9589-e39c-474d-33ce-08dd102980b8 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: DB5PEPF00014B90.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB10507 X-Spam-Status: No, score=-5.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_NONE, TXREP, 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-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list <gcc-patches.gcc.gnu.org> List-Unsubscribe: <https://gcc.gnu.org/mailman/options/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe> List-Archive: <https://gcc.gnu.org/pipermail/gcc-patches/> List-Post: <mailto:gcc-patches@gcc.gnu.org> List-Help: <mailto:gcc-patches-request@gcc.gnu.org?subject=help> List-Subscribe: <https://gcc.gnu.org/mailman/listinfo/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe> Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org |
Series |
aarch64: Enable C/C++ operations on SVE ACLE types.
|
|
Message
Tejas Belagod
Nov. 29, 2024, 3:53 a.m. UTC
Hi, This is v3 of the series https://gcc.gnu.org/pipermail/gcc-patches/2024-November/669255.html based on review comments. Changes in this version include: 1. Better way of handling poly-sized vector checking in gimple-fold.cc 2. Changelog fix. Thanks all for the reviews. Based on Richard's comment https://gcc.gnu.org/pipermail/gcc-patches/2024-November/669289.html I will commit it at EoB today if there are no further reviews. This patchset enables C/C++ operations on SVE ACLE types. The changes enable operations on SVE ACLE types to have the same semantics as GNU vector types. These operations like (+, -, &, | etc) behave exactly as they would behave on GNU vector types. The operations are self-contained as in we still don't allow mixing GNU and SVE vector types in, for eg, binary operations because the typeof the expression is ambiguous and this causes PCS issues. Other operations like implicit conversions behave as they would with GNU vectors i.e. gnu_uv = sv_uv; // This is possible as long as the size, shape and element-signedness // of both vectors are the same. gnu_uv = sv_sv; // Error as implicit conversion from signed to unsigned is not possible // even though size and shape may be similar. Such assignments would have to go through an explicit cast gnu_uv = (gnu_uv)sv_sv; Following unary operations are supported: sve_type_var[0]; &sve_type_var[0]; sve_type_var[n]; &sve_type_var[n]; +sve_type_var; -sve_type_var; ~sve_type_var; !sve_type_var; /* Allowed in C++ */ *sve_type_var; /* Error! */ __real sve_type_var; /* Error! */ __imag sve_type_var; /* Error! */ ++sve_type_var; --sve_type_var; sve_type_var++; sve_type_var--; Following binary ops are supported: sve_type_var + sve_type_var; sve_type_var - sve_type_var; sve_type_var * sve_type_var; sve_type_var / sve_type_var; sve_type_var % sve_type_var; sve_type_var & sve_type_var; sve_type_var | sve_type_var; sve_type_var ^ sve_type_var; sve_type_var == sve_type_var; sve_type_var != sve_type_var; sve_type_var <= sve_type_var; sve_type_var < sve_type_var; sve_type_var > sve_type_var; sve_type_var >= sve_type_var; sve_type_var << sve_type_var; sve_type_var >> sve_type_var; sve_type_var && sve_type_var; /* Allowed in C++ */ sve_type_var || sve_type_var; /* Allowed in C++ */ /* Vector-scalar binary arithmetic. The reverse is also supported eg. <const_scalar> + sve_type_var */ sve_type_var + <const_scalar>; sve_type_var - <const_scalar>; sve_type_var * <const_scalar>; sve_type_var / <const_scalar>; sve_type_var % <const_scalar>; sve_type_var & <const_scalar>; sve_type_var | <const_scalar>; sve_type_var ^ <const_scalar>; sve_type_var == <const_scalar>; sve_type_var != <const_scalar>; sve_type_var <= <const_scalar>; sve_type_var < <const_scalar>; sve_type_var > <const_scalar>; sve_type_var >= <const_scalar>; sve_type_var << <const_scalar>; sve_type_var >> <const_scalar>; sve_type_var && <const_scalar>; /* Allowed in C++ */ sve_type_var || <const_scalar>; /* Allowed in C++ */ sve_type_var + <var_scalar>; sve_type_var - <var_scalar>; sve_type_var * <var_scalar>; sve_type_var / <var_scalar>; sve_type_var % <var_scalar>; sve_type_var & <var_scalar>; sve_type_var | <var_scalar>; sve_type_var ^ <var_scalar>; sve_type_var == <var_scalar>; sve_type_var != <var_scalar>; sve_type_var <= <var_scalar>; sve_type_var < <var_scalar>; sve_type_var > <var_scalar>; sve_type_var >= <var_scalar>; sve_type_var << <var_scalar>; sve_type_var >> <var_scalar>; sve_type_var && <var_scalar>; /* Allowed in C++ */ sve_type_var || <var_scalar>; /* Allowed in C++ */ Ternary operations: <scalar> ? sve_type_var : sve_type_var; sve_type_var ? sve_type_var : sve_type_var; /* Allowed in C++ */ Builtins: /* Vector built-ins. */ __builtin_shuffle (sve_type_var, sve_type_var, sve_type_var); __builtin_convertvector (sve_type_var, <sve_type>); These operations are supported for both fixed length and variable length vectors. One outstanding fail PASS->FAIL: g++.dg/ext/sve-sizeless-1.C -std=gnu++11 (test for errors, line 163) I've left another outstanding fail as is - the test where an address is taken of an SVE vector element. I'm not sure what the behaviour should be here. Otherwise regression tested and bootstrapped on aarch64-linux-gnu. Bootstrapped on x86-linux-gnu. OK for trunk? Thanks, Tejas. Tejas Belagod (8): aarch64: Fix ACLE macro __ARM_FEATURE_SVE_VECTOR_OPERATORS aarch64: Make C/C++ operations possible on SVE ACLE types. c: Range-check indexing of SVE ACLE vectors gimple: Handle variable-sized vectors in BIT_FIELD_REF c: Fix constructor bounds checking for VLA and construct VLA vector constants aarch64: Add testcase for C/C++ ops on SVE ACLE types. aarch64: Update SVE ACLE tests cp: Fix another assumption in the FE about constant vector indices. gcc/c-family/c-common.cc | 10 +- gcc/c/c-typeck.cc | 16 +- gcc/config/aarch64/aarch64-c.cc | 10 +- gcc/config/aarch64/aarch64-sve-builtins.cc | 5 +- gcc/cp/decl.cc | 11 +- gcc/gimple-fold.cc | 2 +- gcc/testsuite/g++.dg/ext/sve-sizeless-1.C | 11 + gcc/testsuite/g++.dg/ext/sve-sizeless-2.C | 9 + .../sve/acle/general-c++/gnu_vectors_1.C | 438 ++++++------- .../sve/acle/general-c++/gnu_vectors_2.C | 434 ++++++------- .../sve/acle/general-c/gnu_vectors_1.c | 349 +++++------ .../sve/acle/general-c/gnu_vectors_2.c | 346 +++++------ .../aarch64/sve/acle/general-c/sizeless-1.c | 15 +- .../aarch64/sve/acle/general-c/sizeless-2.c | 14 +- .../aarch64/sve/acle/general/attributes_7.c | 30 +- .../aarch64/sve/acle/general/cops.c | 579 ++++++++++++++++++ gcc/tree-cfg.cc | 2 +- gcc/tree.cc | 16 +- 18 files changed, 1474 insertions(+), 823 deletions(-) create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/acle/general/cops.c