From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2078.outbound.protection.outlook.com [40.107.247.78]) by sourceware.org (Postfix) with ESMTPS id D9E7A3858C52 for ; Tue, 8 Nov 2022 11:29:44 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org D9E7A3858C52 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=Zj5seINtpvZbXRRVJnvMF6mLvGJqJB+lzmZSkO/uZc9gbDYpmLDHwT24ULjNt5+HJ9UH7OSSN5HvvRgWdqjCjLrebeAOZcE46uJ9y6bhuvfmY6hyAO7HWN8/yp7mrGTF3OlWAM37QpbqL1EQWEDpG4tdq+Td9dhTkrfKTWS/uTDy7Jh8+u3RIdZvtlhDMxNOuoasnktde4DPew1HG0FtaVViVrJpk02l2vQ8xt2HK0S3zwFbnCfj553JDmwwh5mKQC9HwnWuTHGNn/ZmdJPUwRf45Q/9oe441F2ww2zCe6CVkyjnkze8wGkT0EHMpil/eFj8/KmiWe623782tOwt0g== 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=AWjNyDa3B2WybgnacXT814EFLlmCxUrNY84VK6ALH8M=; b=GfsKWCmbA2luLH+1uvjXeH97t3dEfhDFXm1/OrXHaESwjYQOeso1QI6klTTSMZofOXRgohc4hAAbjwG1+Z1Z4np3aysp/nf3BaIopEGdKE7J/L51LqguPhRoGFl5fQaatOQxQW39JnQ0z6pnCV9zapLRiUuUE6C15dndsFpCF2ITxBcD1iIOYzYmYeFXHC3r+oQ7Y1LRm4jAxt5IJnZArk+QyWfPlMpZh5FG1tH6WD+nN4wwvpJD/6nA4oYcS9xOXfoVsqpd+rtUPfjJY0SzgtnnxF6YxaPVkuACfogd52jgG6F+nnEW83S5neHpTljrsHpjiAReOJd6+D5Zuc4UDw== 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=AWjNyDa3B2WybgnacXT814EFLlmCxUrNY84VK6ALH8M=; b=t1SdhWaTRBOP2/XCtKBRqlnrsOYMBV2OZXmxraJH1mg12ay9GMzsNxBBptK+9pJbNDa1XWeOrWP2MjSpYUb5blbktvgzW9zdYpeYNbQCTXObqsefG71kz8q90/fU3MC5UlLbIS0rt6+xoKD8zZEJCzbtgk2mOF9QaqnbqMKNoJGROpGH+mceAWx2kbVXTHVPZkyewO0sTsYa/W8dd3yD4TkjI0QJ6Fyhp0mIt9LiIcR+pRHgPwLlbU7r6QAVo7YiyPDRvZHlZpOIVFG3Li+v4BPhd4EnoU+lAxu+3JvBENRXgIYXWiTQgKZDvBCjGyION+POo+bxxOvztc6xUjbmWg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAXPR04MB8622.eurprd04.prod.outlook.com (2603:10a6:102:219::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5791.22; Tue, 8 Nov 2022 11:29:41 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::4da2:ea8b:e71e:b8d8]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::4da2:ea8b:e71e:b8d8%4]) with mapi id 15.20.5791.027; Tue, 8 Nov 2022 11:29:41 +0000 Message-ID: Date: Tue, 8 Nov 2022 12:29:40 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.4.1 Content-Language: en-US To: Binutils Cc: "H.J. Lu" From: Jan Beulich Subject: [PATCH] x86/Intel: don't accept malformed EXTRQ / INSERTQ Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AS9PR06CA0751.eurprd06.prod.outlook.com (2603:10a6:20b:484::6) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8622:EE_ X-MS-Office365-Filtering-Correlation-Id: 3ae5487c-db9f-4ae5-c809-08dac17c8734 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: md2mrkwHe+bRaGemnyGCP/0zKXFFsvmsKX6Pl4d3aUwwxPrADELv7+LlUt14OUQWLy5laO1aq76Nhl5luuvRWumkWBp7Fu6Gtdtr8kxvijfLv/MP9gTkLnppMvUJ+LG9ncue0j6J3GGlchfGTUxkqxsG0ylkoD8qqbJUsZoqsCyNpraJ4tmXA45HXE7ZDIKJOE0vFDlnkR5PeFX+D4+z5jTHPK1pNQ0w7i9Lh31482AOcWNZuZ8I2Qg3Uu2qgG0q3iRCl/oeYOuLfoYhkzjAkn79mNcqbBc39wJvf0KvBMI1uDFDcGo5OY3iyxCBFB2m7jWTr3WRt8D+3/VC/IswR2q9Z7bXNHcvn+GMJcp5anR5n1b5Zj7SyGsge9mgZ5lKIXasrgFa2jTH2B+lLaDBOgBn0FHIcCXBUBnLi6yXopl+CyYMu5KPX7A2HKQYmdcsDOhM8SSqM35yv7jfnP9PGARNG0ODg9zyWo+p0TtaoWmHMjADx6n1f7pjWnfaPvjZTZ5ghKCz5SDeSwwdxjFEUppXrV2X16si/52rs5bTaTbxLfreqaHetG7iyBYmZN1EDHm6a23sKE79VH6XoCTY10r/nwKAoB1hf18aTAHmNWLY99pXnN6U7i1F5XszxYNZfviV8txpnZgWVbJxyC1iKMYuxQD5P4ZCwKIwhA2A8gIgEfYB9JD0qheAOLkbGd35SP2ocLtf2DqV4Z5xUcj32hJmNCqwF4YzReN683qS8dKzi7UdOKqWJZ0JUo0Oem0In16fmos1cTFyk5owDVtmZSpj6WgBpGo87mNBFZrGmyk= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(39860400002)(376002)(136003)(346002)(396003)(366004)(451199015)(316002)(83380400001)(6506007)(8936002)(36756003)(2616005)(186003)(2906002)(5660300002)(66946007)(26005)(41300700001)(6512007)(4326008)(8676002)(66476007)(66556008)(31686004)(478600001)(6486002)(6916009)(31696002)(38100700002)(86362001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QldOeWNBODRoN2Fhei83WXBjVHR6TEd5aVhnQnoweUlBZmo1VlcwU1dySGY0?= =?utf-8?B?eksrSTcwS1FTWENaNSt1YjBZWnQ1anZqdlI2UDJVMzFxeklqaGtjTDl3QVBG?= =?utf-8?B?aU5NOGdhRGtQN0NhL1VDYTNQZ0R4NS9jNHFRTGYyb0JpZUNSeHN6RUZ2NnZt?= =?utf-8?B?ekJzelBLY1dLcUFWT0c2ZWM5Z2lhYzM3MENzQVg0ZFh0eEtzS1FUUEZGd3Vt?= =?utf-8?B?clFpZmVuaDFHa1ZUa0E0SjZrYTNBR3ZGMUVlZUJSTnJyTG5TbFZ1ZlpWM1N4?= =?utf-8?B?UjgyMk1teUMreU1mckZmK2RIem1pTmNrQm9PejJFdDU0bnpweGFrN3N0T1cx?= =?utf-8?B?aEwzU2w3T1FnNVR1aXpjazFHR3JZODhpQnVlZzA1Qld5NXloNDc4TDV4c0J6?= =?utf-8?B?ZUFPZHk0QnYxOWtpeVBZclVoZGpVWDA5WGYzaVE4UzZmK1RJUGNFaUIvKzJH?= =?utf-8?B?SGdvM0xjK3ZKa0pyMmtQL1RvYUFvUTlYNlMxam9jcVFXandWbm9MWDZ5Q3Z6?= =?utf-8?B?S0lJMk5EN1BKVmtIMG9kdWtTZVNhVzFBei8wNVdHU2pmZXRqVndncTlyakVm?= =?utf-8?B?bFVJcVo1clBRek01dkY3eVFUSWxnazZSa0UrTVlQTDVPUU4yUmZKSFNTZTdo?= =?utf-8?B?eTRlYVEvRGMyL1dOSGJDSmNwdDREK0wxWHZWUjZEeXQ2aEdVNHA3QTRJRGNk?= =?utf-8?B?SFZFUXl0MlZIeDQxaGlTeUtYMkQyWFgwOWlYN2hMMnk4NVYxSGViV0hTTmRw?= =?utf-8?B?cHpmeFEzYzRKNisrYmtNR0hTWEJwQXJvelI0U0g5c1NoL1R6Z2dDWVJKUEpG?= =?utf-8?B?Sy9qY2FBNzNEaGpBcE53T0tFWW4wOFVabEpreGxUb3pGc3l6RTJQL1QwdmRi?= =?utf-8?B?U0w2S1hBL3Vuc0xMMUtpd1daNmhoREdkV2s2RGh5NC9lRGMwWnA3WjQvYUVZ?= =?utf-8?B?dVRKT3pEOExocVk0VVZVMTFJZjE0cERIam5kUkN6Nks0SGZlVFhGTk5ReTNG?= =?utf-8?B?WU1pem1GNGMwUjRBeEJKL0txZWFoOWJxSEI3V203YjlOZzJVUlA0eXJSRk9r?= =?utf-8?B?aVlRL1Z3eU5SY2tYK2NvUXdpS2RkNzRVYS90TVZsTlNZQnJEb3U0SklWNEsy?= =?utf-8?B?QnJTQWZXdmNsYndBVTUrYnk0ZHNtSmxaOThZRmMxSlFUaEEwSHJoU2RNZ1V0?= =?utf-8?B?NmFSbzZlSEJjZGxRSnFwckhJSk55ejZ5RFpVeTJENDgvTU5nMk5lUkhzbzA5?= =?utf-8?B?RHZxNW9VVncvM1dBbVZuNWczYnkrRDVxZjlGZ2ZTdSsreExtK0s2VVRleW9n?= =?utf-8?B?SlFSN1R3dm5iSmc1WDJnUzE3d0w2UFdSUVI2MWt6K2FuTUpZM1ZydC94Nmh0?= =?utf-8?B?dm1vRkhPcW9CU2d6cHVjWkpFdjdrTHFRZjNaSWorQVZ0YVA1ZkplYmdFMGxu?= =?utf-8?B?ZENmNmpqQlViQWlVZllWWHMyRkU0MlRLRTZHN2JLVlYxaDZ6Nms3N0pjbWY1?= =?utf-8?B?TWd0YnZsN0JlcGFVWU1WU1BFd1c3Q2VyNHprMDV1RGxZNXo1b1FBUTlhQmFE?= =?utf-8?B?ZUNQYk8vZmlDeDViN1NXbERpbWo5MWpiVlBTdUswbGRzVHR1a0dEWEcwREla?= =?utf-8?B?WXBnYnlrTmtmenYrcThQcFE3ZUVOcEFsdUJXUVN0VUU3U1phLytYeW9ESjZX?= =?utf-8?B?UFNjQUFaU2hDbys2WmlyZFdoV092c25uZEpCbTdCZjNmMnQvV1JQWE9KcmdB?= =?utf-8?B?MFFSaFFMa2dRL3duUlVLU0dQZXg1V05yeVVpRXFuWmppbHg5KzFIeDNLOUtp?= =?utf-8?B?SFRrZVI0ZHZOY2JPR2FwVEQ3RExyR3BGc252T09MWmh2WVZ5T1VpU1pBQTI4?= =?utf-8?B?MXBBMk1OTWI1TStTME9jVHpYRUZ3djJjaFhNd3ZiV3k4MndFTDhVais5R0dT?= =?utf-8?B?R0grcXhzVjNmd2dFNTBRSjdCSG1QRzlORlZQcjZKV1U4TmF1VWJva3Zpb2lJ?= =?utf-8?B?Z21aOHVZRWpxN0N0ZnZZMU44U250bkh3UTNhNlJ4eEJ1NGdiQ1FNRTRrdGVu?= =?utf-8?B?elIrc3kzVktCR1dRWUFwU04wdnp4a21OQ0RHeFo1M0N0MHV4QnJ4ZlE2Skdr?= =?utf-8?Q?1GY0kSNSwmlGhpz0nUPiePGiP?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3ae5487c-db9f-4ae5-c809-08dac17c8734 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Nov 2022 11:29:41.5928 (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: riT5XhudIRAh5I4KlQj0+xG3LuWg2642dSSb+pbwa7zxtVDe5UvXjexHc7Wp6Ye9N08tZ7VreJiZfxJTUxWLyA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8622 X-Spam-Status: No, score=-3029.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Operand swapping was mistakenly suppressed when the first two operands were immediate ones, not taking into account overall operand count. This way EXTRQ / INSERTQ would have been accepted also with kind-of-AT&T operand order. For the testcase being extended, in order to not move around "GAS LISTING" expectations, suppress pagination. --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -4885,7 +4885,8 @@ md_assemble (char *line) && !startswith (mnemonic, "rmp") && (strcmp (mnemonic, "tpause") != 0) && (strcmp (mnemonic, "umwait") != 0) - && !(operand_type_check (i.types[0], imm) + && !(i.operands == 2 + && operand_type_check (i.types[0], imm) && operand_type_check (i.types[1], imm))) swap_operands (); --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -51,7 +51,7 @@ if [gas_32_check] then { run_list_test "float" "-al -mmnemonic=att" run_list_test "general" "-al --listing-lhs-width=2" - run_list_test "inval" "-al" + run_list_test "inval" "-aln" run_list_test "inval-16" "-al" run_list_test "segment" "-al" run_list_test "inval-seg" "-al" --- a/gas/testsuite/gas/i386/inval.l +++ b/gas/testsuite/gas/i386/inval.l @@ -87,19 +87,18 @@ .*:97: Error: .*shl.* .*:98: Error: .*rol.* .*:99: Error: .*rcl.* -.*:102: Error: .* -.*:104: Error: .* +.*:101: Error: .*extrq.* +.*:102: Error: .*insertq.* .*:105: Error: .* -.*:106: Error: .* +.*:107: Error: .* .*:108: Error: .* .*:109: Error: .* -.*:110: Error: .* +.*:111: Error: .* .*:112: Error: .* .*:113: Error: .* -.*:114: Error: .* -GAS LISTING .* - - +.*:115: Error: .* +.*:116: Error: .* +.*:117: Error: .* [ ]*1[ ]+\.text [ ]*2[ ]+\.allow_index_reg [ ]*3[ ]+\# All the following should be illegal @@ -157,9 +156,6 @@ GAS LISTING .* [ ]*55[ ]+fnstsw %al [ ]*56[ ]+fstsw %eax [ ]*57[ ]+fstsw %al - GAS LISTING .* - - [ ]*58[ ]+ [ ]*59[ ]+movnti %ax, \(%eax\) [ ]*60[ ]+movntiw %ax, \(%eax\) @@ -203,6 +199,9 @@ GAS LISTING .* [ ]*[1-9][0-9]*[ ]+rol \[ecx\], 2 [ ]*[1-9][0-9]*[ ]+rcl \[edx\], cl [ ]*[1-9][0-9]*[ ]+ +[ ]*[1-9][0-9]*[ ]+extrq 1, 2, xmm3 +[ ]*[1-9][0-9]*[ ]+insertq 1, 2, xmm3, xmm4 +[ ]*[1-9][0-9]*[ ]+ [ ]*[1-9][0-9]*[ ]+\.att_syntax prefix [ ]*[1-9][0-9]*[ ]+movsd \(%esi\), %ss:\(%edi\), %ss:\(%eax\) [ ]*[1-9][0-9]*[ ]+ @@ -217,6 +216,4 @@ GAS LISTING .* [ ]*[1-9][0-9]*[ ]+inb %dx, %ax [ ]*[1-9][0-9]*[ ]+outb %ax, %dx [ ]*[1-9][0-9]*[ ]+movb %ax, %bx - GAS LISTING .* - - +#pass --- a/gas/testsuite/gas/i386/inval.s +++ b/gas/testsuite/gas/i386/inval.s @@ -98,6 +98,9 @@ movnti word ptr [eax], ax rol [ecx], 2 rcl [edx], cl + extrq 1, 2, xmm3 + insertq 1, 2, xmm3, xmm4 + .att_syntax prefix movsd (%esi), %ss:(%edi), %ss:(%eax)