From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2041.outbound.protection.outlook.com [40.107.22.41]) by sourceware.org (Postfix) with ESMTPS id 1B1203858412 for ; Fri, 8 Sep 2023 12:54:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1B1203858412 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MBsUW1ePEbGfaA2MJ9r/4iH2+oZDKbSGe2XvZhxAhancTkdck9Ymaa4bYR9vzi2IetTWIg9Ws8A5ysWjZvNlVFYB1cVYp+Jj2FjG6wPrKfYd18EtpBzVUh35GzhVqXCmPzBQUErfFBHguzaN26pOTc2TG8tMCeT8u5WWqwRh9JGHmBjWrtGzYadPix/FpIq24QWj/Aua0n5jfxbTFmq4FMt/wfFlJ0pKllYRY818f8S19Y4cvU+UAZK4jaoJFXVqFhqr6z/gy0Yq1912Szjhx9y1ga0eHaZWIh3xb6j9pupB47U3+Eqp1YyvegzJvuOiOhnPMhwbay3nEuFeR4lubw== 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=mwsj1PpJdM+QHefl/PTFv3R92fBSZOZ8JCaPju9mBFQ=; b=jzea2nrfUJSLvB7d61XnEOgtJISGqD+a6NXlC/rF7Gji2qhvqfUQbMxhqVlLamX/RaSGxVDXeP8Vy1sBf+Fst83mnurtmuY4DrmhcmTZduVKZMd1hsGZjg2TeUq8nQV0h/ftFXQFm8n2AMfHhrlKHhBf9WtFXOA1njOuLSDvkJcJUeYnTgwCr0qtCIIYrGBfj54d0y2tiAtkF0k4JWP4ukm7DkNdC1Af8X4SQwm2cfr+0xTFXqisgMVPv5dfW58sw11hu5UTMPh6h00rXZCoH6utajJPi/DDTjJLRjcmUn8Q9HNVXO2kdL+CK8jmPScc4QDihLyTOno9p6jv+4M79w== 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=mwsj1PpJdM+QHefl/PTFv3R92fBSZOZ8JCaPju9mBFQ=; b=RP+txwI8NLW8oDqfzVhJk7O0n9rWvNRUeUTcskQuUogryNodep98H/m+xkI4qx6m1rbT2MkHSRi8ukZ48qZTlIUW2iQqDW1rJezKiMm6FjBFOB4vQ3VoAynKafba/x4S/pvmr/7KlEwwjAQco7AeS+V0dgu7lTPgtHKvPJpaBm+byjADxS3AYRQPsRkSJrF5VGdNVFXo5y2fcrVBgPKV1ta/jxYuwwF7cgAubEf8lv/r8TOCIahH3ilCJeUJ+MTh/P4ODCRiNm+fvKkUnNGB9Lkun3+VNdb2Q8WGbw5FBwj0cDLg4QCsxMQ1Bt+TA75w/a5cDDaFTR78nKAnIBSnmw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) by AS4PR04MB9621.eurprd04.prod.outlook.com (2603:10a6:20b:4ff::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Fri, 8 Sep 2023 12:54:26 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::f749:b27f:2187:6654]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::f749:b27f:2187:6654%6]) with mapi id 15.20.6768.029; Fri, 8 Sep 2023 12:54:26 +0000 Message-ID: <3fbfc683-d536-76e7-a66f-5b5d83459684@suse.com> Date: Fri, 8 Sep 2023 14:54:24 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.15.0 Subject: [PATCH 3/4] x86: don't play with cpu_arch_flags.cpu{,no}64 Content-Language: en-US To: Binutils Cc: "H.J. Lu" References: <830bde4f-c60e-4ab4-2ca0-86381408254f@suse.com> From: Jan Beulich In-Reply-To: <830bde4f-c60e-4ab4-2ca0-86381408254f@suse.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0025.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::12) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|AS4PR04MB9621:EE_ X-MS-Office365-Filtering-Correlation-Id: da7729f8-d37a-4f08-6a56-08dbb06abb5d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mvr2O9J3gEF62LORVZ7PcCy94Mefa6jb/RK5ZsGxPLi5JjjUXjXnTwLhBmHiEI/UmgNZFTTZdQzF0i5heqPiL6Vlfm/4a+/hN0YsyXhUvxJ6aqowFVk+iRjFNehSDa37lWZH7oN0IG7uhQjGwL8/EfRPnCOKmjIvR2QAXRWOWAVaS6tAZmC+WisLNbKl85q5r/M4eDRzsZ7KVDvGG8T2n1TyXvCmDjL3pyBMWHxM0dZ/3QrobljXbNDHhFHX90p7LgWNInzFdvXGLWHvkQTWUOgqAMvmn9GartgJFAd+wj56InUmE70eYkHbi1tjuZ1+/hVBrHbG4Fj26HtG3ainULTD/YbNyaEMfZF6wpijj8bQjCLd+BKC5btns0uJ6fnMzv0HISiNPDXlICiYd/DiEoHutcdIyNU9CTWvz/WK0TCnhtLgSRs9j3c25YUZwePkEOKTowhJSxAWXoPBHXqu/py87pgcOKrasSgOdOFY2ugiPI45ShGWVDWMbgZWoV+oY24Wn23Ua4n5SCtz6PbskNjRW764MRRPM9ij72q7xbmheByKtfs7hwqxKvYdw9MYvm7TD4vYd/A7yihhcB8G+sqAT0j69ErIYixG13CAmEMMSe+WEySfVG/FnHP3uUBkFl1avnYR40MtG69jN3X1iA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8790.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(346002)(396003)(136003)(366004)(1800799009)(186009)(451199024)(316002)(6916009)(66556008)(66946007)(66476007)(41300700001)(478600001)(38100700002)(2906002)(31696002)(86362001)(36756003)(5660300002)(8936002)(8676002)(4326008)(26005)(83380400001)(2616005)(31686004)(6486002)(6506007)(6512007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?YmFqV3c1TldldFRjNnBXMWRFOUdtWEIvN3ZKclloZmZVdXlZSmg0L1J3Q3pB?= =?utf-8?B?NGk0NG41eGl0K2pBNzdLSkJpQmpUcTZ2Sk5OeEhBY0dIb3lQdnBXU2FEc2xM?= =?utf-8?B?RDRNZWdMTE1vTDQ0eUxYcGp3VkZ2OEtyY2pqQ3c3dHQvSUl6L1EzWVNBUzhr?= =?utf-8?B?ckxET0xrano5d3NQaTVBTEo5RFVOUTZhYm9vUURwU1lqTU5NZWhwME85V0pB?= =?utf-8?B?aXp4VDhZZjRZNUtJWEkvTE1vVnc1UTRFQ3o5MERLVEJ6RUM1RVMrS0t0QVUz?= =?utf-8?B?cU8rMEtla0ZsUkxuOGpZdTlXWjdxTE5qd2xHVVZwamZsZXlwRlg0b3lTM1dZ?= =?utf-8?B?RjZKUUhjZGdDSHVTc3JWK2ZlL3dNa1cwSGwrdy9PSlhLaDZzekx2UWgyMFhD?= =?utf-8?B?TE1wN0k4ZGptM2ZRZmc4WWlFTlhCOFoydk9ibVYyYnI3cVptWkxReU11VzhP?= =?utf-8?B?S1l2RCtyaUtWVzZ3bHhMaFZSQ0lxR0VYSFJhaUlYTVMzZXVQK25YRjBRYlZH?= =?utf-8?B?bDM0RklDbzN0dHdvZzRjUE96R3V0Rk1BM3IvR1FaOTN2QnIxeU5lQTVrYkFE?= =?utf-8?B?TVhYTjk3dDJsdGJhRnRvR0xHQVAxQmRIUmVsWlFlckpHTjh1WS84VW1vam0v?= =?utf-8?B?UkNXUzltNUZKa0RVNUJmc25LWjlxYVVtZ3VhQ0tEenY2L2JaVTVpbnpiV3l2?= =?utf-8?B?U29jelRGSmFxN282d2dBWWUyVGgyakxpSUhqbC9Tcm01a3hML09xYjRtQkdQ?= =?utf-8?B?SEVHanBHQ2ZBSmhCUVhrdW0zenBMekh0VGdidDhwUDBMWmZnSm5DemtlNWpU?= =?utf-8?B?SXN2eDhnMFRxT0pUOW1kbnE0YXNSRENOb0xBRElLUmYzSEdnZ0NpVlp6a0Iw?= =?utf-8?B?QVV1VHdYK0lUZzRKM2NFTkFxTHFUYVJrN3BwR2w1RzBwajJ3WitZVW5lTTBo?= =?utf-8?B?dmZsYmtINmNkYUk4a1Nnbm1xU2VTVW1aY0pRelg4UFgveGFGQUFGRjhQTFlV?= =?utf-8?B?Mi9xVzF0b09hRGZrV3BBZ0EzOFlYbVBhWm5RcUtVTTlGWmZlMURZSngrK0Zm?= =?utf-8?B?SmNjcjQ1dU92ZmJlVXdFNEZRZ1RsVjZsQ3N3OXowUUUrRHBPTTVvZHdxY1pV?= =?utf-8?B?eUVMaEZEb05lczQ5Nk5KejVJUXhwU1FRSHQ1Mk5obGFKbFBWQVV4a1E1WWJx?= =?utf-8?B?YUgrUDI3TG9tQXZBaG51NTBpbFpIby91bWdoNW1PcEhMM2g1dWhwVUUya2lB?= =?utf-8?B?allPOHhMVU5iZS9JT3BFcW42b1ZVS2lXOW8yMUgybFYwZEIwdERxUWpGQ1J4?= =?utf-8?B?YzNYTFRaR0FVcFM1aHU1VlROQWIzdkJFMkp6ZEtNZElCbTRySDVvZkdEKzhv?= =?utf-8?B?WTNxUk8xWG1pS3MvczJGOU50Ukw4NFZGNXpqMXllY2hkdW1kNGt4aWJZTG1Y?= =?utf-8?B?NXU4a25ZL3dMajY3ZXFnMzBmakVLMTlUQUZabHRiTDlVeCtSTWdEbE1VbTBq?= =?utf-8?B?RHAxUUVKdVBxK1M0TkJwNmlZTlNsV1QyZlUwQ3E0QmQyYWtUYk1IZmV2NjE0?= =?utf-8?B?NjdsZFZSV3k5Y29NUnBtaldlNDNVTDBIUE03VWRtRTcrQzJIV211b2JoYnV2?= =?utf-8?B?Tm43Sk9lb3R3THZ5eTk4MmYyRjVHQkRQYjlvTlBVZkpQemI2akZSQ2FaRjFY?= =?utf-8?B?MTlSNVEyYUg2MjBXUllGVk44SXg4OG55VUt4MngzWWJXN1VHSHFpK1VaVndI?= =?utf-8?B?czdVNndrb25ZQ0ZsOENRNEhmbzFLeFNZOTBGMUg4T1NiUVVxWlp3SndMU1dO?= =?utf-8?B?cUQ3QmRHQWszeHB0QlFkYjREWEtYMFV5RUNubUZvQ1NFQ1lvS2o4eENuVGJH?= =?utf-8?B?MVJhMTg1L2Q5NzZQdHFySEQ0dnNIVmpWYms1Qkkrbkh4bm1pMVJKR1ZnWDhh?= =?utf-8?B?ZFdsNXF0SUUwOTFzNXRQQXhYbjFiUUwzMS9GUmN1eWJOSEp4OGxtUkErMWNR?= =?utf-8?B?K0pPRFlBaElILzZ5eU8rL1VCMGJGdnJOeDBNelU3ZmpaUWZKMGdWVnZMZEV3?= =?utf-8?B?Lyt1bjFNTmwrTGZKc1NncThlQm9ZVG5IVDVCMEo3R1FuYVRSSGJGc0xWRHRp?= =?utf-8?Q?XMOF5YI34FDlH1Jus3vup+U9P?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: da7729f8-d37a-4f08-6a56-08dbb06abb5d X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Sep 2023 12:54:26.0369 (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: 70qT5R57OuOi3TjkZbiNk+x+7CBjVQI+Q5v5P+K5pDu6gmUFc6sAa8NkKZXeukKBJ8yZ7ja8civDYg5kVWjnvg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9621 X-Spam-Status: No, score=-3026.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_NUMSUBJECT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP 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: A total four places exists where we set the two bits from flag_code, but these values are never used. The two bits are evaluated only when coming from insn templates. Drop these assignments. Also make obvious that cpu_flags_check_cpu64() is only ever used against insn templates. --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1785,10 +1785,11 @@ cpu_flags_equal (const union i386_cpu_fl } static INLINE int -cpu_flags_check_cpu64 (i386_cpu_attr a) +cpu_flags_check_cpu64 (const insn_template *t) { - return !((flag_code == CODE_64BIT && a.bitfield.cpuno64) - || (flag_code != CODE_64BIT && a.bitfield.cpu64)); + return flag_code == CODE_64BIT + ? !t->cpu.bitfield.cpuno64 + : !t->cpu.bitfield.cpu64; } static INLINE i386_cpu_flags @@ -1883,7 +1884,7 @@ static int cpu_flags_match (const insn_template *t) { i386_cpu_flags x = cpu_flags_from_attr (t->cpu); - int match = cpu_flags_check_cpu64 (t->cpu) ? CPU_FLAGS_64BIT_MATCH : 0; + int match = cpu_flags_check_cpu64 (t) ? CPU_FLAGS_64BIT_MATCH : 0; x.bitfield.cpu64 = 0; x.bitfield.cpuno64 = 0; @@ -2626,16 +2627,6 @@ update_code_flag (int value, int check) } flag_code = (enum flag_code) value; - if (flag_code == CODE_64BIT) - { - cpu_arch_flags.bitfield.cpu64 = 1; - cpu_arch_flags.bitfield.cpuno64 = 0; - } - else - { - cpu_arch_flags.bitfield.cpu64 = 0; - cpu_arch_flags.bitfield.cpuno64 = 1; - } stackop_size = '\0'; } @@ -2652,8 +2643,6 @@ set_16bit_gcc_code_flag (int new_code_fl flag_code = (enum flag_code) new_code_flag; if (flag_code != CODE_16BIT) abort (); - cpu_arch_flags.bitfield.cpu64 = 0; - cpu_arch_flags.bitfield.cpuno64 = 1; stackop_size = LONG_MNEM_SUFFIX; } @@ -2895,16 +2884,6 @@ set_cpu_arch (int dummy ATTRIBUTE_UNUSED free (cpu_sub_arch_name); cpu_sub_arch_name = NULL; cpu_arch_flags = cpu_unknown_flags; - if (flag_code == CODE_64BIT) - { - cpu_arch_flags.bitfield.cpu64 = 1; - cpu_arch_flags.bitfield.cpuno64 = 0; - } - else - { - cpu_arch_flags.bitfield.cpu64 = 0; - cpu_arch_flags.bitfield.cpuno64 = 1; - } cpu_arch_isa = PROCESSOR_UNKNOWN; cpu_arch_isa_flags = cpu_arch[flag_code == CODE_64BIT].enable; if (!cpu_arch_tune_set) @@ -2950,16 +2929,6 @@ set_cpu_arch (int dummy ATTRIBUTE_UNUSED free (cpu_sub_arch_name); cpu_sub_arch_name = NULL; cpu_arch_flags = cpu_arch[j].enable; - if (flag_code == CODE_64BIT) - { - cpu_arch_flags.bitfield.cpu64 = 1; - cpu_arch_flags.bitfield.cpuno64 = 0; - } - else - { - cpu_arch_flags.bitfield.cpu64 = 0; - cpu_arch_flags.bitfield.cpuno64 = 1; - } cpu_arch_isa = cpu_arch[j].type; cpu_arch_isa_flags = cpu_arch[j].enable; if (!cpu_arch_tune_set) @@ -5741,7 +5710,7 @@ parse_insn (const char *line, char *mnem && current_templates && current_templates->start->opcode_modifier.isprefix) { - if (!cpu_flags_check_cpu64 (current_templates->start->cpu)) + if (!cpu_flags_check_cpu64 (current_templates->start)) { as_bad ((flag_code != CODE_64BIT ? _("`%s' is only supported in 64-bit mode")