From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on2066.outbound.protection.outlook.com [40.107.6.66]) by sourceware.org (Postfix) with ESMTPS id 0C66B3858D1E for ; Mon, 20 May 2024 12:09:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0C66B3858D1E 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 0C66B3858D1E Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.6.66 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1716206961; cv=pass; b=V+9y5r6Kl9gRMSVQFsKZz7l1m+PReaU8kB+mOJ9BMZT2lhuVKeJTKu/AOKlzXmpdlZ4YElleMwJIxIdFcLnZCNvQ2wXFIRKs8z9n0MEaVVXpzMoMJoYcKgBHoLlxzglbYRATqmSHpqTFUAJeCMPJ7Z2MWz9Wq/SdC7jKPgHX6N0= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1716206961; c=relaxed/simple; bh=gC6DSMnZpc3p0Cg0hLd/CnogU7ctVxTVITtlREph3HQ=; h=DKIM-Signature:DKIM-Signature:Date:From:To:Subject:Message-ID: MIME-Version; b=FW4on34hBZNXsn4PLFxryTfVmaf8ktoHSOJmYDB4G1Ad61y7jMGOEl88tH8BeS+YBBnQUNArYb1udOuofEj1MN0Ojmy7cdzwoYBJqqvpNoQLJbkKElZ/E95oH03Fw8bSD2+NFxbwqzBIiwsE2BU3HBYIhlYaLdeakVJz5AdByXg= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=XOy6HhgTsVdT5nd2lN2zOPtFqi3nVXyCnb3k4MMdVcBIBrwW+uLvSmECLpV+IdZ0TfhH6IY8RDcLFQKvuYh3QwRBrnI/EPZpN1tBBjDIPHgJkwCtGOEx4E/EP2dKJTwEEoIB+qTnm8AlpoWmLGjOGKU3JVMMXY6qrsJBIGWaR8W2IbVWXWmHFHwBQECcvJesPMVzIWTyOoyR0FD3sxlg1EZf5x/gNPnfnWYn9MrnN5PQajCNhDigFPl9yry4fCQDDUOmOVLysGGpJ6pL+r29NRBvzNLlEhcJwXFdJutt7lwAIjQBapO6nmANAIsh9sSMqvq78elQNqHcC0zuUGBkRA== 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=DjsnCpxks8Gkfwz0J1xalLOXxS7oe5ladYf8/3PySys=; b=eBZNhT6+6yLgC84NckRN2Ii2QlzCj+0XHdWE3tPU9GicR/XxCr4JaK57bnYUTjALb6V1pGXlQt2rvvhPBic2PmsPvQWM9YkpWxWcQh46Y6hdqFc/4og1oGsJbrgFFQ0i6jVQoYX/Q3dAkIYiWbEiQofVj3stj9vDCCmfHGfM8z7EewF7047nKVq0Z1H9FdslKnXIR9o81yzJw5vQYaTQD6ESULtx70TgY7y0FtwSirGXdZq6exON8kSARz6MAY4wjlIxKBOu5AQXl20TxwOZBkHUi5GO8eop8E2YeuN6KB17rCqzoGGD5saVY1Nw1A2rDi7PfbuZs+/jGWFhm3xnEg== 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] 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=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DjsnCpxks8Gkfwz0J1xalLOXxS7oe5ladYf8/3PySys=; b=oAGVxV4gLMnNgceenKBABbGBgCz64XKtRvnoIOR5o2Vd4KvQCzJcW94mVXb4PaWAmqn1dDYT9kxE98i3kFB9PTAcEQ69wY4LEDr3dx1JfFKuUcQK13dC36gU6qKAlzXG82dHpozNlQD1pfpxp3P6vQCUh62RsrThVdfL7sYtaAI= Received: from DB7PR03CA0085.eurprd03.prod.outlook.com (2603:10a6:10:72::26) by AS8PR08MB6152.eurprd08.prod.outlook.com (2603:10a6:20b:298::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.35; Mon, 20 May 2024 12:09:17 +0000 Received: from DU2PEPF00028D09.eurprd03.prod.outlook.com (2603:10a6:10:72:cafe::69) by DB7PR03CA0085.outlook.office365.com (2603:10a6:10:72::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.36 via Frontend Transport; Mon, 20 May 2024 12:09: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=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 DU2PEPF00028D09.mail.protection.outlook.com (10.167.242.169) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7611.14 via Frontend Transport; Mon, 20 May 2024 12:09:16 +0000 Received: ("Tessian outbound b7675f20d34d:v315"); Mon, 20 May 2024 12:09:15 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 07fd253db85c7337 X-CR-MTA-TID: 64aa7808 Received: from 12ac077831f7.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 45F7BFBA-007E-42D1-B649-B37E6FBC55CC.1; Mon, 20 May 2024 12:09:09 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 12ac077831f7.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 20 May 2024 12:09:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=a0ZkEfUzP5V+WGMF8NZRKO4OUJMwI1faDlXmCYoeoLf3muX+9Jn30K+7J1XGCEgmO0B1zLkldL+FZskGyzBmAGRXyjUf2gcg+OM3/b/AqMNd65s77WKi9f8qTCo0RKyNxYZhf1fdP9FxIn1CudBbM7DC+fYDYwFmLy5Q5dcsEWKpkmyAsbEaHqvMNBGjFzxE+BnYsAcOeXcvI0mNUnobebhBls964zcHqWCS2imU0C0AchetZosC+F0QUoI/3iNyZoD+MdERL2NRuTEFrwZDZ7FA0jwwZJrTy40YbA1KDxC6QUujQQPivfiOe1Cf9wvu9AlQkrPQrrNr82+ymXpbuQ== 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=DjsnCpxks8Gkfwz0J1xalLOXxS7oe5ladYf8/3PySys=; b=JfXKtK/7+qf78h7DSzb7BmyWcasiegvLQEbiAGwY7sJoypbRHoHJ7svVQSS2HMcUNY0FaTOcaPiKzXpkPw2/eJb8E+hcNgM8gYjiimD8wVtYxspnjxNdqZxvMgPaA1HOu/yPJ5/2TwlriinHRagOeaouS9MDcfNgwHpviKOwYmmnQPrpmgtKlYsBFsKiS8axuWayZbxnnqbtl2LgtDVWru8LGRUIaflDqwZAlul2t070mlRVtZJ4DqR+YhDVhI053Rl0GGEYxRv5Dkr9OWz7qmhk8es2OOrLNfdmedQSk8/1sULkf37vpcTNkriPsMj0SCLYrEQmk9w40jgv4QaPzA== 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=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DjsnCpxks8Gkfwz0J1xalLOXxS7oe5ladYf8/3PySys=; b=oAGVxV4gLMnNgceenKBABbGBgCz64XKtRvnoIOR5o2Vd4KvQCzJcW94mVXb4PaWAmqn1dDYT9kxE98i3kFB9PTAcEQ69wY4LEDr3dx1JfFKuUcQK13dC36gU6qKAlzXG82dHpozNlQD1pfpxp3P6vQCUh62RsrThVdfL7sYtaAI= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from AS8PR08MB6678.eurprd08.prod.outlook.com (2603:10a6:20b:398::8) by AM7PR08MB5334.eurprd08.prod.outlook.com (2603:10a6:20b:10b::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7587.35; Mon, 20 May 2024 12:09:07 +0000 Received: from AS8PR08MB6678.eurprd08.prod.outlook.com ([fe80::3b48:ae45:5b79:cc29]) by AS8PR08MB6678.eurprd08.prod.outlook.com ([fe80::3b48:ae45:5b79:cc29%6]) with mapi id 15.20.7587.030; Mon, 20 May 2024 12:09:07 +0000 Date: Mon, 20 May 2024 13:09:05 +0100 From: Andrew Carlotti To: gcc-patches@gcc.gnu.org, richard.sandiford@arm.com Subject: Re: [PATCH 00/12] aarch64: Extend aarch64_feature_flags to 128 bits Message-ID: <6afc1c8a-bb67-3d24-c96c-5fb2aef35be4@e124511.cambridge.arm.com> References: <0c99ec88-434d-a9de-0e0e-c281cb2dff4d@e124511.cambridge.arm.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: LO4P265CA0140.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2c4::13) To AS8PR08MB6678.eurprd08.prod.outlook.com (2603:10a6:20b:398::8) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: AS8PR08MB6678:EE_|AM7PR08MB5334:EE_|DU2PEPF00028D09:EE_|AS8PR08MB6152:EE_ X-MS-Office365-Filtering-Correlation-Id: 3976be5b-b6fe-4249-1eef-08dc78c5ab7c x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230031|376005|1800799015|366007; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?F0XXbp2bmdz5mmqnJ0v6d7GrZJt0Hcj3Fkd46sBFnTGtQlJ7x0D83CzdbGma?= =?us-ascii?Q?GPYYumR/fKfxch03TTyiiR2YTAr+TDfmfYfqczv6PD4RUITQwFDuCc2FIlrn?= =?us-ascii?Q?4fqlGb1fFt6DEFC2nCDb/F2BbbfQG/o6az3rlZME2voUxw8RmTPyzc5BQEd5?= =?us-ascii?Q?yaklHnn1LlUyejqPKknNrmXziZ/F6VexT05wsfxV8jvtTCpCUiDxClzVpqLK?= =?us-ascii?Q?4Uxl5rOGo9u3SeEFtLc6NMZwPDfCTaQsEcOLRiWHfb4Kg/+oll9RcvPT/frz?= =?us-ascii?Q?OrxLvkc2udsWePT6/Urpn0PaeVzDH0x4Z6nxVhSMg6TnoGcta3XHKLcvqoi+?= =?us-ascii?Q?eG9Sj9wmTGJdpXH+4IHfRdJ/vUqXxlFsRhn8PXGV9dBBUt3PuNT/evgDA3/q?= =?us-ascii?Q?pjvKcFZaCVrebkDTaOLl7KM3OjwsWyo3pQil3WEPfZrYZvg8h/7B3d4KYCUW?= =?us-ascii?Q?WLT1gs9rZtXdrMRG3gU7BZyT3QKw9JgmqWmJ2x8JGEVL+MYbRta1WkWz467z?= =?us-ascii?Q?/Li4K/8fZHPr4VVFprxxMiEz8WLK/nk1PHG95FA+qPWzlEvwyj4Zoj6Ll0V9?= =?us-ascii?Q?tI0wj85VbJVHs0D2JHiZOvGHiewftPVgt2Lduq/IvLT2ZXLZOYRleMyQyHHv?= =?us-ascii?Q?AVKBayoe1DLBPgjA2AB8EN2KDIM6r6vLeDjMyuM2K5Pdepjr0hzJrwMpXStQ?= =?us-ascii?Q?ZD4AxImiNOY/GmwX3P1k0xtRdpWWeg2xDrFv2ZhWys1aLJ3wjFQFGrruFc1s?= =?us-ascii?Q?21HJSXFMfbtfER7n2MwVOyxZNNxB5wMsvdAhUK9jLVEMMedtc16OnDJ2EIHQ?= =?us-ascii?Q?ih4yp/ZmC4EYG8aeyePurAS5hMfW50ZDnCWKa2CKV9IVRYDolIXuMh1x3WX2?= =?us-ascii?Q?WFoDXV6hViBk6InvoiNRSKRkGZygZ2b5+7qYrigwHGZtAYZIXof6epWubCiO?= =?us-ascii?Q?uPlUnx8Xq0rYnejYHIpFGdO6doiQw0HiBy/sPANpkXWryUONIukxZ2g2349/?= =?us-ascii?Q?zelGscw9+Gfl12hDE9flj7GcRFKopufrJO8R9eY9kY6Q1zE8koUOdPurkloA?= =?us-ascii?Q?UECGCdg0XnRaSgcxWOXKnTIfjpM9pU3RweSeDHNEdc1SeUo2S9UEsfivx5zs?= =?us-ascii?Q?dfC33+gNm+l2243goP2jsvcyAGeEN0rGgs34YSQGnShxQ2TPtJ/gh6qXpn9s?= =?us-ascii?Q?YxxFv6BLxexD1j85cmlB/+RaHcDUDKh2+eacRZBiLZylMrFO5RpSpLrw0IwV?= =?us-ascii?Q?6Wo0S6Xeqo1WomOULjJdsjq3xlhipIybe6z0TH1dAg=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6678.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(1800799015)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5334 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: DU2PEPF00028D09.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 0e7493c6-b510-4e56-0af2-08dc78c5a644 X-Microsoft-Antispam: BCL:0;ARA:13230031|376005|36860700004|35042699013|82310400017|1800799015; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?PdBDOWH5Mlpki93dvEjQmaIjB+Cby4sQk8rbLwuAkXcDB+WrvMnBX9k6uG87?= =?us-ascii?Q?y4OLc9uc7fAQfc/n/bwyBWebZiscImn7sz7SJea9220ROEw6d7Vi6rH7X6ZU?= =?us-ascii?Q?nAem6KpNnPnfCzuXplqEoqPRIeCxgkUBzTpfoLzAiBqTcXKm/Jte4ZoJM9tr?= =?us-ascii?Q?0sEKscFxZtP4jpfnExR9Mc3ycQvNHW3qBZCBEwR1YaBJGM7iG9fiG0p2EkEz?= =?us-ascii?Q?k2U0aGdh3H5B5XRuJgZity3waZIJ/BZOmpCVsUHtlSaLf0edTXan0C4Ok7jk?= =?us-ascii?Q?MR1CELQ1vqKJfstwjwHPFtwHn6eiqqiMkKlwOeNeruw8nenu4B+Ob5GT0AOw?= =?us-ascii?Q?L+nwNaaJ/w7CEJNtEXt9QbwSwxulmr4VT6RDAj+6PCQ7PVwCSjQ/NdagguJz?= =?us-ascii?Q?SL6PIJP0/WWEwYtja1Fm/xumEsG+GEzSPAqRJBwg8IlpHjxkTsIIlHSoEjLq?= =?us-ascii?Q?TGpEer84Xvag/oM6DacUt501ZzxHWGklpxXxNEK4aRjvfbuKA6LYG14L12RG?= =?us-ascii?Q?IogDlU3YAP2+j/iwpwHiOsiOlnfAvnt4Q+rm4cRaa2F7P7jF6VHD7KI/tA8z?= =?us-ascii?Q?a/PqNrc6i4CRv3dOCR12GyNLsGt5xLKyLp14dUXvzacZIVHbgZoJvV9beADR?= =?us-ascii?Q?ugAk5rTayLBv9S/yX3P+8TVZqUO6o2FUXxAeyFYbkGpTFW4YhkWVGP9LxYPO?= =?us-ascii?Q?qPsVw2u0AvNo/tCm5DVRwpAwTsi7tHpi0i4ghp+4RhRBeZ2SZE4oyAnN7XJR?= =?us-ascii?Q?R8GVvqsWV/n70PqdpVosCyzEqrmqV2vQDU06XyCiyHb2CLbr65pAKpwc4WlM?= =?us-ascii?Q?7UxPBw4tzSKE0oijFgTiZQurI+0m+2WiR+B9xBoTBk6usaqdDxOBeWB8Hgqi?= =?us-ascii?Q?TYyzeKMzko8mGf6HzPOIcCCiqIYT/LluQ1E9pfrPZIUUt7g7dxVid3bOdXze?= =?us-ascii?Q?T3+NiAx9eT/dXrBblnNvBGtdwe309TKNlY88e+YqQ/Go34W3c/YQ3C/6ODRQ?= =?us-ascii?Q?9CngU7pl4oRkqujPqXS7O+WvscMAae+HZoRlttiUncy1hi3qH3BQlg+fYSXN?= =?us-ascii?Q?imhFtGJsW/Y4Kaar1nYaaV9ZWScSGYLpWqIIz3Xv6s/AH/wKnpplGEN/or/j?= =?us-ascii?Q?WUBr8eQxVq71IAzpYPv6wihLcfDL4fD+YSdabsk+Lcquc9Ucu9/KfoLQhH3R?= =?us-ascii?Q?zZjpTWkie5BIAH44AwOBWMYrXDhf2GHvl6xclUJdfySUXwHUEcE1uoABP9i6?= =?us-ascii?Q?4yuztphzY4yGhsy3sL54IKiHB3+gEzzV5vwxoJz8JWJwptdQVqmiRlsUDc+M?= =?us-ascii?Q?0vkxLBprp32ZRzrZ7VbICECtzTMoms/Y7veAURQf/fIS6PcPLiwzpLHOpCpy?= =?us-ascii?Q?FgNGcDz1N5RzFUy473F0QB36IkTL?= 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)(376005)(36860700004)(35042699013)(82310400017)(1800799015);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2024 12:09:16.0540 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3976be5b-b6fe-4249-1eef-08dc78c5ab7c 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: DU2PEPF00028D09.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6152 X-Spam-Status: No, score=-6.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,RCVD_IN_MSPIKE_H2,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 List-Id: On Fri, May 17, 2024 at 04:45:05PM +0100, Richard Sandiford wrote: > Andrew Carlotti writes: > > The end goal of the series is to change the definition of aarch64_feature_flags > > from a uint64_t typedef to a class with 128 bits of storage. This class uses > > operator overloading to mimic the existing integer interface as much as > > possible, but with added restrictions to facilate type checking and > > extensibility. > > > > Patches 01-10 are preliminary enablement work, and have passed regression > > testing. Are these ok for master? > > > > Patch 11 is an RFC, and the only patch that touches the middle end. I am > > seeking clarity on which part(s) of the compiler should be expected to handle > > or prevent non-bool types in instruction pattern conditions. The actual patch > > does not compile by itself (though it does in combination with 12/12), but that > > is not important to the questions I'm asking. > > > > Patch 12 is then a small patch that actually replaces the uint64_t typedef with > > a class. I think this patch is fine in it's current form, but it depends on a > > resolution to the issues in patch 11/12 first. > > Thanks for doing this. > > Rather than disallowing flags == 0, etc., I think we should allow > aarch64_feature_flags to be constructed from a single uint64_t. > It's a lossless conversion. The important thing is that we don't > allow conversions the other way (and the patch doesn't allow them). I agree that allowing conversion from a single int should be safe (albeit it was probably helpful to disallow it during the development of this series). It does feel a little bit strange to have a separate mechanism for setting the first 64 bits (and zeroing the rest). Do you consider the existing code in some places to be clearer than the new versions in this patch series? If so, it would be helpful to know which patches (or parts of patches) I should drop. > Also, I think we should make the new class in 12/12 be a templated > type that provides an N-bit bitmask. It should arguably > also be target-independent code. aarch64_feature_flags would then be > an alias with the appropriate number of bits. I think the difficult part is to do this for generic N while still satisfying C++11 constexpr function requirements (we can't use a loop, for example). However, while writing this response, I've realised that I can do this using recursion, with an N-bit bitmask being implemented as a class containing an M-bit integer and (recursively) and (N-M)-bit bitmask. > For the RFC in 11/12, how about, as another prepatch before 12/12, > removing all the mechanical: > > #define AARCH64_ISA_LS64 (aarch64_isa_flags & AARCH64_FL_LS64) > > style macros and replacing uses with something like: > > AARCH64_HAVE_ISA (LS64) This sounds like a good approach, and is roughly what I was already planning to do (although I hadn't worked out the details yet). I think that can entirely replace 11/12 in the context of this series, but the questions about instruction pattern condition type checking still ought to be addressed separately. > Uses outside aarch64.h should arguably be changed to TARGET_* instead, > since the convention seems to be that TARGET_* checks the underlying > ISA flag and also any other relevant conditions (where applicable). > > Thanks, > Richard