From nobody Sun May 12 07:59:20 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1689165267; cv=none; d=zohomail.com; s=zohoarc; b=O7TWm5G5n3SVT2ztbpdqT1wYf4VoE/UMIcQztQuwS+PVLCFotVnjkud9ZkdCWNHVxnBnHBbf85tMWfk6/pm+/SCRXt/U+vbgJX7Mdfq5H6iziXARKIHGfi8wh8eDn+1B8Qwb+l2TexERf7U3GNEmN4B1xM4DAMxwAJq9laVqTfU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689165267; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=rtLOHvDW3yXb0XGX8XzAuCLdaHStzU+kOEDq0XjqWuA=; b=P25OQbegWoqgaius+UCaFm/0vroRXZknBnJyNOLsd0SFICNj/Qt43lAa+ZxtTHAvcmL5FLrKEshSsNqKzp6MxuTaYsRsHskY+2T6MJOB7UbLbudL3aW6+mEI4frrgP1Cx2ntX1hPpH6WIKbigoBI2ulGsryAwIZwwn0/9zd0lyo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1689165267394777.9534669144173; Wed, 12 Jul 2023 05:34:27 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.562452.879115 (Exim 4.92) (envelope-from ) id 1qJZ2b-0002tq-02; Wed, 12 Jul 2023 12:33:57 +0000 Received: by outflank-mailman (output) from mailman id 562452.879115; Wed, 12 Jul 2023 12:33:56 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJZ2a-0002tj-TU; Wed, 12 Jul 2023 12:33:56 +0000 Received: by outflank-mailman (input) for mailman id 562452; Wed, 12 Jul 2023 12:33:55 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJZ2Z-0002td-Su for xen-devel@lists.xenproject.org; Wed, 12 Jul 2023 12:33:55 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20621.outbound.protection.outlook.com [2a01:111:f400:fe13::621]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 5c6580c5-20b0-11ee-8611-37d641c3527e; Wed, 12 Jul 2023 14:33:53 +0200 (CEST) Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) by AS4PR04MB9292.eurprd04.prod.outlook.com (2603:10a6:20b:4e7::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.32; Wed, 12 Jul 2023 12:33:51 +0000 Received: from AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e]) by AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e%7]) with mapi id 15.20.6565.016; Wed, 12 Jul 2023 12:33:51 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5c6580c5-20b0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HjkcbXJKpkJgADoQrPWMuRUJjgUDSQTxUcVZCAfFcSAioOvD0DXcSGPkki6dkfmixbttxclxA+NcxJDtkluo64pAT7v1eV1Zj4Rs9pswk0n84Wbvlq1d7FyhqWTTSWMSqXEibRnal1OMI21kcJj0lEhrPn+xdpQZcgbTGbdNLHwRLaNL5vSNx0D/N4r0vDsBUHYdIiJfdTQO37ZKuT3siNBp9EsA7JWUK7uCzaMccy3I64mk1Z9vzSwYxfz9LKZnpAk5XbP+t/4n1q6diIBbMSyK8/77bCNd3Tz4rr15vAmHwaVo7Da/n9FGyEzvQJU9LlK2y6zRlQ+Umq+Yc8iA8g== 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=rtLOHvDW3yXb0XGX8XzAuCLdaHStzU+kOEDq0XjqWuA=; b=I4fKpzesTseIoyK38wJ4GmMgVt7S8m0EN1FiBcaGCfkrdme32hxC16SxWzVC52T2Pw0Eb6HwKNG+3PSnZqfGuHD1EieoiePMnccfRG2epW0VCbK+OA3wMSwCP04bk62ZmFc1U04dMZjmSk/4okQ/OkPwRBpfvB28RfEt62p+rN/X53Rx74z407JwymWHE9rvexKewdA1o6rpTMFn/mNgR24ez2kB2kIR/Lj+HqbIbfKLEaUSj/kkGVoq6wMTzeEyLy9qw9xxkfHW4URJhV4Oz+op9aM/LJCnzggAeOdekElklz8NeG43JOSgX8p2t7AwRy84oVCrgiFQEu16XgOLBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rtLOHvDW3yXb0XGX8XzAuCLdaHStzU+kOEDq0XjqWuA=; b=oqlTc+fin4OP8CvpFNUXlGbx4eELx5eNb/lzUcIuWlKFiPbhpRho5qhM/UPbmiZwgmuncaPlp3F44p8Gj7yU483/4GvaWp0QwNSobomhvPOeGJ5U5N0+dAh2NFu30ecAc1SdgHw3GqVc234GMobCiFcJDXW9r2TK9Mwxm2ZRf11r2L9FbmUM+qAsjkP7P1Otzx4Q/y8B/s24xphlQ1z7dX6H5z9vCh9a9qPWt/zUDvbbFGOfPfbeC1SkCEpSMXmOBOPm5Lji+O8H4z+94T/dAmxJpLnrbhfuCqP33c+m4VsIRDPd0BBtvuGZNcs58Rxgmvvz8GLvLHjzyx/a1aOnKA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <6f462a2f-2e91-6397-a527-18eeade19476@suse.com> Date: Wed, 12 Jul 2023 14:33:49 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: [PATCH 1/3] x86: allow Kconfig control over psABI level Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> In-Reply-To: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR3P281CA0202.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::6) To AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS4PR04MB9292:EE_ X-MS-Office365-Filtering-Correlation-Id: f46273bf-9082-4e09-b993-08db82d43f84 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rDLpCWTtimiydtP2txdryUMtLZG6UC8YLtyg8tJizd8AW2UAz8cUAGBUmRfN1qmP/Z83NEcsqua8m64AJ/pniwvpAYEm4BleINJ2GRLODevHiAJ19J0v4okArk/hbkwcIuEyHI3jnwR2NVbITECjM90mdL9wRa9/bNuCIiIMJphp8raET0cOBtHwewmRjuhjlMLWnojxkvWO7QwWb3KiBtI6Yge6lTkKLEjH5RFx1ICuCQqNKqRm6NeujPivN8pVBG0q0wD84sVKsbilZ4vEc/XtB1eTfEFpwka5r2yAHmqA/6472xZlP9KSwRfS/vaXSAYa7f7VL/7ASdy8e1rCSdxvZJBTlURwUFBI8fthfY4zElyKQIifmO6E6bwsaNkSep1GroZPx38sapNtatW4S+j2FsqEA6bEBsPM7KA1a/ef2yMaWAIAUfB/10jGR3N6eA3THMILRqv1jgVJek9lfUCGLriVkClHP/pyVGfjS/gQg54fuVVqwyjHlZlf26JgTv/hf5GN1JTVckcSl84ebD63UDWZH9vtM+3ht7cJ2p4fuhjlZnFc/kUCVBjwzSc0EsayxGevsrFTHLJqGU7wmY/TOPeGXPrb6i1CPq26rFzs97feydkSwkQYK0AUbehPB8+THNndApqBHGcFtriIbQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(136003)(346002)(39860400002)(376002)(451199021)(2616005)(2906002)(66556008)(6486002)(66476007)(4326008)(316002)(66946007)(83380400001)(54906003)(6916009)(478600001)(26005)(8676002)(186003)(6512007)(5660300002)(6506007)(41300700001)(8936002)(38100700002)(86362001)(36756003)(31696002)(31686004)(66899021)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bjFSenpJaS9zMjZCTTlPSWp4VDYyN0dtaUoxUUFZQmNhWHBNQjZiTTF2czFL?= =?utf-8?B?azljOCtLN2RnaldZR2N2L2czQnl1bTlxTmM4L3hOUU9ORTYyaWpqRHdpTlZi?= =?utf-8?B?bnBGN1VrOUdWVERZVndTMjJlbnI1Nm5XOHpyeit5MnpOQm1SU0JFVFhOSE85?= =?utf-8?B?MWdyeG11cE82aXJkVStJaGxOMjFSQkZNdllxcWpSZFY1a0FhVEhVWWtVQ1hy?= =?utf-8?B?NWMvTUZPalhWUTFLeVBPQVNHVlBrcWNGSFR4U0pXVnFKTmRGVXM4cmJydlBP?= =?utf-8?B?dSsybmd2d2JZSWt3VFhuRHdpSkZBcXhaQktYVTBBSVZYUDNScUhiWnc0YWJE?= =?utf-8?B?cHhsTGZUd0psYkpvNFI4c2FyTXIxRzZVeE9yTTNvWmQxUWRValJ6RXQ2UWVo?= =?utf-8?B?ekZMMkFiRWg2cUpRS0I2RVRaUnJqa0lyT2dKWGtRais2b0taaXRZZTRkcG5O?= =?utf-8?B?RG9LV3dWek5PaHhPSC9objFPalZMdytPUXMzQkNCRWhWVG9uSkJpNDVJWWVZ?= =?utf-8?B?dHFLeGg0Ukd0d0I1SlFHWTF6V29JSk93TCsxTHA4eGhxcFJyenVZa3hwYklR?= =?utf-8?B?T25hNkJzQXhzRVg5RUtwQmFhNFFXMGYxekdyLzE0YXRqR3JQWENNN0FrR2Jo?= =?utf-8?B?QVpHRVpFdGNtTkx3OTlvNSt1bER4d1VXenl3a0N0dTRQZ0ZEanYvTXZPeWV4?= =?utf-8?B?MnJ4aURpZVJlVXpFOEN0QVJ5dGxEcWQ2ZGpUV2hRa2UrcXlxb2lwQzliMm9z?= =?utf-8?B?ajBIaisyajBVL09PK3MwWEJwS3MvUzFzeFJjcjBKUHdZSFhId2hrazlyaVcy?= =?utf-8?B?ZG9lQTdnNVRxT3YvUmF6S3k3UlJBTE9vSTloN25yQVoyOE5UaVZVRFJ6ZlJh?= =?utf-8?B?Q2xSaWozV0xQUnFoc3pQejR6MHQ1V0g4WWE4Umdlb2QzSFowMmprR2NaN08w?= =?utf-8?B?ZGdnR0NWRXRzRFY3RHVaTkNqOW9ybDA0NWNrVmk5RTVpcUZ3dEZwTXpKdWh3?= =?utf-8?B?VzNPeitrZ3dhTnhjaHdjYnVlRWQzS0U1VXkxS1liZ1NSVXZ5TTVLbVE3VEZZ?= =?utf-8?B?VEphMnBEb2l3UVF4V1BrbFlzWTdhWnJMbm5KRWFmTWpORU5NWnFYQTRMZVNp?= =?utf-8?B?THA4NGRBQWtOTThwSW1KbG5MTG5ZQXlPMURCV0xvMWVxUWRFaVJJK21QOUw4?= =?utf-8?B?YlpRWUZZTm0yelZkZWRjeC9EQXhLcDluTmM1SHlTbmViYS9qcStTYWlKajYv?= =?utf-8?B?eGgwTlNxM2VmRklpbHhvNFlkWVoyekF5UXpNdEcrc1dydEdqR3pqaU04VTRm?= =?utf-8?B?ZHpLS1lGOC9MYTMxL2ZraUl1VDFqOXpzczZHa1IxYUV1T2tHeVNGKzhxNXJ2?= =?utf-8?B?UDNXK2ZGaFpHb213bS9tZjB0NnMxdFFVTTlkeFZ2RCtlQXE1djh4cTQ3Vmhn?= =?utf-8?B?UUI2R2J6SmZMRElJVUgxZHlieC9HeTVzTGF2ekhKcW5CclBEeWdGR2x5VGlB?= =?utf-8?B?Y3E1YzlHQ2oybEMyQ1pIenFhdUVyT1FqdTNtKzBER1BoK2ZSUmxnQTVhYTVR?= =?utf-8?B?My94RFRqd0RqRlNVL2dzUStqenVPV2V6RFU1OFlVYUFjODZIZGdlTDJwTXBr?= =?utf-8?B?dklLRkpmSGliNjRMWE1Wd2IvczMvMVg1VXhQVWxFbTl2QTE4aHdheXhKYlJS?= =?utf-8?B?amwxL29JT05NblR0Z0ppd0FMN2ZvcjVCcXFMLzBLOU12dHVjSFpkd29Md1hl?= =?utf-8?B?ajN4a2NkZjBpdVZ2Rk1JQ3lDd1I5b2d6NUlUV2xrRVJjclRKYXczQ0cyUVhB?= =?utf-8?B?NGdxSVBvU1JWeWJGZXdiN2d4M0d5dXhCU1J0OThOYWRsUVZERXBTeG9pczFs?= =?utf-8?B?cVlSWEVLalhXVlZjaHhJZGVZK3lZYjYrZFBYM2pMSHRGVFc5QjNVRkEwUHdB?= =?utf-8?B?cHJDNlpLVEIxRGtzUjYrSjA4clR3WXozbWprSEdTYWlBVkNPRUlkR0dKOTdt?= =?utf-8?B?UHlRbzFqMHRRdFl0Wmk2d2p2WSt3YUJLU2NkbFIrbThyZTVEVWpIMUsxUjdC?= =?utf-8?B?aUxFZEN0U0hjM1R4V2JGNExOL05veFRPUWdraEZuMFA2L2h1ajR1WG43L0JQ?= =?utf-8?Q?7rPjCgln7s0ju+L/ndJOHXZKw?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f46273bf-9082-4e09-b993-08db82d43f84 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jul 2023 12:33:51.4105 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 61l5IlMj2cDt8JatQ54Tl9TDHvXLi6OTP6REw24xvbgrHhy5Oy9oZMExn5j5UZ1zDjrLn/+k/qoOW21WKo/AmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9292 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1689165268878100001 Content-Type: text/plain; charset="utf-8" Newer hardware offers more efficient and/or flexible and/or capable instructions, some of which we can make good use of in the hypervisor as well. Allow a basic way (no alternatives patching) of enabling their use. Of course this means that hypervisors thus built won't work anymore on older, less capable hardware. Signed-off-by: Jan Beulich Reviewed-by: Jason Andryuk --- TBD: Should we, just like for NX, add an early check in assembly code, to have a "clean" failure rather than a random crash? Whereas the baseline -> v2 step isn't much of a difference (we'll gain more there by a subsequent patch), v2 -> v3, while presumably (or shall I say hopefully) faster, yields an overall growth of .text size by (in my build) about 2k. The primary reason for this appear to be conversions of SHL-by-immediate to SHLX. --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -118,6 +118,36 @@ config HVM =20 If unsure, say Y. =20 +choice + prompt "base psABI level" + default X86_64_BASELINE + help + The psABI defines 4 levels of ISA extension sets as a coarse granular + way of identifying advanced functionality that would be uniformly + available in respectively newer hardware. While v4 is not really of + interest for Xen, the others can be selected here, making the + resulting Xen no longer work on older hardware. This option won't + have any effect if the toolchain doesn't support the distinction. + + If unsure, stick to the default. + +config X86_64_BASELINE + bool "baseline" + +config X86_64_V2 + bool "v2" + help + This enables POPCNT and CX16, besides other extensions which are of + no interest here. + +config X86_64_V3 + bool "v3" + help + This enables BMI, BMI2, LZCNT, and MOVBE, besides other extensions + which are of no interest here. + +endchoice + config XEN_SHSTK bool "Supervisor Shadow Stacks" depends on HAS_AS_CET_SS --- a/xen/arch/x86/arch.mk +++ b/xen/arch/x86/arch.mk @@ -36,6 +36,10 @@ CFLAGS +=3D -mno-red-zone -fpic # the SSE setup for variadic function calls. CFLAGS +=3D -mno-mmx -mno-sse $(call cc-option,$(CC),-mskip-rax-setup) =20 +# Enable the selected baseline ABI, if supported by the compiler. +CFLAGS-$(CONFIG_X86_64_V2) +=3D $(call cc-option,$(CC),-march=3Dx86-64-v2) +CFLAGS-$(CONFIG_X86_64_V3) +=3D $(call cc-option,$(CC),-march=3Dx86-64-v3) + ifeq ($(CONFIG_INDIRECT_THUNK),y) # Compile with gcc thunk-extern, indirect-branch-register if available. CFLAGS-$(CONFIG_CC_IS_GCC) +=3D -mindirect-branch=3Dthunk-extern From nobody Sun May 12 07:59:20 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1689165303; cv=none; d=zohomail.com; s=zohoarc; b=IszB1duCLacxgV+Xs65ZdglEEP9NXGqsi6Y1Iq3pUsOYJFCBcsVzyTNm8bXXLry/WQCP4XaAYatY3YRNZ0xxK+ozLHfTJh3j1Pc/U1QUGIWq2Jp/Srto4BCdfMRZmq+M0omUohW9snXqScY1I2iLh+iWg5TQ7JPKCneY6MvP7do= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689165303; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=WSfHTrJ7pOa2oeWcPF+TfLLO+C/+vFOck5rOH+Ofwek=; b=NQwFe1Hg+vNwddg2452QqFy2YCxj2la9Sj+aZaW8WeDdBZm+tq9ZcTqDcxvu2wu7svVBJ1OqglW8cnNvBMdVHABplcMFizCev9Gvk5mD66SP6gt2K3eWw+RczpHGPtWgXU8xzX5cp5CKHlO7lzmRupeypPydf0U8z7ilcHPrF9A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1689165303324265.84267482363305; Wed, 12 Jul 2023 05:35:03 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.562455.879126 (Exim 4.92) (envelope-from ) id 1qJZ3G-0003Pj-8V; Wed, 12 Jul 2023 12:34:38 +0000 Received: by outflank-mailman (output) from mailman id 562455.879126; Wed, 12 Jul 2023 12:34:38 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJZ3G-0003Pc-5U; Wed, 12 Jul 2023 12:34:38 +0000 Received: by outflank-mailman (input) for mailman id 562455; Wed, 12 Jul 2023 12:34:36 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJZ3E-0003Ju-G5 for xen-devel@lists.xenproject.org; Wed, 12 Jul 2023 12:34:36 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2062c.outbound.protection.outlook.com [2a01:111:f400:fe13::62c]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 7597ead6-20b0-11ee-b239-6b7b168915f2; Wed, 12 Jul 2023 14:34:35 +0200 (CEST) Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) by AS4PR04MB9292.eurprd04.prod.outlook.com (2603:10a6:20b:4e7::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.32; Wed, 12 Jul 2023 12:34:33 +0000 Received: from AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e]) by AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e%7]) with mapi id 15.20.6565.016; Wed, 12 Jul 2023 12:34:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 7597ead6-20b0-11ee-b239-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X18hHrRz4hEnVPvdts88BmNXw6De0Xek5EPFjYXGgEmNMNH7syP/ogRTi++6T24r0uXn9T0gtxaJbS0KPddbFhr2psW/S3cIhSw2FST3uLBDDyA3O2jzxHj2VwPeO+K9AThibKruD26HBkMphkfPAQ36qolXBG5MJR7RFpRkfxKJNayJapOP7s88WLQYaRxdiO1XZrfBtVQd2Ab+xKYQVQVyjrtqHbano1q/0GPkClDTOKbpKE5hOG90p89o5ZZ1+7nzmBcWL8qyzJ71s0ZxAIUxOXU9LLG2wsJl9dCgcP03+m3+0kIkIqXXU/F4ShwlhaT27SDf9t55pgPLP44g9A== 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=WSfHTrJ7pOa2oeWcPF+TfLLO+C/+vFOck5rOH+Ofwek=; b=EJWj3UTh9LnXveqOOW9EPCbFXXrMf2jGIK2QStWjPsM038Oc3WyMMwEsoVI2aJektL/u3e5CR9lEDY5tHOX2da9L4sZNwsMIA+1erP1vg9PD1XuX2t9iQUU0UUqHXFNXRjX/hb0Ll8JLpMp8em0vZfM5TVz6oGoDDNcijUYMMbCM6YN4c/w3a50u/LIimDW9iA7iZ0FUQvHSm43LORHxozxeTG8HI8Adm6amcLiG4kaWTMl0YCU0bwd887oiArStybk9fPYdYv9sffTfwGvfOl1ID6knat3LklQUdjBYL01tdEpyZaGTixrMNYq3GUaN1cF6aS2dgKXi6Z1DZd5AXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WSfHTrJ7pOa2oeWcPF+TfLLO+C/+vFOck5rOH+Ofwek=; b=u9y6mRJaK1MhwR4OxHxvYBFhesi6YY03g9dIs2wyAJhfoJsVOW1VuLKGUna8mBDiskkDk4mrfFLlqCkXG7PE3Bm9ixX6OUioWW9pEywFfIbGZ5gMwEDn5T/8wTGvX7yqQfMKMiWZD6kIFlvw50P1E0WCpxxA5Wjka5Gbdl9E6rS8eU+nu45wMD0UhDJ/WDW+WAaOADV8XjxsPJch8xkYC3g7vQ2OM4KgO6XbcEEKocJr6+yoiNVcbAHZj3RJEeRR7sYTUcFQTcb5JIWq2z2ZWeikE5VnWgNx9N5NedZ1ecaLIy1AmbGV5ed9EJcmwTj5T42if5cIU0Vh1xsDFetyrg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3e1cea22-dde5-c723-5ebb-78a54b128b56@suse.com> Date: Wed, 12 Jul 2023 14:34:31 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: [PATCH 2/3] x86: use POPCNT for hweight() when available Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> In-Reply-To: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR3P281CA0208.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a5::18) To AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS4PR04MB9292:EE_ X-MS-Office365-Filtering-Correlation-Id: e43d1a94-cdee-4255-5458-08db82d45861 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RP3OD1sCL//X8rGouwER+qrjCXd41eCylQBCzYMYBFXUmuezb77V99wOCxSXRf4pZP6BukJcL06Aih4tG2YTMZ1ldo5GqEfpmnt0ZBsvgz8CbdzQCEoYnIcziztUsRs7kVDBzW9AWNx1BjQqUvb6lSFJAJ9p/XgJbJeFcuywyRweElE6F7cW8BOkW1RR/YoEmKhFvzbsn3+hZK0oDIQoJfqfWUmzeS6xQqvfEQGSIn30zsh9TtdmuYn/+LtRAeWp5RQl/p36R4nUULjFb8b+E749Ugya1S/bHHkp5UOzZ6wcY2xrOZKZhU7PF+qeudhC93ivZhSRMRniiga8KM+fAUgsQAZZCedMCjQnBPkDem4VjfHedhkoQpvXJnba/+q2UDJyjTACdNd9ZRsCpOs8IhWNp2qryMzdWD/HC2nlYkiuDdCc/Gme/kDFzcd/9YxcfnWfPWlXCm9jUsem9UyEt5YtPFyf+occ2aZpIF5WemzfBkUpNsK9L+EEdHQAY3MWKnbjc8h/AjdxJLicvFtoNURTIRffuir1uvKwsBEy71Bk+Cz78IhOrz5yFzv7XQL0h/WtMpmzrPN2JvmJ0UZjp/fNytxVUsO3DJ+sqhk3G5WXhlbh/CfpxJil/59PRfPoqVz04OvdXwMDiBrIRR3ZMVArWWruvRcDsC/9iYqfrYXD9LyucTaXIm+kju8ckUv8 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(136003)(346002)(39860400002)(376002)(451199021)(2616005)(2906002)(66556008)(6486002)(66476007)(4326008)(316002)(66946007)(54906003)(6916009)(478600001)(26005)(8676002)(186003)(6512007)(5660300002)(6506007)(41300700001)(8936002)(38100700002)(86362001)(36756003)(31696002)(31686004)(16393002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QkxHVE5EalZHLytsZDVXMzBGNlJkdkFha0VWTEpmVXlHanc4d0dMTWVBbEFH?= =?utf-8?B?V2E2bjRHbW80a3NBTUlMcVJoTVB0NkNYcmVPSGgrY3NwRDNhZFBnbG9icXpF?= =?utf-8?B?YzRUZXBubE1UbGhFVm1YU2V5VVBqdHY4ZWRzd042eW94WkNSZHJkSjlMbGJY?= =?utf-8?B?UjROT2luNXZuU3h3TVhUcmxhMjlQdTl4amllYVBMSWIyTUttdDBRdnBYY1FU?= =?utf-8?B?QlpWeU92QURNOE9GMXNzRXM3S2JaTCt2RUVMRytmMjdiZk14dEhpZWc3eHpZ?= =?utf-8?B?ZitLNzk2VFp1SEh4MXIrOGMwN0E1VmhaSjFFSUdwR3VuUGlTalhkTDRhQzJr?= =?utf-8?B?OHl5RTJXWXI2dXU4aitNaS83VVltdmdDZUFZVmpuUG9KWGpIWDV3d2orQmp2?= =?utf-8?B?R1M5bEI4SUVxakdXc0g4bDlIUDdTajVRTVl0amo3NEVJelY0NTluQUc0T0VO?= =?utf-8?B?UWh2eC9nUjdYc3BWUXlQbFJDZ0JRd1NUUWd3di9tekUyTzJXbVMwK3EzODJF?= =?utf-8?B?UUZOSzBKcVRaY0doVnc2Q2cyTG1vMTNvcEw4eHlRZlpIVkptdC9ndWZHU0xX?= =?utf-8?B?YTRpYUN4UVpnRGEwaTJ4WjNBNVltYTZXT0paR0ZhZzB4Q28rOFVUbU5EZVpj?= =?utf-8?B?VHFPNm9KVW9EVGhaNk9mblUwL3BPSERFL3ZrcmdCOGVlbjRPRU94ZitRWlpL?= =?utf-8?B?T3NwNVVrcWZLQjU3TjhEMUlKMWl5UkpGaURSTnYxS1E4NWZJK0ZKMXBkSjUw?= =?utf-8?B?ZTlMYkdzN3NBYTlFRGJ2b1JOWUlHWHhRdUlQM2RlR20rRktKcFBZMVRhWEhG?= =?utf-8?B?YkRlZHNUcEJ4Z3B1T293a0N0NUxYelhldHdhM2UyeDgzQ1UycDVoQ1ZUVSsw?= =?utf-8?B?Qi9udnlRa2s2dVkvV0MvWnIzYmM1WFFNY1ZqdUhZYlFHTG5BUWd5dGNtcC9V?= =?utf-8?B?bW5tRnY0NWdWTkRhc201VzBjVjFUQ05wQ2pjS3A1K3pTeCtxL2FRWHpCQUl5?= =?utf-8?B?QUhsakZoRW16bTl4MWhWNkgvMW5rZUt0MUhqaUdWTXBkQnVKZkVtQndQOVRC?= =?utf-8?B?Y3hScWVHY0Jia2pHVzZwTnVMYzY2aGRIZVpuWFg3VTRFaGwyQ2JJZzN3UUY0?= =?utf-8?B?V3FDdlhmbGp0MWZicDdtcVg4V3NJdTdrNmxtdzJmbHh2c1FOVEk1bFVMTTNR?= =?utf-8?B?MUdobmVWSmttaThVeTNQT3RmNFZjeXlIVVZIei9kM1BCbkwvL3BpcWh2WWQ2?= =?utf-8?B?bXlXT0tkK3dRYVJOR0ZwVzl0dlZVOHNvV3R3aTl6dUtsM3NESmVDUmsxaDBW?= =?utf-8?B?WTB5Q2ZHU3BLN2tyN0dhR0UrU1hYOUtYcEEwSEtrTUNobENEN29INWtiZk1X?= =?utf-8?B?MjZJNWJpNW9GQjZFenJCd2xQcGt0UjR0eTBhYVNicDFLbEQxMFpoWG5tbFJV?= =?utf-8?B?M0hrQ3pYMHZyYW5IWER5eTlYalJYMlIyNjB1Sk9pVHNpUHlVbms5MGFsWWdv?= =?utf-8?B?ekJrbHRVb0pxUVBUNFVDSVZqZFMyekVVYmFLdDBPc2ZDRnB6Z2dyc0UxRmdj?= =?utf-8?B?UGhTSko5NitHYnBMRkNXeWtFTk15bDA2VTdsWFlZQ3FVNUV3OVUwSm84Qnpo?= =?utf-8?B?RlJIcEJWN3NZakxpZi9GNkZZMVZEc1VRVkwybVU1VlM2K29SZzdCQlovdSti?= =?utf-8?B?djFHMEpVbXFCYkdCeHlWbDQxY1FJcS9QbjdzcXkybWpTLzA0T3NKMGFaMll5?= =?utf-8?B?aDR5eDd6R1ZqRUNGTVBZQU9wU2U3N0pPbFpEUDVIMEZCZ01teTVuRjFyZ0Nj?= =?utf-8?B?ckNqNk9COCtiSXkxZTd6aUdiOXR0dnZ5bCs1eDloVllaMEhSeGdmb2ZRUThq?= =?utf-8?B?RXFjTVJwQWV6Q0xHNHorQnJUclFXVzdaMUZ5ZDJ2SjhRUnB5S3BpSld1Um56?= =?utf-8?B?ZEZVc0xna0NTcU5JUXpJR0cwOGtPRGgrd29WOFgrQldEOGpwS01nR3BJWnJS?= =?utf-8?B?akxsOTdFV2dhYmxlQkFkNmx3Yzk0aGhOZ0NNQ2tkWXNBdzBZZ0FwZmRBTjMy?= =?utf-8?B?ZGUvRCtZZXRCU0VsdU1sUVVJK3VzRWZxaXVkOHNMZWFBYmdWM3Njd1IvK1pV?= =?utf-8?Q?XgmDW6gODvyAdVNyWn2p4WCQY?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e43d1a94-cdee-4255-5458-08db82d45861 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jul 2023 12:34:33.1398 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nhA+nsuu82yVaV/GcnRpON0jsMBakbS3M/7Ei9Kf8iCsyRlowvKCctWsEZ1Fz/nPy9tZ25U1DiTIAiGFpSKmzw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9292 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1689165304220100001 Content-Type: text/plain; charset="utf-8" This is faster than using the software implementation, and the insn is available on all half-way recent hardware. Use the respective compiler builtins when available. Signed-off-by: Jan Beulich Reviewed-by: Jason Andryuk --- v3: Re-do in a much simpler manner, without alternatives patching. v2: Also suppress UB sanitizer instrumentation. Reduce macroization in hweight.c. Exclude clang builds. --- a/xen/arch/x86/include/asm/bitops.h +++ b/xen/arch/x86/include/asm/bitops.h @@ -475,9 +475,16 @@ static inline int fls(unsigned int x) * * The Hamming Weight of a number is the total number of bits set in it. */ +#ifdef __POPCNT__ +#define hweight64(x) __builtin_popcountll(x) +#define hweight32(x) __builtin_popcount(x) +#define hweight16(x) __builtin_popcount((uint16_t)(x)) +#define hweight8(x) __builtin_popcount((uint8_t)(x)) +#else #define hweight64(x) generic_hweight64(x) #define hweight32(x) generic_hweight32(x) #define hweight16(x) generic_hweight16(x) #define hweight8(x) generic_hweight8(x) +#endif =20 #endif /* _X86_BITOPS_H */ From nobody Sun May 12 07:59:20 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1689165380; cv=none; d=zohomail.com; s=zohoarc; b=iblIAyW9a/YhRwjrWroK5t3dCTKUGGv3qs0mJSC+m24URwRzMpLK+JWU6s1h2XeQU3fjB9nVh39zBvCWpc3VK86U9BJaEvf1agEWZxokJjKPrRAN23pEk0XVlaD1CXDxBjSILd41djkGlRLJbW/REQeQ14z4MsOYhPGRSX2H51M= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689165380; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=/5JtolAVvt9vNKUFYXvoqYSCHPLwYP/pbhtLKnh3NpA=; b=HDLBx4wXwuMzdy9kjBgd1cPar4TYuBL80KdfiDhdzMG+g5Idai7L+wGpN4cIdqfDn83VjFKcLN1dcjW3KRFAMWstawbRTTQdcWCkByTGfsCe8seo0jaKPZl81OlfQFUy9Wz6r6GaDOCFzuq7iPtHQXa0PeFBeGhpdZE4vsMDSy8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 168916538027893.76305245733533; Wed, 12 Jul 2023 05:36:20 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.562462.879136 (Exim 4.92) (envelope-from ) id 1qJZ4Y-000462-Lj; Wed, 12 Jul 2023 12:35:58 +0000 Received: by outflank-mailman (output) from mailman id 562462.879136; Wed, 12 Jul 2023 12:35:58 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJZ4Y-00045v-J0; Wed, 12 Jul 2023 12:35:58 +0000 Received: by outflank-mailman (input) for mailman id 562462; Wed, 12 Jul 2023 12:35:57 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJZ4X-00045i-5I for xen-devel@lists.xenproject.org; Wed, 12 Jul 2023 12:35:57 +0000 Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20623.outbound.protection.outlook.com [2a01:111:f400:fe13::623]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id a4f29abb-20b0-11ee-8611-37d641c3527e; Wed, 12 Jul 2023 14:35:55 +0200 (CEST) Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) by AS4PR04MB9292.eurprd04.prod.outlook.com (2603:10a6:20b:4e7::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.32; Wed, 12 Jul 2023 12:35:54 +0000 Received: from AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e]) by AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e%7]) with mapi id 15.20.6565.016; Wed, 12 Jul 2023 12:35:54 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: a4f29abb-20b0-11ee-8611-37d641c3527e ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LjQShAiwOaFbgSph6Kj/ZvoJAgwlcnzEAzyNcEYdA9CCAwIbDETjKd8jzrn0sOfPMwA7jD7vSUJPP03s1GRaOGYUpW5ulcPqbi1ObyqMJE7ct/qUFIXc8mIXuovZ3S66++5l1jg8A33vWcq7ufPjTuwqXKP/jQui1js+dH7lIBWP63OkbsOOGyZiaMPx4WZuXRrXpGI21qlyeaHaNezRRAAo3cWxtZIhfgGVQxOPlsTqGrcb+nN4E9LSKRVEbwJQ8hd0tyce0MImgbCEGdOKxuSLXmz3oz2GhdSZcD66VeXuckcVdY6KURMdfRtjpp53ccmpFq7pDgO4ImU5ZoaZWA== 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=/5JtolAVvt9vNKUFYXvoqYSCHPLwYP/pbhtLKnh3NpA=; b=FatYSdnA2vWWEnDskwApKZJ/eaPppF9G2yH2Rp2AUp0Ucjv3W4R/+COQAO1VMy2BJGZXpE9Gq6SyJ+Z1WQOu43yL0zrzHq9Vq7jmBW18fD6rOJssuBCNVrdVGzKBhRxMIbk2KwVYYmsXJiaptTQTbqzjVd6hf1ekgSozK6rmPzmMdybsTqIDzydlbeqdJeIfybfKlaQOfMt3E9nT8JrbnShTou2viMFF+J80U0xNejjnT78w3snES3M9ixgMGzXghbsUFbBAVla34mWbikLpuGeBSKa7aVUg9uygjPVTABjGcKKnAkrvvqwKCFKCi716QhAYcLjYdcrukKISson2KA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/5JtolAVvt9vNKUFYXvoqYSCHPLwYP/pbhtLKnh3NpA=; b=rk9EAKCFh27vsm1/NVh2RdVth1pAh7oklfLmfhyr570YuEQpv75Ibke8tEoxSMo/vG64uPTxd4dUClc0qVMHxcXoNxoLX8vhtSmIHAUFSxN5sxpsaE/5Tz+ZnQYUbx68JisVL8k1+c5OWGm0LN82jDFxH7ImfKcGjqXcFq+EWVnyfwG0aoSZX/SsCt3eMjzUo5uvVLY7YbA2bq9Hd936K71nMDZdxA5Ll7fXdOtmDqozAc5DLSIVCxp0JkWzLbl4X+HYobHznnvd3FmBxKhE/7d8hfgjpxRGSxQs2ivhQd9hQQM3m5l38wBr1GrN5KwQfvWt0NYd7Eb6+3V/Q6cmZQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <60e79cc5-ad07-81e9-e7e6-f97a73a4df62@suse.com> Date: Wed, 12 Jul 2023 14:35:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: [PATCH 3/3] x86: short-circuit certain cpu_has_* when x86-64-v{2,3} are in effect Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> In-Reply-To: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR3P281CA0040.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4a::8) To AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|AS4PR04MB9292:EE_ X-MS-Office365-Filtering-Correlation-Id: 86730012-e967-4df2-e553-08db82d488c0 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: O+nUgMRbacEqZxWIqG9oVukWfRiEoTWWsYz/XQ2A3RiZiLHRD2AzRSa2a0NmBHFiWCWE24Iogah2yzjaEYOFBVHTsM742Ro1xpoRP+qzM9PA2XSVUzVodNN9RX/0iYC4pUPULuAG6EzoehO8l3+IUeJhCl9hF1rKlPQgCrEA0UbmyqSdfLoSrnZohdXduRc0nGQUmG6bzMNhIlqESqiDuaTiDStEjpI8bzGo6TOW8Sz0qcGKez1xEbwkjNl0lDOOYjPAVKSoEfYXx3oEj9G1v+Mk+A4h76gj2ZydkhyxCyMzHZRPro8nLuMfjlIq/IbCLItiTcWZF/Mkobh4HArpkfJSM4azhqaryGnXjOlkEhxUX78U3zCuy/6diIKIsTOu+Gw6SihMsxtcPT2N/5iLw/nro80Ddbcdfy6ux/4+L1H1vr77trVNbRIL6Ub6sJmfGrxhHZ1YuZFFGJabmd1TVNPlVMDpq4z/QbZ9UPwS+ztLrsBZTJhQIWgV6oXAnqix7QUcb7iKjGH7vIiAqfhrh8l4R6/2OtCLWPWdKRSUDcREeMUwz2qLxn48tKSl/JvK9kEyevCEqQa5Wh0/NWt/5SHVjWZpEZw4OIZeGQQU50skcr7O8DnJfDAYxkZdfm9GOKFPCbILVaSI3cEZ9MyZjA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(396003)(136003)(346002)(39860400002)(376002)(451199021)(2616005)(2906002)(66556008)(6486002)(66476007)(4326008)(316002)(66946007)(54906003)(6916009)(478600001)(26005)(8676002)(186003)(6512007)(5660300002)(6506007)(41300700001)(8936002)(38100700002)(86362001)(36756003)(31696002)(31686004)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?d3hoeTFJdjdUM2k0Y3N4L0VudDRoUXNlcHNoeWJFaDlwbVpUOWpWc3d1SVZv?= =?utf-8?B?ZldNaUFaZ2FFMy9JdXRRUlB6VDV3OVFlZmVHVEJGQ0R4V2JnSXlKajAwdHdJ?= =?utf-8?B?QnVOOVNtcml2R3Y4c3BPQ2xQT3JSTHBCdTZmSjhhTkdUSEdZY1YyTVl3UUZj?= =?utf-8?B?dGc2R3ZKaEJUZVRYL1JmWVVaaHh5dGh0eFZGYitFTWRleGY2VE8zemN5djl3?= =?utf-8?B?a2NnZTZQN2w5TUFIcWhGUkg0MUpwcDlKL25Ga0J0TGxxU3p6Vlp4aTBJemRs?= =?utf-8?B?QVR1dzdMN3FVYzNXMkFWdlQyVjBBNHp4ZFVoaUNicHhwYmhIc0xOQ1JPK2VP?= =?utf-8?B?ZmVRRmsvaDZVY016dXdXdmxRclJTdTN1b2RjQ2dlM0VJTlVvK25OVkwwOWtI?= =?utf-8?B?SGhxdkI5Vm5PbnVIeWNvM3h1d3VZSVRMYnNTRUljUGd3TUhQbUhIcTZNZUtn?= =?utf-8?B?YzRaSkpRc1lzcnhMdHJMc2RBK2tUY0ZJNnRVR3V4ekMyMlJkb01VMlNxc0l4?= =?utf-8?B?RnBYbHRCOEpGRFlXRVR5ZnhNeXVwTERyWGNuWm5xQnhNTllGYTRrK25pSEVh?= =?utf-8?B?dFpOeGZ0c0pwUXpaMEJDYVIvWVFMZlE5TE51M29vbHBmWDNGdXYrTFZKYXBt?= =?utf-8?B?TGQ2MVA3S3JweEswODkySGVTOWFidkVCQ05CZmYyc1dRZlFzdFc4a1IrTGhH?= =?utf-8?B?azFjRUc5cVZ5aXJZZmM3NnUrSWN0Vk5naVFsUFhvZEFjOWp0Rm5EblJUZ1Jz?= =?utf-8?B?bVc1cVFlL0ZBNzZlQ2VScUlSUEt1MUs5K0djUUUreE9sMHRQUWUrS1FUdEpv?= =?utf-8?B?M241dkYxaXdWcUc2NWV6clRhWExSTzMrSS9hWVdDYnRiODFnSENTRnU3Yzgy?= =?utf-8?B?L3hwVnAxMU5VRzlKaDhhT3FRVEVBblUxZ3hoR1dnbjB4YWQ0dGlvZElUUmMz?= =?utf-8?B?WUtaWG9Gd285cFZrSTZZcVgvNGVQS3RFWUs1T0lxV2w2cUVQWWZHZ3R2bS80?= =?utf-8?B?UmZIRnNrMWpSUGpMcjliYVpOUUc3c0MwcHIxOCthbXJTelBJcGswVkVvT1lO?= =?utf-8?B?T0MyT3lqOEJlcVpCVnpFWmFra21vTTRlbS83bjhYZGQvQ09ZZzVPUkc3SUNw?= =?utf-8?B?dytXc0hZcWlMd2s2Sm5wbm5vYlk3SFhjUHpremFiTGxsTVR0czVSd0lRbE5J?= =?utf-8?B?aU5yb1J2bTNIbGJ5OEhReUpBN2pmaFlYei9BSllqWFlWQlBhQkMzQmtxdkpv?= =?utf-8?B?T0JFQ0MvOU5PVTg0UzhWRmFSMklrR1RYRTJhTDlSSDdkL0RKUHlhbXpiYXl0?= =?utf-8?B?L3JzVGlvbGI0UkMzR1pzd09LcGZReDBIZFpOTmV3YVY0TVRSSG12TzNFU1or?= =?utf-8?B?ZzFob0JCOGExR1A1K2FsRVB4ZWtoVXdXT0w2NnhNTzlISjNvQXl4K2xCeGRU?= =?utf-8?B?c2dMZ0d5eXN1dUgyUWtwcG0rWTgrYnRwelRoT0tiZytoUldqemZKSXdzK21h?= =?utf-8?B?ejhZUG1seVgwYU1ZWitOa0lieFZUWENjR1ZmdG5tTGZBUDdBMlJvTUNkWWJ1?= =?utf-8?B?UWROdUtnMGdBY21nelU1Q3pHd2xKV1dYK2IvNE8yaXQyVEU4Y01RYW9IMGps?= =?utf-8?B?OE1SaTFIbDljUTdmUWkxRDFRUE5Yb21xRlUrWkVlS0ozelpHMmtiSS9UV2pL?= =?utf-8?B?SlRoYXczL1YrWVc1akYrcUIwaTBpK2Y2TTFPUEJQMmV4MG03NWY5L1pFOFY5?= =?utf-8?B?Y1VmMVBDNzNWZWl1NnI0VWE5WXVLRkhOVFZhc1dadUd6OUdPWlE1Q3pXam8z?= =?utf-8?B?S3dWMkh0dWhGSkVIQjRWMmdZZ3ZzZmxMdkVBSjFON29NbmF3QnlVWDJoL3RM?= =?utf-8?B?ejY1TEhxYlFYdE9RWXJES3c4T1JVYWNXRFZxU3NYS25Wdkx6QXA1SG53WUpP?= =?utf-8?B?c2lFUFBmT3hFUkhnUFRnS3YySTJnaXlHeVptRDFBYUhNTGQ3MUcxLzlvMzBO?= =?utf-8?B?bWQzNE9XM3ZHd2lxMHp5TG9iWHdsR1pFdDl4QmtFUEpwOE9uSG53YklmV3ZF?= =?utf-8?B?eWVGeEFWQW1KMUtrZWZwbVFRYUNvNU5jYytHTnVHMS8ydnlvQS82eTN6bElj?= =?utf-8?Q?qEofYZZSBwu15YLRcpx4dhe8w?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 86730012-e967-4df2-e553-08db82d488c0 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jul 2023 12:35:54.2839 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: B0bslSMILy/x5wTnOLojhyTcIwFLZwprPq5tVjiZfys/fj0l0twMF9X7NjHWfLEl3s8SU5I5Pf/MHkIZRW5RbA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9292 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1689165381416100001 Content-Type: text/plain; charset="utf-8" Certain fallback code can be made subject to DCE this way. Note that CX16 has no compiler provided manifest constant, so CONFIG_* are used there instead. Note also that we don't have cpu_has_movbe nor cpu_has_lzcnt (aka cpu_has_abm). Signed-off-by: Jan Beulich Reviewed-by: Jason Andryuk --- Of course we could use IS_ENABLED(CONFIG_X86_64_V) everywhere, but as CX16 shows this isn't necessarily better than the #if/#else approach based on compiler-provided manifest constants. While not really intended to be used that way, it looks as if we could also use IS_ENABLED(__POPCNT__) and alike. We could go further and also short-circuit SSE*, AVX and alike, which we don't use outside of the emulator. --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -76,13 +76,19 @@ static inline bool boot_cpu_has(unsigned #define cpu_has_eist boot_cpu_has(X86_FEATURE_EIST) #define cpu_has_ssse3 boot_cpu_has(X86_FEATURE_SSSE3) #define cpu_has_fma boot_cpu_has(X86_FEATURE_FMA) -#define cpu_has_cx16 boot_cpu_has(X86_FEATURE_CX16) +#define cpu_has_cx16 (IS_ENABLED(CONFIG_X86_64_V2) || \ + IS_ENABLED(CONFIG_X86_64_V3) || \ + boot_cpu_has(X86_FEATURE_CX16)) #define cpu_has_pdcm boot_cpu_has(X86_FEATURE_PDCM) #define cpu_has_pcid boot_cpu_has(X86_FEATURE_PCID) #define cpu_has_sse4_1 boot_cpu_has(X86_FEATURE_SSE4_1) #define cpu_has_sse4_2 boot_cpu_has(X86_FEATURE_SSE4_2) #define cpu_has_x2apic boot_cpu_has(X86_FEATURE_X2APIC) +#ifdef __POPCNT__ +#define cpu_has_popcnt true +#else #define cpu_has_popcnt boot_cpu_has(X86_FEATURE_POPCNT) +#endif #define cpu_has_aesni boot_cpu_has(X86_FEATURE_AESNI) #define cpu_has_xsave boot_cpu_has(X86_FEATURE_XSAVE) #define cpu_has_avx boot_cpu_has(X86_FEATURE_AVX) @@ -114,11 +120,19 @@ static inline bool boot_cpu_has(unsigned #define cpu_has_xsaves boot_cpu_has(X86_FEATURE_XSAVES) =20 /* CPUID level 0x00000007:0.ebx */ +#ifdef __BMI__ +#define cpu_has_bmi1 true +#else #define cpu_has_bmi1 boot_cpu_has(X86_FEATURE_BMI1) +#endif #define cpu_has_hle boot_cpu_has(X86_FEATURE_HLE) #define cpu_has_avx2 boot_cpu_has(X86_FEATURE_AVX2) #define cpu_has_smep boot_cpu_has(X86_FEATURE_SMEP) +#ifdef __BMI2__ +#define cpu_has_bmi2 true +#else #define cpu_has_bmi2 boot_cpu_has(X86_FEATURE_BMI2) +#endif #define cpu_has_invpcid boot_cpu_has(X86_FEATURE_INVPCID) #define cpu_has_rtm boot_cpu_has(X86_FEATURE_RTM) #define cpu_has_pqe boot_cpu_has(X86_FEATURE_PQE) From nobody Sun May 12 07:59:20 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1689172060; cv=none; d=zohomail.com; s=zohoarc; b=XAw5k4vcbx9R0j0V3ORPo2pqJ/2TiBExYISskTS93mPxrEFq9OBG2X3NsyMQQJd+8GSBM4eNHspVFiMpBWuDs50VKiD4kEmBcc68NRBlFKLvc2rFxpFzpjP04YfbYjyo7JJYxrOZPnuU1woUxZcsHuEddG6StFhGrOemKs2tvXY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1689172060; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=BBlY3/LJPEqXfh4o+2erDcxetpKZgO/+Av51FujHwls=; b=LB+pF7q6rVJRQMj5vAj2k99AZV0YaPXEWmLlscFwFmY/NID7hyM5y1xoLjYdBl76sCeK+iXXeTY1txLZEKWPrcQGY00WARSlWW8HWEHV/rVkXiaVA3pfvcHV3Q2V6ZjMcKhzTJKv0UG99dbqEPwKCkUZ1HRjAHCmFX+07LB2ndQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1689172060032341.8841735331249; Wed, 12 Jul 2023 07:27:40 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.562569.879306 (Exim 4.92) (envelope-from ) id 1qJanz-0007Zv-60; Wed, 12 Jul 2023 14:26:59 +0000 Received: by outflank-mailman (output) from mailman id 562569.879306; Wed, 12 Jul 2023 14:26:59 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJanz-0007Zo-1q; Wed, 12 Jul 2023 14:26:59 +0000 Received: by outflank-mailman (input) for mailman id 562569; Wed, 12 Jul 2023 14:26:57 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qJanx-0007Zg-QL for xen-devel@lists.xenproject.org; Wed, 12 Jul 2023 14:26:57 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20603.outbound.protection.outlook.com [2a01:111:f400:7e1a::603]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 2774dc34-20c0-11ee-b239-6b7b168915f2; Wed, 12 Jul 2023 16:26:56 +0200 (CEST) Received: from AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) by PR3PR04MB7212.eurprd04.prod.outlook.com (2603:10a6:102:8c::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6588.20; Wed, 12 Jul 2023 14:26:55 +0000 Received: from AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e]) by AS8PR04MB8788.eurprd04.prod.outlook.com ([fe80::cbc0:69aa:c9a2:198e%7]) with mapi id 15.20.6565.016; Wed, 12 Jul 2023 14:26:55 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 2774dc34-20c0-11ee-b239-6b7b168915f2 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hAGWCsZALSHL0R9kmsY4T7duC/8KjX5PqfarCf4CZxe09EnqBtYt9wpCdpilpjkSyDwDFf01O63aQaf69MJ6oqUK29xJP04xLsHMc9hDxnjhV/G6x47YZL4ocjxih+R5J0w4FwgRJZnsVFg0C3WtdWROLkCylqnVo4YxWkAWgd1vOt1cod45Uzk+a7mhePMTlNQ2lCd8BuP+iDRIHwB3HF7TwS6lMwpA/GzG9qffuqXYFOrMjEtWKvDDHnbgdCljdDl8OFjaUBQeGH8i8qpjqIFl1tjxQKatCpPu0jojFMU5C1VF+oVjvbr/B3dkKyuLOYmtCdxxgh7VbIyTdUPiZg== 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=BBlY3/LJPEqXfh4o+2erDcxetpKZgO/+Av51FujHwls=; b=EJN6Pf3nM2Z7Jp58t653I1u31TDpa/EmRlf2y/ZmpU+3gqq0uPDtWpQ0nxAuV1xtIZ/UekeRPamd/u0dg2FRzbPDqfIfFpX6e4ocq23C7mGfEVy5KKiNYvTTy36VSn1frrnCbTv/hIiKpzTPFHNLUgXKJkoJtXEKtsMQR2zqUZ68WW9H1ixrD0IEUluPF/1neFUq3h4q++/+0nZ6lP0kltEE2RLmeVFLKlO8hPJMnKLrcaj/5jSFWE5K+axQaOg4u6IAQvlulMvu5WZa11PBlkhHdsgJY0K5iIHmsQlIVsM/30GciZ5IvZ7euREAj/gmpllWqvzTAKRDNgzODYMuDA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BBlY3/LJPEqXfh4o+2erDcxetpKZgO/+Av51FujHwls=; b=YaLqrTf7xqlesO6R7TxwFE1F+DqAJysSJi+PphU4wfLxGND1hDJ4uwqC33UYmaec6zSowVL71fhSi2QLbQZuNbBiGg1nNyLyZQ4ZYKuvHWI/mOZmt7vrdJkRYIqPMiQpqPwXe6dWRyMDu50VGytipx5+iwfTxMAAxBu4tJ2n+/G62gHlRapO0To2u+CTgjUdKR+XlJh5I8Lbu1wtprBeKca3/lke8ohI/fbH/TYXTLiDpY5GMTFS9Vo/BxyOlFvdc4QNKsLagT1vFB3/Lly/0bkHhqWoz+s35m2d63hmCPbU2c0iqWVYYLqdDykyDYK0ACgPmRG9gDdSQB4YCWoCAg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Wed, 12 Jul 2023 16:26:53 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 From: Jan Beulich Subject: [PATCH 0.5/3] build: make cc-option properly deal with unrecognized sub-options To: "xen-devel@lists.xenproject.org" Cc: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= , Anthony Perard , Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu References: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> Content-Language: en-US In-Reply-To: <0b45bc88-fe5f-77f1-9f9c-37d9ea1ec73c@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR0P281CA0153.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b3::12) To AS8PR04MB8788.eurprd04.prod.outlook.com (2603:10a6:20b:42f::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB8788:EE_|PR3PR04MB7212:EE_ X-MS-Office365-Filtering-Correlation-Id: 2c87006d-39f6-4c8e-1dc0-08db82e40af5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: yzFqRqXIyoUhrxoNa5mmpDj74gdxuyTPl4aetgX+h0LsjpFfmZHPeeWDrcz/30WMk3Cy41z79eIawscn55CEjp4TM+Z276Fv3L+b6Q/mQ++P5ZKl6tY88avFGxpCDBHXtk+cZtumXTIQZpIvr7OuFp8cne+0g45cDbRfTy/GeCK0Q+9yQLbMv5jA5XEXkxBcr8W+gwb6TOgUBFATVNI8tTdILvZ/OWw003m4IdaY0aGNKmmWdXBTKNXPrP3vP0B6ksyn7NaWO1jX7RfNjWQnqehXGNcBBNRrcT+RFoNjLUBXsFkMnG4WxsXoJPhaF4jOcxkA1SccTCuSC6qq5N5++DIudyQZKiZZP7TqE7IA5c6D6ZGrdKecntuMFI7krS4KKwvPjZkmEM5ArNm4bc2qr4VTVDH2Rhp9gIAq1FjFuGuGlCz9FBcPas9VbeA6lUnA/kF4wq4kW9kRXWgsEf7yKclZbltJRsg44sjI1rjRZBgB9VRe3CY3Rnt/Ywv1P3jGJNo9C9ctzYcdfhm0i+kITugJl5RtGNDSscQy5518HaEA8oAuL2v/nrRMkku0eyeuQqwDBwsys8fJYEYYU6h+uQmozPjndQm9IimiJIxOWO6MNrRfDyq4iatd/rQNOHTmO4l8FqNi+wiH+cv6MgtnuA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8788.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(39860400002)(376002)(366004)(136003)(346002)(451199021)(8936002)(8676002)(38100700002)(2616005)(41300700001)(2906002)(316002)(5660300002)(31686004)(6916009)(66476007)(4326008)(66946007)(66556008)(6486002)(6512007)(83380400001)(478600001)(36756003)(54906003)(86362001)(6506007)(31696002)(186003)(26005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WVI4SnZIUmNlTVh2TkIyOXZzTHFCQ0l2Q2tneXorRDhWczBlTVRtY05CdGVP?= =?utf-8?B?L08reEdLTzB3WjZaYU9vK0R2UVNYbVVzeHk4bStoL3JOYVFaZ0JoemxFYWVh?= =?utf-8?B?NjlWTzk4MEd4SWdzbDg1Q05VZ3ZqNjk3K1g5cWpKVzZHS3VuK1h5aDIzdGZa?= =?utf-8?B?d2JWY2dsYkRuQVJOaG54VE1JM3hCejA1SWxzODczY0tickV3RXV1bHl6U2Fa?= =?utf-8?B?R3hFTkxnUWhRQXJJeDJKcDBkRHd5bmFwNjJJL3FNM2djRy9tRkRnMCtHd3Jn?= =?utf-8?B?THhueGg5VGJaMWJjS3Y1dVFENnQ0eFpvbmRhVEVrSnIrTm0zajN5c0d0T3pN?= =?utf-8?B?c2RrOTJRNW53TmN2WHZ5MDdTN2cvTDljZkFGZ04zWUVXbmlYR2sxdEt4SU00?= =?utf-8?B?WWVVWUFWSEVFRnIzQ2NLdjA3NXB6bzRza1M4NVhkSW1FRzgwaktCdTNHRW81?= =?utf-8?B?cjlMa2hJSlhJakROOEhLTXpjVHBSR2RKTXI5a0pGdFpXL1liL3hxU2gyZFlQ?= =?utf-8?B?UjNDZVpZTElzaTlrMithdkpCWkJlUDdGek05dUxxRlZ6RDZxaXFSVGdxcDJa?= =?utf-8?B?WEYrTTBkNXJqODc0bHd1TGptS09sVnFnRGljaWRGKzdqa1REMnk4WnM1elo0?= =?utf-8?B?VHdWWUo1K08wazZwMkJqSXZ4MVJ3VXcxTmRmbWo0cmFmWWdac09kOVlkN1c3?= =?utf-8?B?S041VC9wYXdjeUR2cTAzOVk3QmhpbmlDcy9SVUEvd1ZFcTFkUHR2KzQrUHhV?= =?utf-8?B?eUZNNnF4a3JLOGt1cFY4K216WUd5WXRYeUUzVGMwK1ZPVExSNlVjNGRoLzF2?= =?utf-8?B?cnc4bS92QkFXMzJORndiNjNhMWozRU94bDhXSWZwV0pvbEYxNHpENDZoWnVN?= =?utf-8?B?TG92cGpJTTRXdHpGNGJGVnBDV3ZWbDR5SUtZYVhuamRjUE53RldleFdDVjZp?= =?utf-8?B?V2tISGR6REowamJaUW9EV1JQOG9hYzhlQzFIb3VJWEZMcjdkb0owUkE1V1kw?= =?utf-8?B?cGJZeitjWFhOQmt5NXVWRGRIeVduMVJ4NVNZRXVPR2k1alFhNDhYcDFBdXR6?= =?utf-8?B?Uk1QUXV2SFNBbVlrRkw3Q0dmV0poMm9mV2pzRW9DSmtqQ1hCZUxXOUVTYnhn?= =?utf-8?B?VmdMaWpkNGNPd2NOeTJNZDV2TERhdVlaK2xGR2VpVFZCWFE2MGtDclcvRmV1?= =?utf-8?B?WGRYVE01b05DY2xHVUlkUjU2RDN1M0s1YkJpTjNGK2hBellEOTVUc2ROekFS?= =?utf-8?B?UmRRSk1HaEt1b204b2kzdkVXWHUrYVVTSzNOVkcyblhGN0hYQUxPMzN1QWll?= =?utf-8?B?NlR5TG9GcVlnaUJPNGo4WEUzeVpxV1d0YWJVY1QvaitwRTNVb0JpOWNaeE5Y?= =?utf-8?B?ZnRmL2JIZllKcjNCb2xTaVpLekRkYUhHQ3psbzJaK2RSd3l4SkxLbFpDL0lt?= =?utf-8?B?MDh6U2Y1bVdMaTJnL0dCa09ldVRZT1BnOC92akp4enQ5a25Ma3dBZk00aXpT?= =?utf-8?B?OWt3bks1Ymhpcyt5RGtkUk84UTd1Y1Y3MXpaaVVBVDRrZlhyNE82Sng3WUU5?= =?utf-8?B?WXF0eml0RHlsbXg2eGpJcU1XWmd3cDliR3psNFpCakpVZWZpUjBWd0w0SjdM?= =?utf-8?B?Q3VUSWVTeTAvYnlVa1ZsRUtwL1VhZmdDM0dOWERnamI5MWlxSEtTcW1UNllw?= =?utf-8?B?YlgvdkIvbjMzRERmd0lEd0RUd1AyT0Uvckg0aVkwRnZQVWg0K0FWcGpYTi80?= =?utf-8?B?cmZUcFNyTW1nQjdOTGwwNTBOOHRBNVZjRElRRm5VcWdMVlhXSlNBbnlnTW9J?= =?utf-8?B?ZE9FMkhxZjVBbmFCZTRsUUQ2enJON3piaWE3T0RGanBDVUV3V3c3Q2JIMVM5?= =?utf-8?B?YmtZS1FGVjZhUzk4UFlMWTgyem5XbndBaUlSSlVxUld4cFh5S1hJNUVrbk9E?= =?utf-8?B?WU9WODlvTXR3SWIyNTlvUjF4U2tMVTUwbE16WVdkZGtCVWRhWG43dHZ0Z3Bk?= =?utf-8?B?N0dGUzJKdmk2dE5YQUtRVTF0WHMzaS9OcGJ1RUdyMGpaNXI4aXRaeWlmU2FK?= =?utf-8?B?bnZkdVJwM3hhNU9tbStvYUIvRFc5V1h5SjNDRElGYTQxZjNxRjdyVmJsellO?= =?utf-8?Q?OcJodGIfY+A7ztptdJJpS//EH?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2c87006d-39f6-4c8e-1dc0-08db82e40af5 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8788.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jul 2023 14:26:55.1979 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ak6aHg0iLDbe6teZ+oWzDrpdESR5X+qjkGNeWTZ1C3fDpxn4lLQhLxam3waPhAKY3j2mL9bZ4AwBvO3lTnTVaQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR04MB7212 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1689172061401100001 Content-Type: text/plain; charset="utf-8" In options like -march=3D, it may be only the sub-option which is unrecognized by the compiler. In such an event the error message often splits option and argument, typically saying something like "bad value '' for '