From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from CAN01-YT3-obe.outbound.protection.outlook.com (mail-yt3can01on2061.outbound.protection.outlook.com [40.107.115.61]) by sourceware.org (Postfix) with ESMTPS id EB0033858C52 for ; Fri, 15 Sep 2023 16:29:09 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org EB0033858C52 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=efficios.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=efficios.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HQmLOSTm8Q8x+I+qYA4LGoquTe1gp6BzrsFBS/bspqLFzDn3KF3oxD9GZNd9S9Uh10lfPou9J4qtvtYpZk5l7qjZjyd+W1mALWPdVAjLB8UOr02Qvk1w3ZvPsYSNoFgajB3tlapPTaD6pk0EjIUV+b4Gs0pZD5iNMHK/kKxZMIh37hiazlapFZ6wQoiWYFO6l+o9D/3v3Wk0qKg5rdVwWzCy3SDaQcXLD0HWhKTcbnV+edu4GRjQnKZ51DESHEBQGAT/GfoT+E2xS81L+1kRz25YiQX+1SKCy02UrihBnPn5bQKy6bqOBOshcd3csDehS8+oIGtc/WBefhktr72sJg== 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=kvLCdZSK88XnPKDw31JdrxzOOy0gGjJYDtyQK48IVTY=; b=SrSk/hlYnUycYrv5DdXDV2HGI8ujU5gUytitw3L4Ld4alql+qvGU9J/iAfMzoQL0wyBic+CkvS4sXWNTy38gEui4FQL14mC+zcLhXTaxBxKQBesN/8cGA3bklUnut1McGK99sGW0qyIWQIXyVTq9hC3ArPOce0yWO2UIilTqn18AxdeRDYlhq3Fz6EMfdjjt3PwoVvhDTAhR+yTCdlhvTUo0vyvec7lG/HKKl5Y//BEURb5kT40O7zv+CLovJBCSs0f0mzYmqBIkZZ01Vuc8DynxcKUlS49X0869+gSVhx4IMh2qhoUqqtVaUnY7MoVJ3a8aHEL7cb7fNilBCno7Lg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=efficios.com; dmarc=pass action=none header.from=efficios.com; dkim=pass header.d=efficios.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kvLCdZSK88XnPKDw31JdrxzOOy0gGjJYDtyQK48IVTY=; b=uXgx6CyGnGl/rS6sUnxsRRcjO9J592t/+abVGuLnLUoELf7b5ClIMRqMeXNdgY3ahM5tWgymymWC9mLWMkXFfabwxW3QcLV7uxJtnpSalkTv/BeEinCK0nLgqmUVkrA8SbOBrtDLmLyLCvi2gnx9S8pjdZK71sDqkloWFqTJEyGhPg2c+R9uB5ilRI5IZZwZEkOAmpKEiaoxyZfTmPy3pFwXrU0L8w6A+1iONAgil0SatSu/8JvJqUvjXOqlb9wXt8xsNUVxza/pjeD5JCJZCsorw14XbwPwVI3DAMoYmclM1JkodKuoVhmWCclhUlcfwirZ+gmq1AV9szYgECd2xg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=efficios.com; Received: from YT1PR01MB2828.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:a::23) by YT3PR01MB6472.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:74::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.22; Fri, 15 Sep 2023 16:29:08 +0000 Received: from YT1PR01MB2828.CANPRD01.PROD.OUTLOOK.COM ([fe80::a015:84e9:f0da:66ec]) by YT1PR01MB2828.CANPRD01.PROD.OUTLOOK.COM ([fe80::a015:84e9:f0da:66ec%4]) with mapi id 15.20.6792.021; Fri, 15 Sep 2023 16:29:08 +0000 Message-ID: Date: Fri, 15 Sep 2023 12:29:06 -0400 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 3/3] gdb/amdgpu: add precise-memory support Content-Language: fr To: Lancelot SIX Cc: gdb-patches@sourceware.org References: <20230915145249.22318-1-simon.marchi@efficios.com> <20230915145249.22318-3-simon.marchi@efficios.com> <20230915160454.qoc3pjpl5fyxgz45@octopus> From: Simon Marchi In-Reply-To: <20230915160454.qoc3pjpl5fyxgz45@octopus> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: YQZPR01CA0060.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:88::27) To YT1PR01MB2828.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:a::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: YT1PR01MB2828:EE_|YT3PR01MB6472:EE_ X-MS-Office365-Filtering-Correlation-Id: 97cdbfc6-6188-4cb4-e867-08dbb608e27d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZjZeDH+XJk3jYoblISJZnoWB+6ztw6rfHI8bNzpZv4J2BWpyG31cW8Akv1jaz18RYfKgr2JKTgSLFyGhfFd7AXzXWifFBVjpe0XJ3VmhSjeU/Dua/sHfF/AH0i0ulG5thwqtIelLa+RE0o8aqL1KwyhJc5oG3NyJg49xGHsWQH6ZkpWIh+U7agNdwlyHiZZQ0VExMTxPpUHAOonGKNuIhYXovIi6t2vm/0sioYHl+oIh/3CuI2je66HGlCu0/quSHolLhDIYDwPpHcEQGKybb6o+lgt6j3o1/+uHAvfjzuU3+Nmo0UT2QYaWNT/g16KmJ/olhUlbOgwAdORkDJZMPxCXV9qWkTiJvqVwyW3a+TilGpSrihIuCaiHFiXy5jUpWsvJNongMCGSSdPp2+IEW9d++AJEAPC4E41NzImdQbKO3YvcCieRudtZFJ9vdBlkRx4RClwHyewkP4HoGeFV8uFzd/k+vhJLjifodJ/o+hjhPE8oxXdiIPX635432G4he1VH4dGhf08FRGrUKpR9gS0MCy78R7Lmp/AfAQx7X6Xl2e67/r1HEWJpWu2rJcPRhiWRK0ifodRa1koAiLJ/pvscRviUYSic9JYTld6UNvbf1RFYUfSBT6x/yk+/GdbV1uoY4csfXW9wvwVIV4zBnw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:YT1PR01MB2828.CANPRD01.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230031)(136003)(346002)(39830400003)(366004)(396003)(376002)(451199024)(1800799009)(186009)(2906002)(31686004)(31696002)(36756003)(83380400001)(26005)(44832011)(2616005)(5660300002)(6512007)(4326008)(8676002)(8936002)(6486002)(6506007)(53546011)(41300700001)(38100700002)(478600001)(316002)(6916009)(66556008)(66476007)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VjVtcEhPSklzVy94M243SDZoNUxMT2hxVTVGcUNKTW5yVEVQL2NhZndxTVJG?= =?utf-8?B?TDI5c3hSS2xiNjBmNk0yM0p3N1BvRWVOYkk4YVNRK0kvNmhaRXVac0t4YWxl?= =?utf-8?B?Nk1oa0Q5d05ZVE83cXg5bk4zRDh6MEpJS3FIWlk1VFRBalU5ZlIyUzcvMnlk?= =?utf-8?B?N3owRXprMTZzM2V6bm80enhTbTJORldUaS9HM1BlMWxkcTdxOFdjMUwzVW1w?= =?utf-8?B?aXVMSks5UFdvT1FodUdpZ25hamdyc3ByMmVmV0EvV2wyU1doT2p5cWtPRzQx?= =?utf-8?B?akZTaEU0eVlsUDRXR3Ixek9Qb0o1ZERLQ09WOGh5OUxnSks3NHFkc0xTTTlG?= =?utf-8?B?bVBhVTdZRWxoVWljSnpUZFdCWTQ3R1NZT1V1Wk44VUtBZEJwd3dVQVhGYVZR?= =?utf-8?B?d2ZSc0FGUWprbHpZOEJhRW9IaTVrYXFYbEgwWkVTQXZobVZqNzRGS00ydTlK?= =?utf-8?B?VnpTUFd0ZzAwcVYrYU5qYmVVN2xmRWlSZFd5TGFtZFV5UklBdmEySjAyVXN4?= =?utf-8?B?SGx4V29mRk9pV0JodEtGYmVIajVNWmdFWGUyUjNUOFpKM1ZjVmlYOWVQMjBG?= =?utf-8?B?UFdZd0h3azBoVzNHcDZ3ME96bDNmck1neitmUzMzcDdSY0pZQ0lnYVAxbGdU?= =?utf-8?B?cGdxWUEwNHcrdEd3QTU4QW81L1ZhMWw3Yzcxam5lWUJPVk1sUzYrYTJsWDFV?= =?utf-8?B?ejdBWURFMFV6dnh5WE9BemtFZ2JNa0trV2l5Y0xpRENjaktDNzdBVjZaRHdy?= =?utf-8?B?NkE1cmNtVm10R2hEblpEMVZBeEoyeitlR0pkL2Y3QytYMHU2YWt6V0FWSlFO?= =?utf-8?B?a0FWVnIvREV6dURLbHBNVDludDBBVCtxN3ByN2s5RzZ3NklseXdxZ2RWc1F6?= =?utf-8?B?VGpSMEs4Q0RFZ0dUTUdPZHk3bnh2Wm1xdUpDcGQzbE1mVG4xbDVqb3Z6YkJh?= =?utf-8?B?T25RMVhBemJGMUlmVVVoV3BtOVJ4VHFSUUNkM2FndmwydlNsMmtmT0JJdHJo?= =?utf-8?B?VWk1eFh3bjl3M2JWTlNFc2lDcFNLWElYZGpXWU1UZXpRaDZwNXpWWU9pVFEv?= =?utf-8?B?QU9PQ1Q5ZmZOSkRsakE5bkY4dmZJbjA5M3Zza2V4NjViQkpPVkpmd3JNckhx?= =?utf-8?B?YWxkdVE4dUkzU1kyNEhzZnNBQkUveEJNY2VTM014bERrbllTaVV4MU9obHBk?= =?utf-8?B?dDNhOUg3aHRHTUgwUDR3V0gydnhUNEJ3UXJIS0F4bXNCQ3kwMVdiRnNzVS9B?= =?utf-8?B?RVhpbUVhbUlHZVNLL2J3cGhDTjNPMjB3Tnd3dVN0RGFhS3c3SzRLbHdXSXJF?= =?utf-8?B?MGlQSS9LNnp5SDdQTE43THVIVUtEeWFubi9uYkxkWUM0Z0p6L0FxeW9ZaEFh?= =?utf-8?B?ejBaVG81UWhHeGlSeWE2bDgzaEZwSVNGdG16cmNqVk4yaE9OUXc2a2dKM1Uz?= =?utf-8?B?WWVnUXlKeFErQnhHRWJwL2srUXFsekRJdkluKzNMbjgrUVJhYS9qUkJNWmRy?= =?utf-8?B?UkhvZkdPeVlsY1p3R3d4S0FqdEV3aVJuR3FuSXJuQTcxK2J6Z1NNUTFxM3Yw?= =?utf-8?B?eU0vYnFMaFRsM083cFV5Y29EQ2xOS0cxa3FoUENXNE1mdXpIbVlCRnBLQnRK?= =?utf-8?B?Y0wvOHg2VU1ueGZsQ25PSlBuWGsyQjFWQXpXdGVYOG9YeHcrbnAwSHEyZDJO?= =?utf-8?B?WHpGZGN2VVZ4d280czh5SndpZStySUxRSkZYZkwwWFYzSGhsVzVROGJxZXZJ?= =?utf-8?B?ZUxkMWRhUjB2TmFld3VORlpOOG4wN3NQbU90WVhTUW9BUU02cDU3RGVLNVZi?= =?utf-8?B?UU1OY3dhMUcvam56Yi9qcnFRK2x5TU1hQllmOVdaaEZoOFhXZ0p5L0d5UC9h?= =?utf-8?B?Zlp0bFRWUVdBNzROYzFTc3YzcUpEbFovTnhBcGxweDg0Z0dXVGFTY1NrV1VS?= =?utf-8?B?SmdUNG1JeG5UZ25kSmtzODl4NGFtRGN3eU5FcTQya0dKL1dDSzdmQjB4MllZ?= =?utf-8?B?MU14b0JJZkhzMTJyNWIxdnl3UVl0VUZ2VlFSVVNPZ1lVdzNENHE5UmI4Q0E2?= =?utf-8?B?RTNtdkNEVG1nbkRuYWdWdVhrKzlxeW0yaGZRZDA4MHFzSXlWYWhvMnl4MUxw?= =?utf-8?Q?fZXuRBJdOgbadZ7cVy+1QGk38?= X-OriginatorOrg: efficios.com X-MS-Exchange-CrossTenant-Network-Message-Id: 97cdbfc6-6188-4cb4-e867-08dbb608e27d X-MS-Exchange-CrossTenant-AuthSource: YT1PR01MB2828.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Sep 2023 16:29:08.1519 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4f278736-4ab6-415c-957e-1f55336bd31e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8AYvZD75WuUcr8w/KevtHGcFJ2OSUzrpYhjIMkOGXKOv4Nd92kdJjXZmcKhmcIWguuB8wYK949ATKtNZRPr2Og== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YT3PR01MB6472 X-Spam-Status: No, score=-3038.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,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 9/15/23 12:04, Lancelot SIX wrote: > Hi Simon, > > It looks like your latest change is not c++11 compliant (see below). > > I do have a WIP branch to bump the C++ version to C++17 > (users/lsix/try-c++17). Maybe it's time I write proper commit messages > and send this as RFC, see if there is a concensis to allow c++17. Thanks for pointing this out. As far as I know, members of the community need to support building with gcc 4.8 for a while still. But there's nothing wrong sending an RFC to get an updated status on the situation. > >> diff --git a/gdb/amd-dbgapi-target.c b/gdb/amd-dbgapi-target.c >> index 22c269b7992c..507824decf8d 100644 >> --- a/gdb/amd-dbgapi-target.c >> +++ b/gdb/amd-dbgapi-target.c >> @@ -116,8 +117,9 @@ get_amd_dbgapi_target_inferior_created_observer_token () >> >> struct amd_dbgapi_inferior_info >> { >> - explicit amd_dbgapi_inferior_info (inferior *inf) >> - : inf (inf) >> + explicit amd_dbgapi_inferior_info (inferior *inf, >> + bool precise_memory_requested = false) >> + : inf {inf}, precise_memory {precise_memory_requested} >> {} > > If I build using -std=c++11 I get the following error: > > ../../gdb/amd-dbgapi-target.c: In constructor ‘amd_dbgapi_inferior_info::amd_dbgapi_inferior_info(inferior*, bool)’: > ../../gdb/amd-dbgapi-target.c:122:18: error: no matching function for call to ‘amd_dbgapi_inferior_info::::._anon_207()’ > 122 | : inf {inf}, precise_memory {precise_memory_requested} > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ../../gdb/amd-dbgapi-target.c:145:3: note: candidate: ‘amd_dbgapi_inferior_info::::()’ > 145 | { > | ^ > > In c++17 mode, it works fine though… > > Moving the initialization in the ctor's body would solve the issue > > explicit amd_dbgapi_inferior_info (inferior *inf, > bool precise_memory_requested = false) > : inf {inf} > { > precise_memory.requested = precise_memory_requested; > } > > The alternative would be to name > amd_dbgapi_inferior_info::precise_memory's type and give it a ctor. In this case I would just do: diff --git a/gdb/amd-dbgapi-target.c b/gdb/amd-dbgapi-target.c index 507824decf8d..40baf156d83f 100644 --- a/gdb/amd-dbgapi-target.c +++ b/gdb/amd-dbgapi-target.c @@ -119,8 +119,10 @@ struct amd_dbgapi_inferior_info { explicit amd_dbgapi_inferior_info (inferior *inf, bool precise_memory_requested = false) - : inf {inf}, precise_memory {precise_memory_requested} - {} + : inf (inf) + { + precise_memory.requested = precise_memory_requested; + } /* Backlink to inferior. */ inferior *inf; --- Or, we can just have two separate fields (precise_memory_requested and precise_memory_enabled), they don't really need to be in a struct. Simon