From patchwork Tue Jun 4 11:56:22 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Earnshaw X-Patchwork-Id: 91475 Return-Path: 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 7FBDE39702A1 for ; Tue, 4 Jun 2024 11:58:49 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20608.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e1a::608]) by sourceware.org (Postfix) with ESMTPS id 374C1385E45D for ; Tue, 4 Jun 2024 11:57:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 374C1385E45D 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 374C1385E45D Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f400:7e1a::608 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1717502244; cv=pass; b=jKINlCuwHANvbaftGTndmqecKra0PhJ3T2xghLRAF1EWscplMK9CFUYL80qj1X1hSuMBRNFGW62thzvdrbd4uUiZYV21V0kCyQe/DAQtnuLN+ocaF1Vn+XJIMu6e5hgTSDGuhSOsk4jXx2vB6hwO9KuHp4S6Z51wVAa2A5GI3so= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1717502244; c=relaxed/simple; bh=vqvz+PghNGF1B3MISS5w/oNonK2nUjcwSa3RNNJkC/Y=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=RwTf4hBEX7UiNAukIDKdnjL4Iz+xGWCnHjKLtSsrXzMTR3OixqUYZQlLwNB7fs/A3lF/cZispOMQicRY/rN7n0Vx5o7tvFfhEVZFosrPXLOBwHiVoSUv/91BFZt+SciT/7fk8laO5F5vSw/u77pTIK8FmGuydmHZtSc77ZIp4CI= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=jJIACcyGvL1hlBAlIvWNXDF2i7FJqk3Ksp1M7871mOfmLMzdTJeTbKh+oDrjcPhB3J5pU3aZvRNBfg+pjC3hyQJ41Git3DgDHMkHC9oRh871QUQ2Hz7mTL7Dx8OjaNg3/PzwIfasm0mYCqlHO4DRT9TbUyVJstooWUm5XRy3b2kMUHQdfxXLOZNxk/4VbFbygZwxKX2VjHV+6vLKt+uz0W/NjsLyZzS6swlL1Md9R8jvEqHmq+y/IR+hT3ZhWkh6Je9z3jWiVggqP6OMAA4fUvB4mX7qaQ6DzJgET7yyBIw7eWe91qvVMAp1OPyjghYPYEm+yWRtYSLUgNXBs/Ypdg== 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=n7Nhs9UT04ta3tkZGIy0yWp+WwPyXa2+/R9JAEdr7W8=; b=gS14kC0/ajGL5Rvuoh1qIVgK8WBU/pqjYQ0lhmibm5Eb9kTJw/QmI9jj0xOXroSUjRbiQQTeSO+qkv2Vm8oULjPTi0p54Syull8jBTcuTNmSr/ClKOlNGDeKeBaITjcUmdVjug8YXPSCbdRXXUKz79hcV/2EnBYoilGDBMBDX6A3dsTrCM19dSbLWTOGOwbFHzPo5bpySOarZK/PxyEXINw1amA0BifhVY3dErNGQsJ1slsy0zNbwjeTiLbhfJIr6l0b7rc9fbHdtrabLfWDZItx1elM/b+cm+sqBKXg5plnI0C9neP6P7Io26eCrDCYDte/CjrXiYvLV8Q+T+tXCA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=sourceware.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=n7Nhs9UT04ta3tkZGIy0yWp+WwPyXa2+/R9JAEdr7W8=; b=GgrqOOzn6ilJhj9QwFA4fhfnRfX/GllzxruAABcRfvEZB5tcDAXY5jaGO9NQiPS2gC+ckhA+YwLlKuWleXOFCoJsUm7r+6G/IkxbxgCPKwxC9/LcqXR8OGBL0BtOUzuVldaIHL6ygfnRHsl+IiEGqs1h1z8ntOqTqYvru5F+l6U= Received: from AS9PR05CA0275.eurprd05.prod.outlook.com (2603:10a6:20b:492::13) by AS8PR08MB9791.eurprd08.prod.outlook.com (2603:10a6:20b:614::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.31; Tue, 4 Jun 2024 11:57:19 +0000 Received: from AM2PEPF0001C710.eurprd05.prod.outlook.com (2603:10a6:20b:492:cafe::cf) by AS9PR05CA0275.outlook.office365.com (2603:10a6:20b:492::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.29 via Frontend Transport; Tue, 4 Jun 2024 11:57:19 +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 AM2PEPF0001C710.mail.protection.outlook.com (10.167.16.180) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7633.15 via Frontend Transport; Tue, 4 Jun 2024 11:57:19 +0000 Received: ("Tessian outbound d79ebeff6a2c:v327"); Tue, 04 Jun 2024 11:57:19 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 0942aa990ef4df40 X-CR-MTA-TID: 64aa7808 Received: from ffd9471266dd.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id E266E209-D4E9-4ACE-9EFA-872157BC5C21.1; Tue, 04 Jun 2024 11:57:12 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ffd9471266dd.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 04 Jun 2024 11:57:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KNROfNwkzymkstBqlFYjIhm6Ohpl+vg5cQ4NVEltnz8UAXgDzFyN1vncr1bCRq0GLNYb5HGqw9UC0OGoSEtMYJEB3OWC2zyf41BzpIUPdrWHuSu03MbiDAubWMuythVAd3EArI1RO6xvU9nlUGLCqCiFVnUU4OVB68uAQtoXwnn/UJJCNeeNXcbD/0YuajBi+dZhiYQlpb0wUfj/zlIoOUu8Y3NVwVRP0s9I0BkRENpX41Fj/barkSYbUwgpX7hp+rn66eFFmcnaeXdnfZ0kg9LbaYUc146xj0OVI/v4u6J2ixDU755Ia+hvS2qTxlXFYiXiLte9Q6BnNPnMbG/L2w== 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=n7Nhs9UT04ta3tkZGIy0yWp+WwPyXa2+/R9JAEdr7W8=; b=bYfgVlWY3JOF/EcZLbYeWchIRhsq6Pc3n9Cdk3ORuG+yCT3Yg3iJ9j/zvvbPXNi5sWhymf2YT/s7g4Qo1tod3BBN1cu41P4y+/oQbZ7rlySFHSrOAXkBiFJm0lWjnaPuCp1l1cpks7PLbogQAAICDOaeWcN+1EJXYHvgomi4mHBQzVA2SBpNpiRiS17N+Qvj96FDmHULYyT1/xhUakBK6/FEdbzYarvpSqDvQGjXdxElVO975bQbU+xVlGWmgt+BndbQsaWJTLBa4SRAH+RHpHS2XkDeO9amuYZV4n6yxjCeZGbmLYDmzPd+EgDZQFHqqzhvVyC5wZJqXx230pdmnw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 40.67.248.234) smtp.rcpttodomain=sourceware.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=n7Nhs9UT04ta3tkZGIy0yWp+WwPyXa2+/R9JAEdr7W8=; b=GgrqOOzn6ilJhj9QwFA4fhfnRfX/GllzxruAABcRfvEZB5tcDAXY5jaGO9NQiPS2gC+ckhA+YwLlKuWleXOFCoJsUm7r+6G/IkxbxgCPKwxC9/LcqXR8OGBL0BtOUzuVldaIHL6ygfnRHsl+IiEGqs1h1z8ntOqTqYvru5F+l6U= Received: from DB3PR06CA0034.eurprd06.prod.outlook.com (2603:10a6:8:1::47) by DB3PR08MB8844.eurprd08.prod.outlook.com (2603:10a6:10:439::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.21; Tue, 4 Jun 2024 11:57:10 +0000 Received: from DB5PEPF00014B97.eurprd02.prod.outlook.com (2603:10a6:8:1:cafe::36) by DB3PR06CA0034.outlook.office365.com (2603:10a6:8:1::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.31 via Frontend Transport; Tue, 4 Jun 2024 11:57:10 +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 DB5PEPF00014B97.mail.protection.outlook.com (10.167.8.235) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7633.15 via Frontend Transport; Tue, 4 Jun 2024 11:57:10 +0000 Received: from AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) by AZ-NEU-EX03.Arm.com (10.251.24.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Tue, 4 Jun 2024 11:57:09 +0000 Received: from AZ-NEU-EX03.Arm.com (10.251.24.31) by AZ-NEU-EX02.Emea.Arm.com (10.251.26.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Tue, 4 Jun 2024 11:57:09 +0000 Received: from e120077-lin.cambridge.arm.com (10.2.78.57) by mail.arm.com (10.251.24.31) with Microsoft SMTP Server id 15.1.2507.35 via Frontend Transport; Tue, 4 Jun 2024 11:57:09 +0000 From: Richard Earnshaw To: CC: Richard Earnshaw Subject: [PATCH 05/11] arm: redirect fp constant data directives through a wrapper Date: Tue, 4 Jun 2024 12:56:22 +0100 Message-ID: <20240604115628.784729-6-rearnsha@arm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240604115628.784729-1-rearnsha@arm.com> References: <20240604115628.784729-1-rearnsha@arm.com> MIME-Version: 1.0 X-EOPAttributedMessage: 1 X-MS-TrafficTypeDiagnostic: DB5PEPF00014B97:EE_|DB3PR08MB8844:EE_|AM2PEPF0001C710:EE_|AS8PR08MB9791:EE_ X-MS-Office365-Filtering-Correlation-Id: 10f31f67-0b05-4e87-7275-08dc848d7c8a x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; ARA:13230031|36860700004|82310400017|376005|1800799015; X-Microsoft-Antispam-Message-Info-Original: Ou9m8DQkpd2SFJwWl0u+6xcd+FqaYXt8plr4y9qGtDIu4vrQVyLlQbbK8iIQ47l6SmDFmBGO2Kg0L8rV7bhZFSSNIhh/kTjIbcuzw+AHy0jYdEouHNGI9yzP14tlIyvRTQX7BrEYbqhabts7o0dl36wtzVLUtpQ8lVmCWXZrI1ACOYzs42uEEkigSAi8dM0fFnFoAf4KW0fdfRog+spw1JMA1xxH+F50FMXXCwp8S/qo2fwjf4NatF8Zc+8x9GZ6Rk2P8TvtcTfrTjoEGGorLCTOA5R1wn1hiSC4HmDFhmtq9bZu5zePv9lSovGLOC/qBV28o5KOTnRqhwYdBIxK7lW9xxbWgFNJAcL9XChwFIvMj6xbxcPVK8W9pdg7TXIezNZFg5UJjeQdo9SpzpREEYFBZA7aL8nroQPkOA9TYqbciakcd8Lwydw0iBd20Omgq6MUOkuslDugUZXd1b//FxZNa9XOW4TijSlyG+PFc3JIOgtGetr5n5MRv+epeLoSIDgcw3yiCDWnTJLNSCC3gAa+UjTfy5rXjQuDOPIiBPtvQSrd+VhgnJt+guTCMpQyBW812avY2JBKyRHChJCUGr3h8LKA21u379qhgWGQu+kOnL0U6K8FSn7MjDvGdgJaaDZ0qfD99rXM8u+Kmivxm9oKtUlfPu5ekm3/Zs1wPxv1gFsz8dk3qgiA0GxxbzSktgUDSTW6PHGB1tv/zTmkq+SUh6JsLhloO7jzvIYMFUfSa2VZ/M4nSlCSkLhc7cgVMjtdbDZLqZ3anbbPB+4+yxZkDEgPFOLLlpudaGSVLgZUACieGosAv1k66mZpgzi48ExbX5Uby0KoQ9mCMO6oZhwJ2rru1juBUM0hX3f252FBBsWjoPgn2uF8lGzknYA8o65bmyHjY5fMq6VYheANRZjGwRBamiVH4z9m7llpZwvWCPXp3Zsvw3MtiU4E+Ea0058kYY05e2wKUHFUn1VK4rpZ57TmYYOxTjuGWZ8lkEqPQ4SAKx7DUVF3A3NtV9DR59PKS8VVZ+nHSdi94hrlP5+zbFMl5IC1B96LgyM3sZuGhXmLvu8y7sh9E6c0p4LFOuBjpOp7YC9X2UxddX3uVrhA6fYwwF017yFTJ56ncM7BdmEF5vU17a7+O1iNL78HsD+4bT/mYgTyEB+kgxln2gh/JF4CznRsPB4BK91BLMu0otHTFPfrWwcmr1asqGJs7PI/AeN39FwuW1sEArf7bayR/R4V2s90Wi9j/ydJSyRdSjg5uUJTiywknWnrUm8mzaDX2qho8a6Aj3O0kZrSKPF1RtI1fXCBrdyCefeTbazwEhRZFL7j9/L0MCyGum3NkgdLvLirxvLMVGSsC5wrZQnkRRTSWLxCNFXvj0LbYo0= 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:(13230031)(36860700004)(82310400017)(376005)(1800799015); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR08MB8844 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM2PEPF0001C710.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 943ab728-dff8-4a8e-31be-08dc848d772c X-Microsoft-Antispam: BCL:0; ARA:13230031|35042699013|1800799015|36860700004|376005|82310400017; X-Microsoft-Antispam-Message-Info: MKffsiHT3Aw7mRbHf1v72dE6VnXGa+YPSvRTbzYDrIKRo+7krbYW1RkDa5xNdRQrl2mmpEh1LvpS0xc6coFVV3v9IbLINIRcZ2BxWTA3+4/O2DMPSySW/VwXUP52Y9BgHGvl6SvvKDbLH2JG5ALSnIsZyEy4PNlvs4xnGEQfOFG87drKS0dKXV6BWaiBffptjoQEDZ0+QECrsIvEOAzrECACGARyRr94BdP3AuL1Qg3hr743nsfpXPy9G2QRAzEghjsNOzTy4Mqb+0VvWesnFpTqsVcYjTzw2Uxk/si3/OdX51vNwTdL/zuyHrJlM8SHexJsoxFGdS8xuWgUNXffdSwSRbpwPHC1NKva3548RlhnkoiM9yTg5M5XMOM1AxROzsDVyqtZna/8ScMi2RdHdkxB6kkRsD76R29d1qmcy6JQhH9WvaMpm8qPVXlUuACLn2bRyo7/Mpy3fAGD+Q3tsOm6ZC4vlac3r8I2O+kUqGBiPEfs5a8jLXxLOax1wUL7z7/Zuli3AoF1gAWl8lfhHs3ykAphfih2eOW3j6DJ4kuRY1PZ8IumZAbgMQhKcAbjAj8sNyazZfD8oshn7UABpioQrRTnmP9XOF6ib7Vaw3z2vdNGTtsnjeifWhiZkxtv54BlwhHI5uv/5JsNc7XrRLBQkZv/QpWlr0lsecuSbQHiIOOE3ejd8rLkRI6e8h+y292ZcHUjjTOHHoH+i0ez3w7AyAZXkmw0s1w3U48uec/e+BqbZZFzNBeuRuOOiDa53hFwnhSV8myJI5ND0zDrAROo/SE3GtrOy15kNwh4nRcQTyIw43K6AeCXp4vDjCyCI/ZKKDg6rUxgca8rJ6m5WBYu0i7vLbNN6GYCeRgiAVcyJNlDlXrvYCu2biEn3IpG07y5ouuc5hucdkHXmlhYY1/Rd4SkXtHLe37WspNdeWz/l1E8E9SBvGnUp8D7TV2CnKcV+IAbDR0FsS/oqS8zHAFJ5sfh9hq8HKCB5qJV9mlNYBKkqy8EN2IR39V3B85URRH9yT2UYmZOnJBlSB2pAkY8cGSP3RC9BJ6xKZZLLD2wlmlz/iy0zDZEBY8+84BX2p1YTGf2yQxXM/LMSsLaESw/7KWs+wUQHhVOrlMErYkMy8zvl+TF0aLPEShd1sCR9ZQROdMFpJBJSj57nY9MBQ7y8brWE66wmXSr543ljVl6fQ3jrD6JAj/bzXwUSfUzDjqqfDBB6UxUxTZwIcZaCSgicKl56ffCjlQ2krTTQ5loe4sRHO2rvWLZMbY3l7Z9vieTqdX5/dIugf+RI5RS9OzDGpogKdxg7puxQzhRIiivN/yLH/6mMC9Ynfz8OIjTyjDafJo5Hz1C7SuFOr/nC9r3VAqt1GYi5TKQgaWAmWY= 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)(35042699013)(1800799015)(36860700004)(376005)(82310400017); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jun 2024 11:57:19.3689 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 10f31f67-0b05-4e87-7275-08dc848d7c8a 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: AM2PEPF0001C710.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9791 X-Spam-Status: No, score=-13.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, 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 X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+patchwork=sourceware.org@sourceware.org Assembler directives such as .float, or .double are handled by generic code, but on Arm, their output can vary depeding on the type of FPU begin targetted. When we remove FPA support we don't want to silently generate different code for processors that previously defaulted to the FPA, so redirect these directives through a wrapper function that checks the FPU is enabled; we use the legacy -mno-fpu in the test to catch this. Also fix a few tests so that they won't start to fail on targets (eg arm-wince-pe) where there is no default format for the FPU and we pick this from the default processor type. --- gas/config/tc-arm.c | 25 +++++++++++++++---- gas/testsuite/gas/all/gas.exp | 2 ++ gas/testsuite/gas/arm/bfloat16-directive-be.d | 2 +- gas/testsuite/gas/arm/bfloat16-directive-le.d | 2 +- gas/testsuite/gas/arm/float16-bad.d | 1 + gas/testsuite/gas/arm/float16-be.d | 2 +- .../gas/arm/float16-format-opt-bad.d | 2 +- gas/testsuite/gas/arm/float16-le.d | 2 +- gas/testsuite/gas/arm/fp-directive-bad.d | 4 +++ gas/testsuite/gas/arm/fp-directive-bad.l | 7 ++++++ gas/testsuite/gas/arm/fp-directive.d | 9 +++++++ gas/testsuite/gas/arm/fp-directive.s | 7 ++++++ 12 files changed, 55 insertions(+), 10 deletions(-) create mode 100644 gas/testsuite/gas/arm/fp-directive-bad.d create mode 100644 gas/testsuite/gas/arm/fp-directive-bad.l create mode 100644 gas/testsuite/gas/arm/fp-directive.d create mode 100644 gas/testsuite/gas/arm/fp-directive.s diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 9294619e1a4..1ba7bb31ac5 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -5148,6 +5148,14 @@ set_fp16_format (int dummy ATTRIBUTE_UNUSED) ignore_rest_of_line (); } +static void s_arm_float_cons (int float_type) +{ + /* We still parse the directive on error, so that any syntactic issues + are picked up. */ + if (ARM_FEATURE_ZERO (selected_fpu)) + as_bad (_("the floating-point format has not been set (or has been disabled)")); + float_cons (float_type); +} /* This table describes all the machine specific pseudo-ops the assembler has to support. The fields are: pseudo-op name without dot @@ -5212,10 +5220,17 @@ const pseudo_typeS md_pseudo_table[] = { "loc", dwarf2_directive_loc, 0 }, { "loc_mark_labels", dwarf2_directive_loc_mark_labels, 0 }, #endif - { "extend", float_cons, 'x' }, - { "ldouble", float_cons, 'x' }, - { "packed", float_cons, 'p' }, - { "bfloat16", float_cons, 'b' }, + /* Override the default float_cons handling so that we can validate + the FPU setting. */ + { "float", s_arm_float_cons, 'f' }, + { "single", s_arm_float_cons, 'f' }, + { "double", s_arm_float_cons, 'd' }, + { "dc.s", s_arm_float_cons, 'f' }, + { "dc.d", s_arm_float_cons, 'd' }, + { "extend", s_arm_float_cons, 'x' }, + { "ldouble", s_arm_float_cons, 'x' }, + { "packed", s_arm_float_cons, 'p' }, + { "bfloat16", s_arm_float_cons, 'b' }, #ifdef TE_PE {"secrel32", pe_directive_secrel, 0}, #endif @@ -5226,7 +5241,7 @@ const pseudo_typeS md_pseudo_table[] = {"asmfunc", s_ccs_asmfunc, 0}, {"endasmfunc", s_ccs_endasmfunc, 0}, - {"float16", float_cons, 'h' }, + {"float16", s_arm_float_cons, 'h' }, {"float16_format", set_fp16_format, 0 }, { 0, 0, 0 } diff --git a/gas/testsuite/gas/all/gas.exp b/gas/testsuite/gas/all/gas.exp index b9ff43997cb..af461b1988d 100644 --- a/gas/testsuite/gas/all/gas.exp +++ b/gas/testsuite/gas/all/gas.exp @@ -47,6 +47,8 @@ if { ![istarget cris-*-*] && ![istarget crisv32-*-*] && ![istarget z80-*-*] } then { if { [istarget tic4x-*-*] } then { set as_opt "" + } elseif { [istarget arm*-*-pe ] } then { + set as_opt "--defsym hasnan=1 -mfpu=softvfp" } else { set as_opt "--defsym hasnan=1" } diff --git a/gas/testsuite/gas/arm/bfloat16-directive-be.d b/gas/testsuite/gas/arm/bfloat16-directive-be.d index 8862f8302f7..44eadb33194 100644 --- a/gas/testsuite/gas/arm/bfloat16-directive-be.d +++ b/gas/testsuite/gas/arm/bfloat16-directive-be.d @@ -1,7 +1,7 @@ # name: Big endian bfloat16 literal directives # source: bfloat16-directive.s # objdump: -s --section=.data -# as: -mbig-endian +# as: -mbig-endian -mfpu=softvfp .*: +file format .* diff --git a/gas/testsuite/gas/arm/bfloat16-directive-le.d b/gas/testsuite/gas/arm/bfloat16-directive-le.d index da94b6b254c..c595d8b065a 100644 --- a/gas/testsuite/gas/arm/bfloat16-directive-le.d +++ b/gas/testsuite/gas/arm/bfloat16-directive-le.d @@ -1,7 +1,7 @@ # name: Little endian bfloat16 literal directives # source: bfloat16-directive.s # objdump: -s --section=.data -# as: -mlittle-endian +# as: -mlittle-endian -mfpu=softvfp .*: +file format .* diff --git a/gas/testsuite/gas/arm/float16-bad.d b/gas/testsuite/gas/arm/float16-bad.d index 8eac0af5cbb..604bb20adaf 100644 --- a/gas/testsuite/gas/arm/float16-bad.d +++ b/gas/testsuite/gas/arm/float16-bad.d @@ -1,3 +1,4 @@ # name: Invalid float16 literals (IEEE 754 & Alternative) # source: float16-bad.s # error_output: float16-bad.l +# as: -mfpu=softvfp diff --git a/gas/testsuite/gas/arm/float16-be.d b/gas/testsuite/gas/arm/float16-be.d index e31d9fbf432..b63d6cd49d5 100644 --- a/gas/testsuite/gas/arm/float16-be.d +++ b/gas/testsuite/gas/arm/float16-be.d @@ -1,7 +1,7 @@ # name: Big endian float16 literals (IEEE 754 & Alternative) # source: float16.s # objdump: -s --section=.data -# as: -mbig-endian +# as: -mbig-endian -mfpu=softvfp .*: +file format .*arm.* diff --git a/gas/testsuite/gas/arm/float16-format-opt-bad.d b/gas/testsuite/gas/arm/float16-format-opt-bad.d index 861125800da..af8cca48956 100644 --- a/gas/testsuite/gas/arm/float16-format-opt-bad.d +++ b/gas/testsuite/gas/arm/float16-format-opt-bad.d @@ -1,4 +1,4 @@ # name: Invalid combination of command line arguments and directives # source: float16.s # error_output: float16-format-opt-bad.l -# as: -mfp16-format=ieee +# as: -mfpu=softvfp -mfp16-format=ieee diff --git a/gas/testsuite/gas/arm/float16-le.d b/gas/testsuite/gas/arm/float16-le.d index c1fe7c20dc6..abbf09202be 100644 --- a/gas/testsuite/gas/arm/float16-le.d +++ b/gas/testsuite/gas/arm/float16-le.d @@ -1,7 +1,7 @@ # name: Little endian float16 literals (IEEE 754 & Alternative) # source: float16.s # objdump: -s --section=.data -# as: -mlittle-endian +# as: -mlittle-endian -mfpu=softvfp .*: +file format .*arm.* diff --git a/gas/testsuite/gas/arm/fp-directive-bad.d b/gas/testsuite/gas/arm/fp-directive-bad.d new file mode 100644 index 00000000000..dfa01e6829c --- /dev/null +++ b/gas/testsuite/gas/arm/fp-directive-bad.d @@ -0,0 +1,4 @@ +#name: floating-point directives disabled +#source: fp-directive.s +#as: -mno-warn-deprecated -mno-fpu +#error_output: fp-directive-bad.l \ No newline at end of file diff --git a/gas/testsuite/gas/arm/fp-directive-bad.l b/gas/testsuite/gas/arm/fp-directive-bad.l new file mode 100644 index 00000000000..263cc9e6de4 --- /dev/null +++ b/gas/testsuite/gas/arm/fp-directive-bad.l @@ -0,0 +1,7 @@ +[^:]*: Assembler messages: +[^:]*:2: Error: the floating-point format has not been set \(or has been disabled\) +[^:]*:3: Error: the floating-point format has not been set \(or has been disabled\) +[^:]*:4: Error: the floating-point format has not been set \(or has been disabled\) +[^:]*:5: Error: the floating-point format has not been set \(or has been disabled\) +[^:]*:6: Error: the floating-point format has not been set \(or has been disabled\) +[^:]*:7: Error: the floating-point format has not been set \(or has been disabled\) diff --git a/gas/testsuite/gas/arm/fp-directive.d b/gas/testsuite/gas/arm/fp-directive.d new file mode 100644 index 00000000000..46ff9e9c571 --- /dev/null +++ b/gas/testsuite/gas/arm/fp-directive.d @@ -0,0 +1,9 @@ +#name: floating-point directives +#objdump: -s --section=.data +#as: -mfpu=softvfp + +.*: +file format .*arm.* + +Contents of section \.data: + 0000 .* + 0010 .* diff --git a/gas/testsuite/gas/arm/fp-directive.s b/gas/testsuite/gas/arm/fp-directive.s new file mode 100644 index 00000000000..c6fc22760f7 --- /dev/null +++ b/gas/testsuite/gas/arm/fp-directive.s @@ -0,0 +1,7 @@ + .data + .float 1.0 + .double 2.0 + .single 3.0 + .dc.s 5.3 + .dc.d 6 + .float16 4.0