From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on2055.outbound.protection.outlook.com [40.107.14.55]) by sourceware.org (Postfix) with ESMTPS id DF424385B515 for ; Fri, 13 Jan 2023 11:07:49 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DF424385B515 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=eM2CbAu+eqOEQ+VPGN8W1VgJU2UW9T4inkaO/B0kf8dclgkjkkB94WRLHCw6Robm84w1hFaJXyTwqpQHxAHuM3/leiDvwSXS2U6PvurB8iMDXhe/7nP4iROddLBGU3wqOemXcemZOnKg/aPvJkVEle2C5sY8OkdHiIrpzrHb736QJWQfzeRnxmKWMOLdP3PCevxRQcl1tEwP6szx9lm+I9/akxfVNLdwqxEk4uczQCs/5/Beco2q8o1nI50KzFdDbCCguLNEdviRVYsZEZgOVd248WpjC0w0/Tl7Bxiimi7xpCMlubky1i9YVLykTZmJMw9DyFbMmSqxW08Y5b8tkQ== 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=FovsTxIh3sdKhwhvlDI9+581GyMnAv6KKfzhlOPicuA=; b=V7Ot6450mZKtzE5cXkXIWvXftWC04/CV2qHpFh6yyLye/UTIoHyLJO4e+/gvOKLFHax4pZZ/3tP1XJthRNYIsVqlMx+kDPS11oUI0+U3rGVhqOMxcBpTu46rgOYD2BFnXsZE4x3+6y0q2DlCcmDSoO2g1+QyM/+HRKGcd1/mjzdMfOujpyUNjq4v0E7sCUj3BxpwfovtJEol7Bhg5uzfueIM/Wei5TkmX1cmEvNgfpL7M2bKj5RaMEq/NnUjCc8X/x/eZo7bsYBT6ldvvLs22pnDHwsAaRHng4H/JPxg2sGTvQEd59H4QU/p4aw1qGsmOpBQejQ+Bzi3IuTddXiCQg== 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=FovsTxIh3sdKhwhvlDI9+581GyMnAv6KKfzhlOPicuA=; b=Y6vrH6VL7rXREhLoay14e0varrWLaEVkpAEmDDlPqJ8lW1FSLoj9TYa77y7IF70JRk2Q1tw4riw8Swn671DefftYa3VWyMovp0uAF02QpkPZ4mf6GyHXt4Yya7aLSJID9LgF4cFxaRngpVcylbQLwCDOpAdNaWoM5j/e2BnhRUrQ2+mHDWKlHMrf2QwFSNC4pFFN76rZreqOItb0leqlsRZYJzdLau1COSISVgr9Ed6Dpz4wgEEdTcQ8UPoEMC3adduIjP3jFPze6N6bHKF925cOGZCVClHh8y+zxQEEGg5e1eeonLeLWAkrZX8sp0PHWyoDhjNAQynRHrY5ZeCQFw== 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 PAXPR04MB8845.eurprd04.prod.outlook.com (2603:10a6:102:20c::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.13; Fri, 13 Jan 2023 11:07:48 +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:07:47 +0000 Message-ID: <8f43bf06-9323-8838-bcdc-bfbf9a850ae2@suse.com> Date: Fri, 13 Jan 2023 12:07:46 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 Subject: [PATCH 4/8] x86: absorb allocation in i386-gen Content-Language: en-US To: Binutils Cc: "H.J. Lu" References: From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0025.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::12) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAXPR04MB8845:EE_ X-MS-Office365-Filtering-Correlation-Id: 10bdabd1-1cf5-4e82-9273-08daf5566766 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZGT47UGLerKkIQ2YUsH90rGkwM5z8CxiUXVMmF8STFSabV8ldi+zLEIMPg3vlEYi+OMok/pJGGGdkcSS8H3zXxqGorJATI3EWUKdEDA9jepuXtetZHOEABgVxCc2iBinsmYRXJr8QHhfPJeLvPNYp9/IAqSd4P8IMy8/caX8Uill+pYVDz9309oxjN2R7+GFC0Dw9rFKKpZE25wMpY8/Yvu0CmkAmT7Ufq1X6i9aDMdMLiGHb1GXnMSl8jxGADgQcidBDe2YuJMLvsVc7BVea8/Tp1o3WU3rfg1bxy+meZuPeEmWDiDq9urjsjtc9juxUMdogaqSLSzuEBrXLWBeO4khYwvUtCHSueLl4uWoTeVRCf9x0BDA+vsk/4RMRGxpUpxA/BPHHOnjxdZnmP0W4Jc/y1mrKF8HOVICjCr8uOABHX852AZ0uFs3ALWlMnqf9sIbcqly2RRVbuGOy8EsUvGzpm6AB4px/jxlI9vw1ddVG390EZoITjjUdjnOyMR9yVbW7a3A8mPP+Hug49/2Y0Ila1ln/m650Q/zgWoIuPJMvwwuFU/u+cVGFAR6Cns8HU5DKyqG3i0AecBltua5m78gv7xAgyxfaxnipxhxPJh3bPqwxld/PJzW4KlkUwOuJqTh9FCFI6Zk5Gy8LCdB3mYSN7o3NIFxeKziS8UwVu/teB/hVHoQ31HpW4aj2BQ5bUCoxIWYw8+RZeEOztJxRhBA0KOk7hJh6xpt6gXRi3PsW1KBsOpcuCupWCSC2vc0cy69bJVxKhp7ynAVSpsdJJxQirc8dQvv9oiHdfELvZM= 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)(396003)(376002)(346002)(136003)(366004)(451199015)(31686004)(8936002)(5660300002)(41300700001)(4326008)(316002)(2906002)(66946007)(66556008)(6916009)(66476007)(8676002)(478600001)(6486002)(38100700002)(186003)(26005)(6512007)(6506007)(36756003)(31696002)(86362001)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VlFjZk53WUhMQTRNUFRXbW9PZ2ZqME5yMFlZRDNpdHBOQzZiN1BtSUZlcC9o?= =?utf-8?B?c01OUGlCL2JpbHJOckcvSlhDZlg1enEzYjBXbWt6L2FXR0pEL3JNbWJSR05z?= =?utf-8?B?K1E4Z0ZJbVl2Q0Y3SVJ1eXZjcE44OVFsUU1aNlpWVE5GVmtmcGlsTDJPSDNO?= =?utf-8?B?eS9NQUVEMW5QTTF1RXRkNUNYWkhHUzFwUk5QdlFMUjh6cnNUQkVXWXc4dFFT?= =?utf-8?B?bVcvRFl5UkdLeTU0WkVXTm5KeVduUUxkeDVibTk2QUUvd1IrZ29nS3ZHdUQ3?= =?utf-8?B?b3JqUUQ1UmRIamYyekR2MmhFaXdLcThJTjhLaW1EeEdMYTdWRVo1dXdoSzBD?= =?utf-8?B?ODl2QkRQQlM0Rms3Mjkyd0ZXRzYrU1VIRmN2NFV4UjM5Wk5ZUFdIT1ZLK3p4?= =?utf-8?B?eTFXL2dEMWhvc1RsMFBSRExqQ0NCc0JSdmd4Y1hFVDEwNmUrTDRzWGwvVHdP?= =?utf-8?B?MlpueEVWeER4dXpDVTg1TldCRkluV2tEdi9IS24rTUVhWHlGNmVxZlFoa0FV?= =?utf-8?B?TWcvT0k4L1MwU1Zsa3E1cUE2ck92ZkRPZ2dwT0JoREp5OWNIOTR4MGxrbXJm?= =?utf-8?B?TlRZSkV5OEhQMTRvcFFDRmpzS25vVTNlU1lZUnA1dktZbkhwZ3MvK0t6N3Nz?= =?utf-8?B?MFpqYnFON3JFblhEMWdXL3JhVzFIVk4yaU4rMGgvbWZIb2pzYVlSMXJGcjRN?= =?utf-8?B?c0YrS3g4YUZlSGFwTmRzS0xGd0NqTEwxYkZySFRGd0xsRUNWK2wvekVmbkRx?= =?utf-8?B?UVBGTVhTMWxYYitvSWUwbkk5MWNUTERvR2RHVVIrMzJNOWNTK0VobFAwZlRj?= =?utf-8?B?TGk1RWJ2bU5TM2FTQkE1dEp0cXJnaHUrV0tsT0oxam1WU3JLdzhFUDZsNTZW?= =?utf-8?B?NW9CS1lqWWZuQ0dhVnRiMmxkVkZYdm5vcXVZZDVzeDQvOTc3NGpiQUx5eWRJ?= =?utf-8?B?Y2pjWWNRRU9GdVdkb3dKK2N3cUdMdFduZHFURHlDWjY1Nkc1YjJGZW9DWWtG?= =?utf-8?B?QUNJUXVjUVdEZXhFaWp1MUp3a2F4Sm9EVitVS0tsaExIWkRjMVcvRitQTEdT?= =?utf-8?B?UUFjdXRHcVBzNmlmOTBOS09nT0ovaDVraSt6d0xBdXpSN1REcVMxbzAya0tj?= =?utf-8?B?T0cwQm5tQ0xkSmxmU2JjMzFMR1dHQm1ZQWxGSHpCRTh6RnFndmR5K3hsNWhQ?= =?utf-8?B?SmozRkNJMUlGYnJtQWdkYlp2WU1rejF1cTlwbVJwRkttS3VHV1BqU21hUTB1?= =?utf-8?B?cFdVR3ZXNE8wT04xbGZGNGIvdVJmTFNESFlkOEdkYUREdzRydTg4ckhnV21j?= =?utf-8?B?YVI4YVA1dWhKRSs0OW9SeHFXeVZYQW5penJKVVV2UXIyMFVOTGpZcGZsM295?= =?utf-8?B?NmtNL1BubXhNZExPMTYyUEVBOW0wNzRsSWJEaDNzcG1OUXc2YVBVbTlkQmRU?= =?utf-8?B?VmpRc25TajdBaUx5YWNvdWd0eU5TY0lGVURJQ3ZMY014T05maVI5UjFpNDhQ?= =?utf-8?B?RVR2bzBSWDhDeitRZFpnblZXV01JQkNPcDM3akdYWjZ3b1l6K2VkRTlRcGV3?= =?utf-8?B?ay9naDRkNHBqbTlKczB4d1pId3dpYVVpZzNsSHR3QlptRlN3SHVtM216VUFH?= =?utf-8?B?R1FZbGVwVXlqY1VqUnkxNTU1M3ZmYWRqNk9oZC90MXZYTmhoRG5qL3NqVzZL?= =?utf-8?B?dmhLcngzMG4zUWlBUlp3K2FpbVBqdjllT01zSXB2ZmZQai83Q3krTFl3TEtI?= =?utf-8?B?RnlXRmJDYWI2bjZDY280MWgwQ25adFByTDd4eWdkRmdHUXpPZ05mbUtMOWU3?= =?utf-8?B?cHloTWZNU3l4M1g3aDhmRDRRMHNWb0lwaU40Q2MzRjZmeFZVa25JOEpRN0E3?= =?utf-8?B?UnFwSmZJK3JTdDFkeFNDVzlkVjdsTWJnMEhFWEJzT3ZsYWsrdW5aYW1HT01q?= =?utf-8?B?YmN1WkpSUVgzTjlheGIrRzliOFJyRUk4cjdKbVc0a2RKaVlDdGdTTk9Jc1Y2?= =?utf-8?B?TWhMcmF0UlllQi96QWlEcENqYjBpbW9mNldJMHZuVlFLZHV1dnhBMXZrNzhs?= =?utf-8?B?eGFNUXRueGI3cFJSMUhBZUNnYWhLWUdDZHZINlk1bm4xMDNzaDFWN01QMDEz?= =?utf-8?Q?W7uHvCkhVnGP6YcxQBATp/LAf?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 10bdabd1-1cf5-4e82-9273-08daf5566766 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:07:47.8520 (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: Acff2kOF7Zz+4LaamGG8Tb9hgkdR8WJ7DPSpBKG94amt9Gn3cYdC9rQmSLpQefyT+lGQ8EW5HtAEO5fjS+AXIQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8845 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 List-Id: When generating the mnemonic string table we already set up an identifier for the following entry in a number of cases. Re-use that on the next loop iteration rather than re-doing allocation and conversion. --- Could also be folded directly into "x86: re-use insn mnemonic strings as much as possible"; separate for now to keep the earlier change a little more simple. --- a/opcodes/i386-gen.c +++ b/opcodes/i386-gen.c @@ -1750,13 +1750,15 @@ process_i386_opcodes (FILE *table) fprintf (table, "const char i386_mnemonics[] =\n"); fprintf (fp, "\nextern const char i386_mnemonics[];\n\n"); + str = NULL; for (l = strlen (opcode_array[offs = j = 0]->name); j < i; j++) { const char *next = NULL; size_t l1 = j + 1 < i ? strlen(next = opcode_array[j + 1]->name) : 0; name = opcode_array[j]->name; - str = mkident (name); + if (str == NULL) + str = mkident (name); if (l < l1 && !strcmp(name, next + l1 - l)) { fprintf (fp, "#define MN_%s ", str); @@ -1769,8 +1771,9 @@ process_i386_opcodes (FILE *table) fprintf (table, " \"\\0\"\"%s\"\n", name); fprintf (fp, "#define MN_%s %#x\n", str, offs + 1); offs += strlen (name) + 1; + free (str); + str = NULL; } - free (str); l = l1; }