From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on2059.outbound.protection.outlook.com [40.107.247.59]) by sourceware.org (Postfix) with ESMTPS id 3EEBC385843A for ; Thu, 2 Nov 2023 10:35:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3EEBC385843A 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-Filter: OpenARC Filter v1.0.0 sourceware.org 3EEBC385843A Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.247.59 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1698921332; cv=pass; b=YtiB6cLrmEr7/vngwU6UKWtWFjy+1VMNPR0DsGCX+RrctpCkfDi16QqaPR/9nlwqk4VUwYXBbBZxDh4jmt9v9np1zndETbpbBXCKf+3lQpHPowDcsdVU89KA+VadKH3JOiV1v3bbMefqTp8tiK2IVVXCqXOZ5ilVbA3lvwwQ36k= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1698921332; c=relaxed/simple; bh=pCL0PsN1dgRV1qoX+l7IMdq2iFxNx5rmLjhXQnV2XII=; h=DKIM-Signature:Message-ID:Date:Subject:To:From:MIME-Version; b=gZ7v/32v7B/BigtJ2ZTaCyyJ8RPc1xogStvi6YW1wc0jp9Wp8h7HR08lFouFKzsQN1lCDXIp8pY6TYwkg+BrT3/+cG5bfDTqwYDY5o6ibCB206AeKwi4BNyoyTtFFy5iV4pk6HuxYUntKihB+4HRnCP7KCEODQA9sW0cjHP7Pew= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hAK4jrTyB8tw1cJJp7zV2FfczVOAtIr686iBKbJpKApWWduNKPpWXywgsa8JI1qcEs7geopqLxxDxTcho8zl/IMp5GxZKdCkGzJC5U6JgnZPoEUUU8C+cxKy/GB8H5wF95L72u+4O8oY9/9g8kH0nV+Pz+SK5tqTvPVmdngJtEFKRHb/Knf+PE0UjdvmHR58awoi0MnN6AKYUpJ5HOTAat1BMYy83BssKzV+00DWLCkdCSBQXlykVWhMvk9kvS1p6PuVj0/JZh+Pw5GCGaG5z45W7Onb/Tx2Nk2uy8z0dVj5Mv2ckJMp2f3hHNz7itNolJoN7yVDguSY8FqDloF5Xg== 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=oU3R7EJAuoIHcVXEmQjSXWuAsFc8CczXUd9n/nX3sYw=; b=PY1ROLTgwcuV3Jt2w3NoK0PNZYSntQ1O0XLSptb8BNhxvRRbxcieSv3EWuAD2IZWkOftB6aj79RT8y22tf17oF3OgqHWLaGEf07gn1NZTWvKPwfXW0gXEv8UUoqe4jV51Wkrovogik4jyGdg8JS5XzcHlj9+FZAei4i7Ygadvjd9UcbHHlSp+ZQ3fP3Ywm92HNGBzvupCe5/rP5hJrE7f5dWykw7803m+UDsBi8ShpAUYl3H1PHIN0nC8XzQ8y4PKaaQ1dwCPYoEtOKtc+LlxQBCpliEydTCaKNpFAPHnhOi4xueacZFB76CCFvJFgwRkUhgvHWuWo9flUvSEVaR9A== 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=oU3R7EJAuoIHcVXEmQjSXWuAsFc8CczXUd9n/nX3sYw=; b=YfzZ6jKWC+Sjv/OI5a4EZqoQL4EcLVpWmG+xSWRRghSdLyNWkH1KfE83FKx0T/kEfMYVTKERtQkGtK1wrry8YyD9h7ckp4BNto3bAOwhlCd+3ve3+4Z1/ZLwqbyP+udUr28mY/Ir4qTnpZx6PIqX4r/3RPGpfn7D1vuTLfS3cnV9RLscw2hitv0OdgTnhnmz3+kS6Dr5yK9hYUIc6MexgWBA0vLzBz/xoqiK4KHGv87l85uF2pzZ/k3AfwmzD/ZD1mK1XQd66LnyyqKnADvWZYs5V615MVQTl4z+Rjnidu45slRuana0+k0Pstt9t3Yha2X5MdTFY2kep0s4iDFHYQ== 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 PAXPR04MB8576.eurprd04.prod.outlook.com (2603:10a6:102:217::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.19; Thu, 2 Nov 2023 10:35:20 +0000 Received: from DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::d924:b650:a2ad:7b25]) by DU2PR04MB8790.eurprd04.prod.outlook.com ([fe80::d924:b650:a2ad:7b25%3]) with mapi id 15.20.6954.019; Thu, 2 Nov 2023 10:35:20 +0000 Message-ID: <21f3c19e-c543-0c6c-cd4c-f0712324173a@suse.com> Date: Thu, 2 Nov 2023 11:35:18 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 Subject: Re: [PATCH, V2 06/10] gas: scfidw2gen: new functionality to prepapre for SCFI Content-Language: en-US To: Indu Bhagat Cc: binutils@sourceware.org References: <20231030165137.2570939-1-indu.bhagat@oracle.com> <20231030165137.2570939-7-indu.bhagat@oracle.com> <7dafd71a-33cc-4894-bec0-9c6621cb8144@oracle.com> From: Jan Beulich In-Reply-To: <7dafd71a-33cc-4894-bec0-9c6621cb8144@oracle.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR4P281CA0404.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:cf::6) To DU2PR04MB8790.eurprd04.prod.outlook.com (2603:10a6:10:2e1::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU2PR04MB8790:EE_|PAXPR04MB8576:EE_ X-MS-Office365-Filtering-Correlation-Id: e684d6e4-9588-48ac-c5be-08dbdb8f696f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: euN5M2UOFJTc579WIYd4TOgM8C5KM2V8sZwzn/SVcEPzNN4cng0uhpaHD3SIuZiM6qVqP5x8l0pT7gyFG5AA0M2QnMEoj+vFCsfLuw29mn8a2OQy1PH+EMr/XmrM9BMpY63+k2OUFqKu7XwmqLRwexqnzwH5ciNhoXY1TFjTFnK+pFTTfcwk8STiRTWekwBdZPNxO+PoHPnRuV72KVDOhJa2xYlm/nyfpw5ebcj0QWkBegHbnLlcQDwP6Hp8oN1y9X33wdTLfzZLPvik3wvLEclwFrrIzMrZ5loDMgF7q2UhjvHfVjyuQQr5KF4ddwZaJEymFbr3sxh3esOC2JO8qe67Spynj01jTkfiY6LfGY7l2FRR8oP74PhM4OMe9XMfhndy+O2svd5Tnw7ZK/X9fZvNZEH7SV43xEB0OejNumMsyblXvAMFxMiu9d7CQMtO4zjV1xN2fUglvHM0zx6XnvoggQu/cJDgTS5sMi02lWCH6D4vWJMVd191OEXIRsxzlAvBkTvF/saYAKM9N6VvxqBM8k0GnQkI3F2zBZlYiparaMNpPqKJpHvxS7gQj6sb80NUOgisk23h8GECC9PPvOjhCdDWNhySZF52m37HvA/JFAKUb654mDEueVXcD1rVAi0uM0/hDz277ogg1NEC1g== 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)(396003)(366004)(136003)(346002)(39860400002)(376002)(230922051799003)(1800799009)(186009)(64100799003)(451199024)(316002)(6512007)(31686004)(6506007)(478600001)(53546011)(38100700002)(41300700001)(83380400001)(5660300002)(4326008)(6486002)(2906002)(8936002)(6916009)(26005)(8676002)(66476007)(2616005)(86362001)(66556008)(31696002)(66946007)(36756003)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?eE1GUFg4Q0Zpb0s3TUVPYm5rNDdWbzNEOWpuYnV1RFhsanlLTlNKUVpLWlFE?= =?utf-8?B?bFF0L0RaSnY3ZmNHaHdJYS80NnFtZEY0ZjlWQVJVY1ZtS1licGVsN2cwaWlx?= =?utf-8?B?WndTMFdOKytuZ2dvcHlkYzhsSzJnSnl5NGtybWsrOXQxcVh1UWh0QkpaNUdw?= =?utf-8?B?bzE2VVZkMnEwdWxwSjh6MHJOckRSclo1a01LVnlTM3VwWWw4aVRRWmE5V084?= =?utf-8?B?RUhtcTkvaUFkL0RxWVR6aUtEc3dFVWZQQlVmNHZKTTZYdUNjaGU2RVU2dzll?= =?utf-8?B?M0ZLdndTc1FjSWJmdDdaUE9Rck0xT3NJdEhXbnRid0JlWTVGSW80M0p5NWhH?= =?utf-8?B?Zk5NWG1FaUl1UU1GVWJSTGZ3QVYvRHlINk1wclg3V0F1WEhGWnlQR0Zva1hD?= =?utf-8?B?bmg3OTk2dlU2c0lKTjhGenVsV3FTWFpYNVQyblprNXVEQ2J6Tm5Tb052T2pK?= =?utf-8?B?VkxkRncyam5teDZ1NDZPd0thQ0RrcGFwRzRaOXlobWppc3orV3k2dTlFelM1?= =?utf-8?B?cUhOcnBDYmZWRWZ2KzlZNlhCRS92Vlg2ZlJ6eVFJYVdCZkxXYU1oWHVOVUR5?= =?utf-8?B?ZVhkUXF3aHBPbzRJaEl0dlc2d2d0MWNkR3hyZy9BdnFHY0RReHpYYzR1QUlQ?= =?utf-8?B?UW9oQ2VLK2FlRjdsVmRtek80aUs1VFQ3VVpqcWlwQkx2WVBhN2V0RHNpUzNB?= =?utf-8?B?R1p4QTJqUHpwWG1VdWZWSUNKQ0ZUUXgwMHMwMHRnVXpkM2Qxa2RNbnh4TFB0?= =?utf-8?B?T2xFNXdZVjhNd1cyQVZrSHpiMlNncGZieEhaK3I2ZFFsam9neXRpeXVJTU1l?= =?utf-8?B?cDlrTHpwR2pwdEh4WTB3NVVSVzBwelh1bnJ2OVBGVkJsTWdoMHZublZmb2V2?= =?utf-8?B?MmFDTmppd0dKUjUyeWpnTjUwN0FncFA1Q0NCV1QzbURwN1RBejZ1RFFYaWRw?= =?utf-8?B?RE1RWi9qT2pqNTdiV1JMdXU2UjRoNUpIMGtRNTgyMUN1VWJ5WWE4a0tHSEl3?= =?utf-8?B?RzV2V01vKzBOU2s3cVFDVDFrV29RblA3Y0p3R2IvQnhzN2NkT1JsYTNxeVVL?= =?utf-8?B?L3FEUXNNUjkwSzZqa1pWY3NtZlNOcVBUWTdPM1Zaak1GNnF2c29CNmZhbHV3?= =?utf-8?B?b1h1ekJldGNwYmszbndjSzJZYjd3UzVOOUl1dDVkY3JnL2lOL3dkelY2RDBK?= =?utf-8?B?RWYvWUtPSHEzNXg2V243Tm5lQkVYSVI4cjNNTGJ6YmVmWVZTRG81K0VRUVY3?= =?utf-8?B?SkNXVWw0VDh1aDFZWU11S0NoYkNxTnhNWlNVYmg1aTQrcUJXSmU2T2srdnZJ?= =?utf-8?B?ZVE3Um9nUHorQk05S2VObllCVUhOZ0xBV2xMQW9FRHA4VkkyQmdsZDVEcnlm?= =?utf-8?B?eEVlSlV6NlBZYnM3YkFHeFgxWWxSb0tTQ0gvSUZud3RsVFdkY3M3T2ViUDFT?= =?utf-8?B?SmFFTW5XM2x3TnF0bkFpZmo1QTVaV3dNc3U3SCs0c3Axb0V4TUlwYW8wSEtH?= =?utf-8?B?Y3FHREsrL0ZOTEZUekZNQTJrUDkzT0M4NmJBK1FoanlyTkZtT3IvOWw3OXp4?= =?utf-8?B?WVlZQ25VTldmd01GWHh3aVFkSFRmbmp4WVZnejFUOGV4OC9sTTlVZGNWZkZw?= =?utf-8?B?WENkZUt1cDZaMXEycWRlS2lPQXYwTzVjRTBxamdQc2F2SkF5VlVqY3JqeWw1?= =?utf-8?B?NXBvSEh3cjRUTjh4aWZMeHV1eUZ4eDJHS1kreDJwbUlKcll5a1NPRjZSRDZC?= =?utf-8?B?ZENhSWVLakVtWGlhWTJOUHV4N1F1SmhyYkxKeEcvbitRZWxQRTQvMTFSaE80?= =?utf-8?B?R2F3Nnl2eld4Y1FFR0pCeGFlbi8rYkMzZWdVQkxteXlNR0ZFZlVFdEpLL2pC?= =?utf-8?B?bW5vNkVMK05DS2xUd3ZCWVA0cE1HQi96VTZSb1FCRVoxc0lTSFFYcnpHc3hk?= =?utf-8?B?TFFjQU5YTTdRTkFNRUU1QnZwSmU5TWNIQXMyZnUwL2t1WStoV2poeCt3VzNu?= =?utf-8?B?bnVqTWpXLzQ5eEp2VHQxSTUwbUJsNXpka0g4YlFKZEZqQkQ5VmF1MGNCcEgw?= =?utf-8?B?eFg1Tk1kdWh1UkZjNU41VnhockdVRGU0NHJMMllwc2R5Mmlxcm8yNlVRQTRq?= =?utf-8?Q?beAFQZOIi9qKq0jgWAt60qNkB?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: e684d6e4-9588-48ac-c5be-08dbdb8f696f X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8790.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Nov 2023 10:35:19.9971 (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: l+zLHPRCtB+9XwBMTEnPuzftaJEzcAPyqJ9MqmjvmlYnndrsJ+lG2bz6nzWCCvGX9kb4Fa/9Zur6k25l8R24wg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8576 X-Spam-Status: No, score=-3028.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE 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: On 31.10.2023 23:06, Indu Bhagat wrote: > On 10/31/23 04:28, Jan Beulich wrote: >> On 30.10.2023 17:51, Indu Bhagat wrote: >>> +void >>> +scfi_dot_cfi_startproc (symbolS *start_sym) >> >> This and the following two functions presently have no caller, and I >> also can't spot equivalents in dw2gencfi.c. How are they (going) to be >> used? This ... >> >>> +{ >>> + if (frchain_now->frch_cfi_data != NULL) >>> + { >>> + as_bad (_("previous CFI entry not closed (missing .cfi_endproc)")); >> >> ... for example suggests that the function here might really be the >> handler for .cfi_startproc, yet the table above says .cfi_startproc is >> ignored. >> > > The callers of scfi_dot_cfi_startproc (), scfi_dot_cfi_endproc () and > scfi_dot_cfi () are in scfi.c, when its time to emit DWARF CFI after > SCFI machinery has generated the SCFI Ops (See scfi_dot_cfi () and > scfi_emit_dw2cfi ()). The callers are added in the next patch in the > series, "[PATCH, V2 07/10] gas: synthesize CFI for hand-written asm". But that's not in the context of processing a .cfi_* directive. IOW the message is properly misleading. >>> +#else >>> + >>> +static void >>> +dot_scfi_dummy (int ignored ATTRIBUTE_UNUSED) >>> +{ >>> + as_bad (_("SCFI is not supported for this target")); >>> + ignore_rest_of_line (); >>> +} >>> + >>> +const pseudo_typeS scfi_pseudo_table[] = >>> + { >>> + { "cfi_sections", dot_scfi_dummy, 0 }, >>> + { "cfi_startproc", dot_scfi_dummy, 0 }, >>> + { "cfi_endproc", dot_scfi_dummy, 0 }, >>> + { "cfi_fde_data", dot_scfi_dummy, 0 }, >>> + { "cfi_def_cfa", dot_scfi_dummy, 0 }, >>> + { "cfi_def_cfa_register", dot_scfi_dummy, 0 }, >>> + { "cfi_def_cfa_offset", dot_scfi_dummy, 0 }, >>> + { "cfi_adjust_cfa_offset", dot_scfi_dummy, 0 }, >>> + { "cfi_offset", dot_scfi_dummy, 0 }, >>> + { "cfi_rel_offset", dot_scfi_dummy, 0 }, >>> + { "cfi_register", dot_scfi_dummy, 0 }, >>> + { "cfi_return_column", dot_scfi_dummy, 0 }, >>> + { "cfi_restore", dot_scfi_dummy, 0 }, >>> + { "cfi_undefined", dot_scfi_dummy, 0 }, >>> + { "cfi_same_value", dot_scfi_dummy, 0 }, >>> + { "cfi_remember_state", dot_scfi_dummy, 0 }, >>> + { "cfi_restore_state", dot_scfi_dummy, 0 }, >>> + { "cfi_window_save", dot_scfi_dummy, 0 }, >>> + { "cfi_negate_ra_state", dot_scfi_dummy, 0 }, >>> + { "cfi_escape", dot_scfi_dummy, 0 }, >>> + { "cfi_signal_frame", dot_scfi_dummy, 0 }, >>> + { "cfi_personality", dot_scfi_dummy, 0 }, >>> + { "cfi_personality_id", dot_scfi_dummy, 0 }, >>> + { "cfi_lsda", dot_scfi_dummy, 0 }, >>> + { "cfi_val_encoded_addr", dot_scfi_dummy, 0 }, >>> + { "cfi_inline_lsda", dot_scfi_dummy, 0 }, >>> + { "cfi_label", dot_scfi_dummy, 0 }, >>> + { "cfi_val_offset", dot_scfi_dummy, 0 }, >>> + { NULL, NULL, 0 } >>> + }; >>> + >>> +#endif >> >> Is this really needed? Can't you simply error on use of the command >> line option, without the need for the extra table and dummy handler? >> > > Actually, gas does not even present the option --scfi when the target > does not have the two required defines TARGET_USE_SCFI and > TARGET_USE_GINSN. So I could guard the code in pobegin () in read.c > (and remove the dummy handlers in scfidw2genc.c): > > /* Now CFI ones. */ > #if defined (TARGET_USE_SCFI) && defined (TARGET_USE_GINSN) > if (flag_synth_cfi) > { > pop_table_name = "scfi"; > scfi_pop_insert (); > } > else > { > pop_table_name = "cfi"; > cfi_pop_insert (); > } > #else > pop_table_name = "cfi"; > cfi_pop_insert (); > #endif Except imo preferably without redundancy: /* Now CFI ones. */ #if defined (TARGET_USE_SCFI) && defined (TARGET_USE_GINSN) if (flag_synth_cfi) { pop_table_name = "scfi"; scfi_pop_insert (); } else #endif { pop_table_name = "cfi"; cfi_pop_insert (); } Jan