From patchwork Fri Jan 13 11:04:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 3977 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4e01:0:0:0:0:0 with SMTP id p1csp205399wrt; Fri, 13 Jan 2023 03:04:25 -0800 (PST) X-Google-Smtp-Source: AMrXdXvwrdnOoUHn8lXxY5OxO0rSvsOAObh1CFQFSAIIaLYCikOP72HcCmOixuQsjJh5oYOa6AFG X-Received: by 2002:a17:906:284a:b0:7c1:e78:1e2 with SMTP id s10-20020a170906284a00b007c10e7801e2mr85790346ejc.11.1673607865373; Fri, 13 Jan 2023 03:04:25 -0800 (PST) Received: from sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id p20-20020a1709060dd400b0082fba57f803si15899328eji.819.2023.01.13.03.04.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Jan 2023 03:04:25 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b="NV/6osHk"; arc=fail (signature failed); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 5236838543A4 for ; Fri, 13 Jan 2023 11:04:24 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5236838543A4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1673607864; bh=ZRYDQ32a2XYw39B2i95OWXvf7F6ERMsx2uAa4Cd0/aw=; h=Date:To:Cc:Subject:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=NV/6osHkGCru8iaQOOhfxABsmM3tFGMAC5e8OMBs/ZibLdeNT7J7fbFax6HP8fDbQ ksYTCIweFp9e20aEj6Vx+t1EA2fngeRdtjfN7FJRg2ApMBL+oQ3c4ZSsquqbemZIJR /0cnGdIGpt0MrqfGe/ZIHUox3WYwLWlF2Bpf+nhM= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on2045.outbound.protection.outlook.com [40.107.14.45]) by sourceware.org (Postfix) with ESMTPS id D53683858D32 for ; Fri, 13 Jan 2023 11:04:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D53683858D32 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hvZRE6i7OW3m/cY+JHFF3hPlmHx/f/umCi/LTgnZqQxARIaY93HJCguSSAnBtzVxp8LBgB2SVkLEzsodlHpd2o9jO7fK7ftvV2UwVvZZEtu3hSMidg1ec8FEitR3lqhrdhhoaoaZD20ZyooVBXufeeAaX/1ZEyDj3qWWh42CdrznlS/2+LzbHfKUTswP6VU7ixKY4tQYh6u6sI38y+v6v/q71ZWZOduuvqR9BfxDtU941P3N/DeWg1tbD7IyMNORd06rlnIKUew89ytH7DWeDa+9eW9UGiBGn5zQK3dd7RWEq6uvn/SEi88r2tLsKOeOWtdRQuIuFPU6H490ob4Rgw== 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=ZRYDQ32a2XYw39B2i95OWXvf7F6ERMsx2uAa4Cd0/aw=; b=L5Ik3qoPjydeTGB7hVafmiEwrqtGbQ15QJ6Xttv7GOVh3pvMG7++/za80VnnEWu9nn1hLJ0VNf7czYf9fKKlLC1MP5Ee7JHPB8+V0Mvb+vNisub0WvSMbRzlDd7W+rwTxGQjKwoeFDFmVgeuQTJhtoZ/oQMTOzT10vnArSaMG3FcXdOXzKFF0sQEiow5pH2A8Se5/mPc5vdvJ0zuggTUwpxIDBS5jlnnCLoxCyZXp7rSi6dqyPnS9OE2skcj48BEoUtX4nV4Pv2fFy3cl6dD+0nKj/djfEY1l3m4k945KGsAbnG2KQIsLAAwBu3l9YF0s3jNQEAmh1831g5gcazUvQ== 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 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS8PR04MB8133.eurprd04.prod.outlook.com (2603:10a6:20b:3b1::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.18; Fri, 13 Jan 2023 11:04:13 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::2991:58a4:e308:4389]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::2991:58a4:e308:4389%7]) with mapi id 15.20.6002.012; Fri, 13 Jan 2023 11:04:13 +0000 Message-ID: Date: Fri, 13 Jan 2023 12:04:11 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 Content-Language: en-US To: Binutils Cc: "H.J. Lu" Subject: [PATCH 0/8] x86: mnemonic and register string literals X-ClientProxiedBy: FR3P281CA0137.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:95::11) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS8PR04MB8133:EE_ X-MS-Office365-Filtering-Correlation-Id: 57840038-769b-4ce2-8e56-08daf555e76f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mq2Y8HHkFiTWBMgDospzXC7a65nkGcolPeZ6gmJC5qNkOGXLhY67SErsa5R9hMlT/ksRXFpU+XDgE3e/AAuo9YowsnfEtUJeJIwLcP2CBCeR0BWR/bszbR52tqPgdozA+tM6UHbKiS6+Wl1J/WsK6gwqlgCWaL8edQbw8Fycal0KI7lWP3l1aSnn1ymT4yJ3aiDS0d2AizpoznuK55fTcI4uxRujCch5j2eCOqLWdpbWNYZuq6gz7chjI2Zo8n/VDFY6BUEhWtW3fd3s5Ixeq1vgv5gCXCftCU0XgW20okvM2sg0u2SnUON6dho/hl2Rxev52FOH31sjqcFZhG2GRcOxRmRku1E6CZtfGnLWTCqyLAgLpaaINIX43+RtavDXXSmrubWKgTOLyy8pVwaJBdT/E3J+qT+XsGLpGFZ8XEj5X3PLw8o01DmVPGJsWFshWDbZsmOr+2cN8WSeodlInb10sMmwJWLyTZRU+o/z5/y75vAQq81hRfovWC+fhTJkwhqkTFZ1zB4/1Kw7+QBbNfq7JuLf23QuJSN58iUf4Vd7cB7Jmp8MeZsK4fEFqWWrAE9qKDK6w/dZSIJrPadkki6etk1IPX6t8BgUh8f0dPlD0JK+ZjpVLhDYxz1dMLSnZ6HO/Ab4U1K9VgGw7b8ySQsicA5wal7SabFcqWPnFm7N5vN005bJsEURh5vWNlOBZ14GZ4wyIYbYvIvCQvmMH7MCWM6BphUKScnpy/m20ss= 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)(376002)(39860400002)(136003)(366004)(346002)(396003)(451199015)(4326008)(41300700001)(6916009)(8936002)(5660300002)(4744005)(2906002)(31686004)(8676002)(66476007)(66556008)(66946007)(478600001)(6486002)(26005)(186003)(6506007)(6512007)(2616005)(83380400001)(31696002)(38100700002)(36756003)(86362001)(316002)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?2y2AD25DCq+kH5EvSwpmar2rUGrq?= =?utf-8?q?KQjtzIhj7x8GbtnOMc7ZVjRv4XtTymZx7AwY2F9J9GzUXvxYj2Q1onnmm9mNeGmOd?= =?utf-8?q?2zq8u/P2jpHGMIrZi75KyhFSrCtFNnQt5hwdXmw3u3713ZJAHEi1Cjo2xUfAT96k8?= =?utf-8?q?xgnQJc7N8JinVWBHwEbVKKL0r2OVUV+dKVV3q8YDddvKER4VVfDSrOcDPqGXfNWUn?= =?utf-8?q?QtV+IX3YoFj0jI3DYt7mBE7Y0oXM+cbAwHX5R6Rmh4u0Uiz3Nl3HQMOwI3bSK5NIc?= =?utf-8?q?YeTwinxyVo3OBb7KsMChmHaNEYTJDq6g91lL6O8Ixrrzyt1kBYKRAOvvwryRv/NjW?= =?utf-8?q?5d18BcyX2f40j8z8uQkVNbyuMqc+t8zBqllWSjKaVAsOOuKRhSmGYMEA8IR8nGSjH?= =?utf-8?q?4Dua1EI5vYq9Uz2S1m8uTu7VqSxySQNGDjEODFP2yns1UZopFvnOl48CIaYqsJSpo?= =?utf-8?q?b9icEwv1jnkVaW1E+XbOdHq/tyVTzPfjsIElXMgNPMRM66GEgrhVbENkEdBS/9x2v?= =?utf-8?q?GvwcCoW54HF2HMVI6N7KJi2FrGCoaL6pVappPV5TQmwuozPLyzGWqsIkdaEwMRkUN?= =?utf-8?q?PQ7SO7K0W2E8WGtWRrKLlxYe+j//OqsGz4K8SRadxoO8OrilUb3EZ6P8EU/CREOt/?= =?utf-8?q?CsUuQ0KdYQlfkfl4VqX85b245Vef5ro2/zjf4T5LmuGZH83kNVvVJA6qipTMMsVAy?= =?utf-8?q?BItDahBT4NRLvJ5iMNrEKNV1d4KbMSM/4h+k9As1N/kW95Mw2vebwdOGZJGt3Lpcu?= =?utf-8?q?nl/KqBkqS7pagOZ+cSK2QRnUzKnjdGHRqyqmJI0bO7+ghRyUfbMCcZRRuhQi36/Tt?= =?utf-8?q?bFYsqAejL5ryflgGADrb8o3BS6ZJbJL2navVaANpE8wumF+f4f3+0WwBQBTW//Qmd?= =?utf-8?q?/URZuCG/YcLgcU0t7ulxg0/ZskizWU4h7mkzQgT4V30ifM5d2lLGB+sAhf70uCBcz?= =?utf-8?q?ucitBJbkTzZyPEmI0YC9V5ufSxWIN1Ss7czRqNvevZSqgdctXHrLlpNQJMJp6wEPv?= =?utf-8?q?WHr2J9zJG6DxhoMj+M+v4SqqK63e0i0uM4TX2305+cfzeqaMqlSgVhmJEF4GK3keO?= =?utf-8?q?DsgpT4mkCPGt+U+HMuWVcbGR5nq2gBseg+h8zVNTFRXHs2ME4Bz+4P1YSWSnOOV0Y?= =?utf-8?q?OCDvf20oAziPt+EPIpClFgjDw8Zm+b+OVCGNMpoz4TNAehILci7a+lS5hk/MD4doq?= =?utf-8?q?4GoIYsrh5pm790PLRQZXBrOsmK6pxEtBVDUA26zlUvqmk1VpHoVkk6LgpPkpekxLF?= =?utf-8?q?Xb9GfEYGQypCJ2wNJDJCiFH73j8hIl7cwBLGl1HV+OV2msd7ZcFew/GuvUYF53keQ?= =?utf-8?q?EDr2Xj8k63H/0COHLCG159vPp8C/A48TVzzPc+X4nKYTTk4uyX9BEO736CAJRZLXu?= =?utf-8?q?4868BNO7ulFX+ZXMw+U1vI+pTEQECrvrh6GWbOUS2rnSHDYhBYysllM/jFDskG7pJ?= =?utf-8?q?Tcw9muxEAUfs/P6J7kZmk4ptC/91r07YncBT9ngkZduJlstK8pbgcxQttNCnc6+5J?= =?utf-8?q?0OkCrVcaBLg1?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 57840038-769b-4ce2-8e56-08daf555e76f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jan 2023 11:04:13.2250 (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: 5fGrLdBungyPYt7n93nczKi8smJ0kERznb5lgIguy5k4oY9MXOpN6f2YDXcvKiX9G4DFvPyP0FCkMHnxLCLA/A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8133 X-Spam-Status: No, score=-3028.7 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 X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Jan Beulich via Binutils From: Jan Beulich Reply-To: Jan Beulich Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1754905041160381666?= X-GMAIL-MSGID: =?utf-8?q?1754905041160381666?= There are some inefficiencies there, which the series tries to improve on. Likely there are further gains to be had, some pointed out in post- commit-message remarks. 1: abstract out obtaining of a template's mnemonic 2: move insn mnemonics to a separate table 3: re-use insn mnemonic strings as much as possible 4: absorb allocation in i386-gen 5: avoid strcmp() in a few places 6: embed register names in reg_entry 7: embed register and alike names in disassembler 8: split i386-gen's opcode hash entry struct Jan