From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2059.outbound.protection.outlook.com [40.107.7.59]) by sourceware.org (Postfix) with ESMTPS id 65FBC3858D1E for ; Mon, 27 Feb 2023 09:03:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 65FBC3858D1E 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=i4goytoI/j0tqK90kjNAyDfonUgxrTGgJSV/0sBrqe7zGFqOO879YICMaCYrfh4HfH0Ivz2cbc1phSvWpf8qJYLVWayPAdZqZ6FCDPdsxoKNhmFafYx2qgNQiCvTMcieWqWta5gpvcsCCECJixhaQ/RJpFKKRw+/09j0w9at8gpso3lYWXnOx1JuuRGcGOMsowC3myuAuLaYCfoSYq2l39yoBFnH58V1daKA2uUid1qRp9QBjizBvxKPMFQjoPPdCp4Y/u8HYNgSOVh3ox0Y2fofvQF5XBwKEtzoO5RAD14Ampj2eUWpkjG5t0jtIf1pI8lh9wynY0A7f9gwi5NrCA== 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=d74q+qsIOKlRxpcTh4dvcav9poFSmAOB7FuTYoStLk8=; b=WS2tvZzz15wLkUzAUuGXnw14+VGZODDSkMWyq2TKQc0QdwfWSj8QBwv4VDKlLjJU4hDPs7omBWaX672zNHpVxVMOoLSiOFdhraOhpNsVSt71Q3NgRqN5tGHfNZbIFoXQlJ8S6atGJ+Tmb41MTNKAH5yhSBMiRpHP251ewnghl5IzLvI1yoNANpDOC0Capno7LUnTfnQzlQ9U0qMSGu7U084STZmJ2XlXRLaD7KoJpmZp4XnkIfPA4pzK7eZtrvoOuZkr6ojodukbke++AUSSs9YWccgbLgQA4GtjSfyzvpGwJBAsdM3oyWUUdZoVpQgDurP8EzRsA0ZodDup9Tf8bw== 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=d74q+qsIOKlRxpcTh4dvcav9poFSmAOB7FuTYoStLk8=; b=QqVInMxxulFBPXIiGw84AmK3iqah5EJn9GLVviyBdgmar/1jt4C8dQ7GYw2WgV5XD3LCQnJhIE60w6bsX0DU46zdk36vHqTVdfleEJva45MxYTk/SyEKQdVEsDp8Fnjgt0ojQJvUEHVxVxfUbfKfGWOwHHghI+GD0TNPX40U2nsO+GEsd91QKQRWG2x6HIfPLPx0RTi+aWTM1xtJAxT69AY+BpmHd/ks2X4cF23FzpDlgaEjcjZ1CYrn+NRMjfrOiXVgAR78lmRxBYDi8Iy4T2GfsnMTyvg+VCIV+mv3qS5ormHNJcKxa1/Ai03KmzIFf3R904/ydRtNB56DnxqX+w== 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 AS1PR04MB9333.eurprd04.prod.outlook.com (2603:10a6:20b:4df::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.21; Mon, 27 Feb 2023 09:03:04 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b%7]) with mapi id 15.20.6134.027; Mon, 27 Feb 2023 09:03:03 +0000 Message-ID: Date: Mon, 27 Feb 2023 10:03:03 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH] gas: Add --force-compress-debug-sections Content-Language: en-US To: Tom de Vries Cc: binutils@sourceware.org, Michael Matz , Nick Clifton , Alan Modra References: <20230223124519.4228-1-tdevries@suse.de> <7dcb7bfb-f65d-aed8-78d4-944211ef5127@suse.de> <819f729a-da9c-3b8a-3769-7995c009704b@suse.com> <14a2defc-5371-84bc-2d59-9980755b112a@suse.de> <02dcf47c-4256-c5e5-de9e-814b60da8ce8@suse.com> <7cb226d0-1a91-9bad-181c-46f79c4d6eaf@suse.de> <0c60eef7-c612-ec37-8c3f-36b746ff8d95@suse.de> <711d9da5-8f31-3f1e-530b-5ae01780fcad@suse.de> From: Jan Beulich In-Reply-To: <711d9da5-8f31-3f1e-530b-5ae01780fcad@suse.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR3P281CA0077.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::10) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS1PR04MB9333:EE_ X-MS-Office365-Filtering-Correlation-Id: c514b85a-70e4-4ad9-6d83-08db18a16f21 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qmLg3aXLNOrNNOxRLOpoOBaxaM0rP5ufWeKPZLv4OXfI/RPh0gvq1gyoXjuLQvljSLNhqf8Kh8wl+5jvMQnkWrsJ6U8SRNXToLjYRE1SlmTJMjg3/E9cif8a1BJ1Oymn/XzQrYiDeCV9IYy6ttY7nA8y6aQLh+KJD94bsMo97oCst/4s/vFiy6gu2wmJPx12CS/LxvJGI7mm6oLsjIU8cuC8tJ3QoOMSUbjNYnbLqn9CcTFWUvVw0XTE8+j6EIJphH5106bNblqN9rppLhKhI5SL76ezsVTM0CuHlVFvJ3i5onZmsg4s5v6/euQynsDv+XZWagiaGDkzWbEUu0dEGNGmgkR5gtwpayH/Ur3GWujWgGOzB1WikL18Z1ULuzbIetV37eC0D83Q2ldbH9E3rQNvgv6WHpyu1BZ/X/a6PGG6UEDXzck13kwQ+T/2S93J/jvw/PIGGG/kgR5zmFPo6CHSGdmsw/K1iSnxl0xMIVNsAVhPyyw4VOxDzhM/uQ59EtgXGPK/VfsTBkRi1qWXtpxqITiOb86jaWzDnTW4JFwK3MVdflIQPpS22J4D8D68VCVYKj/cP3/71zsfl8v/0gd/q0BJqDOHqDyXhWFfp3thx2WfPmjk7nxQFiR+9kd+b1IdUT637MetLZjZslP0oQMw4N7wTK8CD+Cj+3nfBQK/E/N04TrDeHguyrfomiZvZq2cEkYf4ceyxjFvnCU47cGGi54WClOYANHUXaN5y3s= 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:(13230025)(366004)(396003)(376002)(346002)(39860400002)(136003)(451199018)(41300700001)(38100700002)(53546011)(186003)(316002)(26005)(66556008)(6506007)(6512007)(66476007)(54906003)(36756003)(478600001)(4326008)(8676002)(66946007)(2616005)(6916009)(6486002)(83380400001)(31686004)(5660300002)(2906002)(31696002)(86362001)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ak1yZUVyTHpUMlJqM0JkMG4zTEJ2YWZOU3NjN0hJM0ZWWXhFVjlWVVM3Z09h?= =?utf-8?B?QURrSlFoTDJMaWlqb3NJc3k4anpJb1IvTGMvQlpvQUMrbTk4SktDaWN5Zmhv?= =?utf-8?B?cm1qVzJOYnlxa3NxcTRuQ1h4R2traWd1ZU1DVjlFNnJzc2c1K3BpeGZObUJY?= =?utf-8?B?WHoyZWpxQUE3S0JKbmdKVTZPM1NqSVlQV041eG9iUmRiSWxwT3NRMXNhT1Nt?= =?utf-8?B?czV0VEdlUE5YcHBMb3NhVmRNUE1GOHlBR2VTd3lQb2RZRmlyMUc1a3FLZllJ?= =?utf-8?B?K2xJYUJTbTJpZGx0RGxKZnlqZWRnY2pLWTFzTGgxdUVjUVczbkVEV3duL2F3?= =?utf-8?B?MTd2Sy9jeGkvSTR6amJzVEVCdjRZdGJMRDJ4QmUyVjBtUm40eWtiTHF0RG1a?= =?utf-8?B?MnpSVGM5U1YwRkRMZkxYUkdzY1huaEZXYW9qbnRWRGZZb2JXSy93QWY1VUZ5?= =?utf-8?B?S0ZLckwzRERzWUtDMlRlaHpGeTN5NUxNbXNKQ1NMQ1IzUzY4cTVjN2V5NVJw?= =?utf-8?B?QlpMR3VobzlnYVE0WkRDaFVESE5VTHBFL0lBMHExMzJ4Ykg3bnRDZHFYQmxS?= =?utf-8?B?VlZlbnFLbjJyUlkrUHNIR1R0ZXZCUzlReWVuY3B3TVdLNmQreVpmNmtScVVz?= =?utf-8?B?Z2lib1RiTzlDMi9ZVFYyT3pneFQzZ1JhMjhlQ2RPNTRDOTU1KzJaTmFIeUlq?= =?utf-8?B?b2JJanpoaVBSbzhXb3NMMm4rTHRSZm1HSGpFYzN2KzRVUU1RWGxGT01ZbGVQ?= =?utf-8?B?RTVMdGhaMGZiTFhLZitPYko3OEtGd3pTcEFoTk9CKzJXcXNKWXE4eDdqN1lT?= =?utf-8?B?S3QvRm1vZk1kOElhcUwxeWtSajNZWStoVC9WRlZoUEptcEFTN3FKa0d2bnpB?= =?utf-8?B?T0kvWlkwMEF5MGZqTnA1Q245VGlXdUxzanJjU051akNNd3lXc2J2VXkxbHRT?= =?utf-8?B?Ny9zZmVXR1gzVzlXbTREKzFMRzl3TkFBdlliQWwza1VCOVIwZmdqeVk3RllW?= =?utf-8?B?RXlKOUM3UGlXZGVwZnpSajUwUTBnWXNJbC9xc0JGWVNEZUFuYkFwY3U5TEo4?= =?utf-8?B?TkVlWkw2S0ZNbkcrWWZGdERoaCt2OHAyV1Y4RFRGdUdmNHcySFJSNzU1L1VS?= =?utf-8?B?RnV6UUlnd2ovenM5VlFGbmI4amRXejlleXBTSUFVaVVLR2hrazFJcWN4UWV0?= =?utf-8?B?T0Q2VTRzeXljNlB0L1VzK09xeXVoSUFJY3k1UWJDaWJIbDlzLzdURHJRelFs?= =?utf-8?B?SE1HU04wcUNxYjdyYTIwL1BBMzkzR2thL3Z2SUlWRFZ3bXRqTSsyVExPUFNN?= =?utf-8?B?bjZiNzBXRWk5cnlOaWMwTUtWa3lzOU5EWjlGMXFiYjNtYXNvVEp3UTNKSlBs?= =?utf-8?B?ODdHUjJvekVKUEdlbTVOUGNZSFUyWUdRV2pZV0FKMXo2ZEhrWUFqSFN3Yksz?= =?utf-8?B?U0hzV1VZcG90cFFKclNtbE1mOVM2YVBuN3pqSFE2NmQrRGg0UFRpRFNEZVJz?= =?utf-8?B?VjJEVndZRWRwM0x2bWNNMlBYZmdmdUlmei81WlpmenNFVkxhcnZ6UHYzaHZ3?= =?utf-8?B?QmVTQ3BSREYvdllPK1pJOU16MkNaN3c5bGV3Z29ocDU1Y2hyUzg2ZjJyVWNH?= =?utf-8?B?UkJDZGJvdjR4SEx1OVNLSlBaZTIwZHhvS0FxNU84K2pDbVdyZXlmNFZ5dm9l?= =?utf-8?B?aTlweEh0MnI1MXdwNjhlSWlyTUJwby9IQWErWkl1VXNqWWllRHJqS3F1d3VM?= =?utf-8?B?YkRvdS9obVFVb3JXbnEzMlJmZHkvTVdPanluc2RySUd2dksvekdNcUJUeTda?= =?utf-8?B?QXBrWTlJYTJ5Ujh0MHl4M2tCMzhLK3NCRGN0R09pV21WZXhiM0Rvb2Jkd1ph?= =?utf-8?B?NURJSVJrSHE4VWI5b1ErbXg1VnNLUWY1eUhjMnlyK05TUGs1KzZ3QUZLcXpv?= =?utf-8?B?K1grUTJsa0VXM25tMVJnSWFBVkFSK3RXR0dFNGRkb0lCTmFrZktra2Mzc2Fn?= =?utf-8?B?Q3RiQXY5K2lKQ1pwb2ZrTHpRRXNRV002cHNiVmtnZjZQM2s1cHZwS0ZuZllq?= =?utf-8?B?RkJWU0F2blROTDBRRDZXTFVFUGFyZVV5bTFCWFZueU5DN1NKTVViaTJyaWYw?= =?utf-8?Q?Qn484US9/fZKn20jOfYlZA+eh?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: c514b85a-70e4-4ad9-6d83-08db18a16f21 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Feb 2023 09:03:03.7882 (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: SVBmQC6tiC6cvYTxfyJyA7Ocaih3HuD1Un7FBnuImzUJxAVIGXUG6F+X5MSp0y8qxS7tJ+uOGb2vTuD2EytSbQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9333 X-Spam-Status: No, score=-3028.4 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 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 24.02.2023 15:57, Tom de Vries wrote: > On 2/24/23 15:26, Jan Beulich wrote: >> On 24.02.2023 15:11, Tom de Vries wrote: >>> On 2/24/23 14:23, Jan Beulich wrote: >>>> On 24.02.2023 13:21, Tom de Vries wrote: >>>>> On 2/24/23 12:28, Jan Beulich wrote: >>>>>> I also wouldn't see anything wrong with something >>>>>> like "...=force,zstd,none" - the last one(s) win. That's no different >>>>>> from specifying a second instance of the option. And without that it >>>>>> looks as if the parsing would end up simpler. >>>>> >>>>> OK, gave that a try. >>>> >>>> That's still accumulating none and force across the entire sequence >>>> (and then giving none priority over force, no matter that force may >>>> have been specified last), >>> >>> Um, so you're saying that none+zstd+force is currently interpreted as none? >>> >>> Lets try: >>> ... >>> $ gcc ~/hello.c -c -Wa,-gdwarf-5 -Xassembler >>> --compress-debug-sections=none+zstd+force >>> $ readelf -S -W hello.o | grep " .debug" >>> [ 9] .debug_line PROGBITS 0000a8 000064 00 C 0 0 8 >>> [11] .debug_line_str PROGBITS 000110 000046 01 MSC 0 0 8 >>> [12] .debug_info PROGBITS 000158 000046 00 C 0 0 8 >>> [14] .debug_abbrev PROGBITS 0001a0 000049 00 C 0 0 8 >>> [15] .debug_aranges PROGBITS 0001f0 000034 00 C 0 0 8 >>> [17] .debug_str PROGBITS 000228 00005a 01 MSC 0 0 8 >>> >>> ... >>> >>> So, that doesn't seem to be the case, compression is done, as expected. >> >> Oh, I've overlooked that you explicitly clear *none when you set *force >> (my attention was mainly on the bottom of parse_compress_debug_optarg()). >> I think that's more involved than necessary (possibly merely a result of >> you having worked incrementally from your earlier version), and less >> obviously doing the same as would happen when multiple separate options >> were parsed. > > I've tried to simplify further. > > Is this more how you want it? I have to admit that I'm still puzzled by the presence of finalize_parse_compress_debug_optarg() as well as you needing both a new static variable and a new global one. But I guess whether that's really needed first of all depends on the semantics we want e.g. --nocompress-debug-sections --compress-debug-sections=force to have (which, with how you have it presently, could also be expressed as --compress-debug-sections=none+force or --compress-debug-sections=none --compress-debug-sections=force afaict). I view the present meaning as one sensible one, but I could also see "none" (or equivalent) simply zapping the compression type (and hence rendering "force" meaningless) as another sensible one. A change in meaning may then also result in the three option combinations above possibly not all doing the same. As an aside: As you update the patch, please try to keep the title in line with what the patch actually does. Also, ftaod, I don't mean to stand in the way of another maintainer approving any of the forms proposed so far. This specifically also includes the use of '+' as a separator, which I personally don't (currently) intend to approve. Jan