From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id AnySFm9JiWCoIwAAWB0awg (envelope-from ) for ; Wed, 28 Apr 2021 07:39:27 -0400 Received: by simark.ca (Postfix, from userid 112) id 4BBD51F11C; Wed, 28 Apr 2021 07:39:27 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id DBF8D1E01F for ; Wed, 28 Apr 2021 07:39:25 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 387D6393C858; Wed, 28 Apr 2021 11:39:25 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 387D6393C858 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1619609965; bh=ShjNs+fkrqeCSiFw8+Yxyn3yqlzE8d4noswE4sJETvc=; h=Subject:To:References:Date:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=gKYAIGu5N2YHY+ZTO1fNMpZYNsdJ+Qk1aioxUte66VEotvJhUbiT9x/52fmApRxkp 5zijMbEEvFNKqlJWKx+cTmQ1suAgRXkCv91krT83d/IjYPpmXf37ubMSbpMOvxkffe wQC67C3oOwSw4VxxK7Ap5Vvi/kXBHPJXE8bOlZIg= Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2049.outbound.protection.outlook.com [40.107.223.49]) by sourceware.org (Postfix) with ESMTPS id 1EA443939C33 for ; Wed, 28 Apr 2021 11:39:23 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 1EA443939C33 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UN+Ml3+03gkbIkls5Bo/hRkVHRhnCcKsTWe4JK0xQaQDPFctZM81u4eKtw/XJoe/a1v9L3woL/OhU1WH8OIrQhII2f7nu3YbeZDy+XKqRYoS6c0pzSwS3vdBtGg0q2OjnrfesfpeX9Ow5Ducvf5mei5hLUZH8j/2JZvjWt1ewPmP5lZp8Gm+lM3W8s4JiF4yg9bFg18AJMg/jdc6bVdC9Yit1IidgUoxS5ZIaFNNRQYNgSjIu8CNYiKoEsKVEBn7JTI5HjmoHPg2m2M30HSFUEZJIvNxtwRS9uleGIRR/uLeEo+7T5qePg4cHSBS+cWC9VPwPZHBWajYvsZs8XzG2w== 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-SenderADCheck; bh=ShjNs+fkrqeCSiFw8+Yxyn3yqlzE8d4noswE4sJETvc=; b=lbzSNo/afCf6TO/Wf9xpBG1wwElKw6Ii1gxPEMJ3+Q5i6YoBVIrjZNPDYSsTPEz4Z4MMZ7eIPjZGbTgPXq4OyPLKhhjmSNdatPtvE2rmsNwYtE1ywgu+MGON0DBN+/4I6IESczRv8hYyQX943/cj7VP6AkaraIuM4y8JGOBEV7ccQ6e4+3IA57cFfxZznYVHaVlscc66XpsXSdnPX9L6Id1xG/krZ8PCM6ZTh+lhNimDKB/iwrT5VZbmTmbPn7BZ08E5JNjFRv4FuJf2qMHhrOfoB5Gf7pPaQL46cfkGLLG3BkYtlws6ZhzixiM4S1xkDfnryp2u1NDw9OIa2//vAA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none Received: from DM6PR12MB2762.namprd12.prod.outlook.com (2603:10b6:5:45::15) by DM5PR1201MB2520.namprd12.prod.outlook.com (2603:10b6:3:e9::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.25; Wed, 28 Apr 2021 11:39:16 +0000 Received: from DM6PR12MB2762.namprd12.prod.outlook.com ([fe80::49d0:1ee5:47ef:e0e5]) by DM6PR12MB2762.namprd12.prod.outlook.com ([fe80::49d0:1ee5:47ef:e0e5%7]) with mapi id 15.20.4065.023; Wed, 28 Apr 2021 11:39:16 +0000 Subject: Re: [PATCH 12/43] Merge evaluate_for_locexpr_baton evaluator To: Simon Marchi , gdb-patches@sourceware.org References: <20210301144620.103016-1-Zoran.Zaric@amd.com> <20210301144620.103016-13-Zoran.Zaric@amd.com> <084a8b95-2dae-659d-1873-e5f41e03e894@polymtl.ca> Message-ID: <094449de-0d52-2349-49de-d32631171a72@amd.com> Date: Wed, 28 Apr 2021 12:39:11 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.9.1 In-Reply-To: <084a8b95-2dae-659d-1873-e5f41e03e894@polymtl.ca> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [2a00:23c7:5a85:6801:f5b0:44e8:2b3e:76c1] X-ClientProxiedBy: LO2P123CA0020.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:a6::32) To DM6PR12MB2762.namprd12.prod.outlook.com (2603:10b6:5:45::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [IPv6:2a00:23c7:5a85:6801:f5b0:44e8:2b3e:76c1] (2a00:23c7:5a85:6801:f5b0:44e8:2b3e:76c1) by LO2P123CA0020.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:a6::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4087.27 via Frontend Transport; Wed, 28 Apr 2021 11:39:16 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 62c9e914-5bbf-4ac8-ceb0-08d90a3a4110 X-MS-TrafficTypeDiagnostic: DM5PR1201MB2520: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: T7cSHg7UChzWHEgPY5jl3ZjtdgBiFpjtJnwmE8WgurWCp5YeDXdYmWkp1CKAshEWRSIOnhEfZeHKjlHyzTSBkplFwmCkpqelE2pXvK4afqJw0u7eFUYP2v8fm26FS6O2qAl+oXZcM19xkxXQ7Q1s2Giz5hQUHHWpw+xSQccMp4ihJvD8BJvk2+O9Ucycak90fDCWwpNHZi9mLwHS7+r+WD0hLLCVP1k90XVatRI7Mp8KmEVwv7VPDfr1F7Z2ovlEoYaDVUYRjJgdhKSfTmGV3FYXAP7yRQFn8GacVfBUwcyqUOroTC1dW23MAtzaDgkmeb+InQnWLmjZI33jKaxYTgN/Y0vBA1sq+h/hiwS3FQAeIbBpf5o2skYm8V3/njBQBdykghd2NcoLgzEzqrWnFAFfmmmqIdlptBdt6nsfNg2MoiZezKPJx2Sg6AEBVJmWq/Kn0C6t2y4bOn96rFoNO0PvCtHR58geO388gi7hAys02WW9HqWCUCjGLHq1ACb/r+dOj+6PsRPs1x5zKcPko0lCOXN2D39W5B/uzA7g25+TA4FuIKBh/ZKw06RUE9SupDRrU2J9lXt7v+tqXvgGdYThGB9YXA+RXySASyrxshztwjEBx5EN5wLYGpI0I3QVJIdHqFcHfST21nwMqo4VMfuhEa2NxdNwP9vjFaKHIY6Hf7w/K0y1kT7AaTFytJAW X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR12MB2762.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39860400002)(396003)(346002)(376002)(136003)(366004)(36756003)(6666004)(66946007)(316002)(16526019)(186003)(2906002)(83380400001)(6486002)(53546011)(8936002)(38100700002)(86362001)(31686004)(8676002)(66556008)(66476007)(52116002)(31696002)(5660300002)(2616005)(478600001)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?UjhHWG9BbVE1RGZvQ3RCRnljMWVZMm5RcTloQ1NPekhBNVJBSTlzN3RjdThE?= =?utf-8?B?eHNwam9OaGlPMjI1MG0yTlZQY1B6SHhxWXhmUHdCUndjWDdITXFvRVAyZXVk?= =?utf-8?B?UFlFM1dXYzRLcWVhMW0yancvMUp2THV6T2FwYTRGbHM1UnpsQXRza0pMT1ZT?= =?utf-8?B?VERuMmcrczNaWERhSUFPclFnSzBQQkNabStxZ0lENzNIYTFCQjZlQVJIQ2NV?= =?utf-8?B?Zm9kcmJLVmNEYXJyVlFEdlNoU3JHYWNuc05nOVJxbm80aVNuckw2Z3NrK0Zt?= =?utf-8?B?UjRtOXEwLzRzSjI0YWlTcXpRQ09JdVNjWTd0K1NHQk5FVjR4ekszTDJXMlJp?= =?utf-8?B?OVA2cVJQckpITDEwbzNneGhDdCsxR0U0NDA2biswS2tZYUhGVUF6M01Yak1U?= =?utf-8?B?UExCSC9nRzZmSlFOMXQyRDRxV1ZYTkZnT1Mxa3h5QnRYaEplaUZRUUs0UHNu?= =?utf-8?B?eVBaN3NKeXBuZ3hFZmdoU0kyT2NvbnRCNWM3T2NZY21MNXlXWTZSbXVFUmVU?= =?utf-8?B?M0Uya0N5dnZCNWJqZEhQOXNFbGtDMHc0RE9na0RsRUJseGo3bjF2b3ppZ1Uz?= =?utf-8?B?MnpnSldBZDQrMUkrSDNheSs4QXB3ejVsOWR1dWtCNytnKzZBUThaemVqMTFU?= =?utf-8?B?eExvZE8vYzdVS01rcEJXRHFVZlpvdmwwVHBSRUFXUGM3aXRYNjRNb0s5c2xr?= =?utf-8?B?cjJEcVVlaG1GWGpueW10UUNIKzRZNUNjYi94bnVnOUZ0MFV0MW82Z1ZMREFD?= =?utf-8?B?VjNBVW5pSHlab3pua0NGMTgxMTdqMSsyRFNqWWkwblNFWmdOVDcvaGtIbUtj?= =?utf-8?B?dWI1SG9PV0F2MmNoUXRjeXRSbEh1ZTBIWlRBOUkrZ2EvT1NjckRpUGNWeDgv?= =?utf-8?B?a1duWWxLSXdRQzdpcTFPcWJSUUE1RG1CR2pTcjBweTNPdkwrZHFjRVhYSnF1?= =?utf-8?B?T1ZYaTZUZVpmcVBtTWZPTkJzODdVSUNKTTRrZVlaR2p0ajRta0locktvSnBq?= =?utf-8?B?Z1JobWVBcW9WVzV3SmR3N1VBYXRkRlJYOVlPcnhUOFN1aEE2bkQyeEl3Slgx?= =?utf-8?B?ZXVXWUhaRE1ReXRLSnZVa3FlYjdsUXpXNXJYQWJRdlkzRVBHLzhzVTd1dHNN?= =?utf-8?B?RDR5SkxzK000Z3JjYUNUY0dXL0h1Y1R3VTV5RzhjcURyajJrMjBqZURQaUpy?= =?utf-8?B?NDByRDQ3N0NNSnd4bzZPZGppMVVHbEw0a090aVJ3UWFHb0FSMnZQYllkZ2RV?= =?utf-8?B?MXlXRVZOZDR5anJxNWVRcldQWW5qMzFTUXRuQjduakJzOVY0WHF3Nmd5akxJ?= =?utf-8?B?QzZlR29oL3VBK1dGQXdmTWdZOXVFcEszUzZWaTNOejMrb0RrRXVXRUU3Nzkx?= =?utf-8?B?R0R0UlhUSW9SeWwvWDR2SklyNlZCb2RWUFZ4YXViK3lDdGFLTlVFRjVPYmwx?= =?utf-8?B?R01aNXpaVXVHMmZ6MXdKMHgza0xSdkEwbHpIY284dlhldUExVmtyM2h0RlFN?= =?utf-8?B?NStaYW14Vldpb1hzUWVtMU03U29keU94ZEZhQ2VtWnF5VWtwSjhuYmJkN2NO?= =?utf-8?B?OVI1enFlU0lPWnNFNU0zUjRFKzlFL3J0ZW5PTUtkeC82citKa05wZFFqWXBk?= =?utf-8?B?ZXJIVXYrVk1SUC9EaFkyQ2NYbjczRkpFWFFqSnQ5NDZnUGJTVWVpemp3cGRT?= =?utf-8?B?bmJoZEZ0VDlHYzJ2NzF0QzBWeHJUK3FPcWtOTjNwOTkvSmRCZy9PWGJkUURl?= =?utf-8?B?QzNNUXF5NmE0aUZXcWpHNG1lblB4N2ZXd0wxeU42MFlOSjBkNDFKeHZjc2lC?= =?utf-8?B?QTRDTnkxZmFsdlZKTU04UWRHVVpCM1RQNUFWZWxmNHR6QjlmQWhxYTIzeFpG?= =?utf-8?Q?0ARGy3zUoW+cK?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 62c9e914-5bbf-4ac8-ceb0-08d90a3a4110 X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB2762.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 11:39:16.6376 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3LZLhR7OdgIbAoFOP7wDqxtRJWJRFpRR8ZbUCiJXuFUdXi6iIH1E6DRVFULnu4Pe3S2zNYOEyFmBp8hsKYcigQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1201MB2520 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Zoran Zaric via Gdb-patches Reply-To: Zoran Zaric Errors-To: gdb-patches-bounces@sourceware.org Sender: "Gdb-patches" On 4/28/21 2:33 AM, Simon Marchi wrote: > > On 2021-03-01 9:45 a.m., Zoran Zaric via Gdb-patches wrote: >> From: Zoran Zaric >> >> The evaluate_for_locexpr_baton is the last derived class from the >> dwarf_expr_context class. It's purpose is to support the passed in >> buffer functionality. >> >> Although, it is not really necessary to merge this class with it's >> base class, doing that simplifies new expression evaluator design. >> >> Considering that this functionality is going around the DWARF standard, >> it is also reasonable to expect that with a new evaluator design and >> extending the push object address functionality to accept any location >> description, there will be no need to support passed in buffers. >> >> Alternatively, it would also makes sense to abstract the interaction >> between the evaluator and a given resource in the near future. The >> passed in buffer would then be a specialization of that abstraction. >> >> gdb/ChangeLog: >> >> * dwarf2/expr.c (dwarf_expr_context::read_mem): Merge with >> evaluate_for_locexpr_baton implementation. >> * dwarf2/loc.c (class evaluate_for_locexpr_baton): Remove >> class. >> (evaluate_for_locexpr_baton::read_mem): Move to >> dwarf_expr_context. >> (dwarf2_locexpr_baton_eval): Instantiate dwarf_expr_context >> instead of evaluate_for_locexpr_baton class. >> --- >> gdb/dwarf2/expr.c | 19 +++++++++++++++++-- >> gdb/dwarf2/expr.h | 13 +++---------- >> gdb/dwarf2/loc.c | 45 ++------------------------------------------- >> 3 files changed, 22 insertions(+), 55 deletions(-) >> >> diff --git a/gdb/dwarf2/expr.c b/gdb/dwarf2/expr.c >> index 1212be9c984..fe6d072ac8f 100644 >> --- a/gdb/dwarf2/expr.c >> +++ b/gdb/dwarf2/expr.c >> @@ -252,6 +252,18 @@ void >> dwarf_expr_context::read_mem (gdb_byte *buf, CORE_ADDR addr, >> size_t length) >> { >> + if (length == 0) >> + return; > > I'm really curious about when `length == 0` happens, but I see it was > there previously, so this ok. But if you know the answer, I want to > know. I am curious about that as well. I might remove it to check if something fails at one point. > >> @@ -239,6 +231,7 @@ struct dwarf_expr_context >> void push_dwarf_reg_entry_value (enum call_site_parameter_kind kind, >> union call_site_parameter_u kind_u, >> int deref_size); >> + void read_mem (gdb_byte *buf, CORE_ADDR addr, size_t length); > > You could keep the comment that was there previously over the read_mem > method signature. > > Simon > Thanks, I was sure that I've fixed that already... Zoran