From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2089.outbound.protection.outlook.com [40.107.243.89]) by sourceware.org (Postfix) with ESMTPS id 637BB398B824 for ; Tue, 9 Feb 2021 16:00:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 637BB398B824 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KKjbB5mQMak+acuUaaBt4RBmmvVqn8iO7biC4E7YjSCFHPBgxdlwAPzGPm5ckWpTDH18MMnEoOkDRlSAR35fKuEjzKrUg8qUUJuP7vZ15QWTlEyNqTuwSRQ4o5hsiN0Atx4llj03L7FMXCbefjgAJGQqTQ6TYq1qHNiPUmylFtnTcgNTDiNbPiCUVqKBtAxIxhPDikKoOECK+b2geb6m+vS2xZnlOp/2p22X081ipb0XGj1kmuctl+V9YXY5hJPGTRa76lJ7KuEGKb3I7SATn2QSy+gFNVx5w2L1tMCsNz7KNWFRyzlPdUaCgTkFLyT1zTHJHCHu65SgjjVgBe9+Cg== 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=mIiVMO3XsT2ZZqgbY9awD4P32ZoV16rvUVIXwICu/hE=; b=di3CWMcUM1nh/QHGozjO4ceHuEVVMoV5wQkF3pMmYwWehQOc2LzKXi6Lh8dAsaNbAbKhg7cryfGoQA4JiFuq+OP3aJ6r09YCmWqO84T1lwvSxlqK07N3cD4EyFoL9tI5CIxD8zS2XX4n91c917Ls5hXDIiPiAhb8qaNxqNBrRRpON9sdJ9Cr5ALI5gH3b7cFkd9lEIyPEh9th1Gpo95sO0/X/t6RjgNwxb1ohmdejbiXDEb12HruQtBkLp87wMTo6k/Hh+ECFXWTnCDXa3WwWKfVHCR8td640n+ikWQAmV9qX6qg8ncGvW2nejQ+kl1jyyS7gGYBGCHe8SZgyUwkDA== 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 DM5PR1201MB0011.namprd12.prod.outlook.com (2603:10b6:3:e4::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3825.20; Tue, 9 Feb 2021 16:00:54 +0000 Received: from DM6PR12MB2762.namprd12.prod.outlook.com ([fe80::31d8:f503:f7b2:f44]) by DM6PR12MB2762.namprd12.prod.outlook.com ([fe80::31d8:f503:f7b2:f44%3]) with mapi id 15.20.3825.030; Tue, 9 Feb 2021 16:00:54 +0000 Subject: Re: [PATCH 19/30] Add new location description access interface To: Tom Tromey , Zoran Zaric via Gdb-patches References: <20201207190031.13341-1-Zoran.Zaric@amd.com> <20201207190031.13341-20-Zoran.Zaric@amd.com> <87im72dyge.fsf@tromey.com> From: Zoran Zaric Message-ID: Date: Tue, 9 Feb 2021 16:00:49 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 In-Reply-To: <87im72dyge.fsf@tromey.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [2a00:23c7:5a85:6801:b142:b2da:a877:6c3] X-ClientProxiedBy: AM0PR02CA0174.eurprd02.prod.outlook.com (2603:10a6:20b:28e::11) 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:b142:b2da:a877:6c3] (2a00:23c7:5a85:6801:b142:b2da:a877:6c3) by AM0PR02CA0174.eurprd02.prod.outlook.com (2603:10a6:20b:28e::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3846.25 via Frontend Transport; Tue, 9 Feb 2021 16:00:53 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 62732540-f2f7-4ce2-2857-08d8cd13e13b X-MS-TrafficTypeDiagnostic: DM5PR1201MB0011: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8273; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: l0eYKbZSEC70PbGcoBZfQjBOZMhiccekTaLkP7GHXiAFdySkcVZPyif+QVS9VmR7HFKfkN+zmjcd0MUp+jbOV6pRMcyW/8o2pMTHe6dQqxDvI4shZrdIo1Hwaa678Kn0saSJI5gczvBCkNvykQ7VTjyG4s3WKE1p0odtpyBXB1Df+HY13uURyhrL2pLYTud3nIoUDEFyZM+7+TIc6A4/cdg3ujnthzI7waI8WcfgnBAegC1Cb7/uPiNrnY0Q9aWPeRkM36qlOWOw9dXJjfZjEW3LF48BKkvkDuDxBf2zVZt++ZXGYmrGhwkDt3C49aLLkrlFm864a0zttwUXgDBz6z3xuiVCBmNAzHUgkGHKAC1KpirsBYDhJspkBJu7RW6pYDlwaa8ssSlwlv8gLBQpk5Ql5NOBineQ36Oq9X8vUJpfYGEJuRa0Mw8j4GuSAQna07flIlNCGuje3hsisHxkUoQkdK/QT2qmpoYnVDmm85eHyOXfT5KUwtHm6iXvPwoz9W6W3ZqAgx+KXuv4H1SQbLz4Mqp8syqjWU27Tt9BCUZfRm6NvIYu1fBmlv2JayvveuPBBv58cqFpxowzaRnbAQTMqMPkVEW4b1+Nh3gvvac= 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)(346002)(39860400002)(366004)(376002)(396003)(136003)(16526019)(186003)(8676002)(86362001)(2616005)(110136005)(31696002)(316002)(8936002)(36756003)(83380400001)(2906002)(6486002)(66556008)(66476007)(6666004)(478600001)(5660300002)(52116002)(31686004)(66946007)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?bHpiMzdrQjYvZVB1Z2RDajhITkhKL09YWXVXTjNTRG03clY3b0VqeG1lME96?= =?utf-8?B?SEt2ZVNQS3F4emg4REl0OFROZGNFQjVtWkUwbVlxUURXK0NkNlU2T2cwYm85?= =?utf-8?B?ZFg0aGZOb2c2U01ZTjZxR2VNS2ltaTgvdHVxRndvWFc5MFl5Mi9WSzRIOTMw?= =?utf-8?B?NENmNjVMTndKdWVqLzFRa24vaU1keTltK0c5SGFPcVlCZFRsUWhJMEhrWnB5?= =?utf-8?B?NXY2QzlEcGk1clNlTG1Wbnh1NkN5c1IrZGFIbVBRcldtbG9PMllZamdXRXc1?= =?utf-8?B?K08zeE44dVd1eUQvbS9aKzBNUjhMNVV6N3dZbEZPSm15eGo3R3hSdDNlc2Vh?= =?utf-8?B?S0ZDQ0lCaFJZV0VXRWU0Q1ZtQndoQy9lUWxHR0drN21vaVJyZytMZkhCdnBQ?= =?utf-8?B?VmlqMVJ6V0tkWUNFa29xS203WEt5bUNyQjBxR2JQV1F0VWFvWG85VTN1TE5i?= =?utf-8?B?THRnOXRpTzlCYXE2aFJPN0pjckZPT09tVUVwYnIyV2p5djBya2RIZlBTWi9X?= =?utf-8?B?aWIrUjJ6bDVLM0xtKzMxOHhtU0NoSERMVk5OeG9QdW9WSkN5Y2RzVER6YWZo?= =?utf-8?B?eEVvN1FON1dBNmF2V2NtUFVNOXBHUDRkN0RZaFV6TUJnWUhzMVREZjRVekNw?= =?utf-8?B?Z1RLYm4rc3RaOEc5K0szNERZcXExdWNrQjkvTGhsUTRSaGxxamQ5VGtUOEZs?= =?utf-8?B?S3Z4dE1ZVkxLeThqc29xSEpHU1pYQ2xWM3J5dzdlN1JHSzBsdytpYVBPUU9J?= =?utf-8?B?OVM0NndLRXkxMGd3aVptMVArMlI0eit4emYwK1Y2UVlJTVJpd1pGWk4yakpy?= =?utf-8?B?dUFHYTNpZ2taOExkM2xhd2N4YlhGMTNvNWpzQlptaVVIUHZzSTB2WDdHZ3ZT?= =?utf-8?B?dEhnRGN0cGJ2M0RWdnpJUGVGQ0lteVd3cDQxMUNXZzQrSjdTSEduT3VQZ1Zm?= =?utf-8?B?Y3BQK2pzSTROTDVBRXZMTHBkNURFbDRVV2U5QnBwVnNMNVo1Z01sUUpyT2Vv?= =?utf-8?B?TWI4NkRhaFJ2QU91eDNuSU9vNzlSZWRiSG93ZnJmWFJUR1drS2tlbkJTQTAr?= =?utf-8?B?MzBoSnFrUmREQUU5dm1hUG5Ndm1UTGxUL1pVbjNkeUpibGZ2N2JlVGtHR3lM?= =?utf-8?B?MERmOVZwYnZIR0VrZFYzblBPd2lqR1VWV05BdHNzYVEyRkg5d1ZNc2RuQWFp?= =?utf-8?B?c05tbFNESndsakVtMzRidU1FZ2V6c2VxcFIxcFdXWDJhVEVlUFJlQWo2dEdB?= =?utf-8?B?cVRrYnBZZ3JKejRwS2svVThCRzB4Qk1yQTUrbXcrS21FTWN4Uk1iNURpL0F0?= =?utf-8?B?K0k0Z2RuUEZRbW9IVUhmV2w3bW9CMXF0TVloWFFvSTRWTlFrampSN0RUTHB2?= =?utf-8?B?MElnL1M4UnAvN2k2cHEyV0RxV25ncGNjRlhxZ1lVN0RSOVpIY0xValE0S09U?= =?utf-8?B?SVJlR0EwSTFGcm1mWW9aNTlISWw0S3dGSGNHTnZQRjFZeG1SVDVpSkduTW9X?= =?utf-8?B?TXZvWE1wNHFjVW54ME1xRDBBcTVxQmQwcmhBbzY1QU4yaURzNlVGc0RiYlVZ?= =?utf-8?B?ejFnQnNWU3hoS0xBNEM2VW9NbC9Qekk4Zy9BdmNkMGpkYjdKZHZZajlEc1I0?= =?utf-8?B?alNLSHhqd0ZnWDZ6TW5tVTRsc3phZU9FMno4c1VZRWhhMVBmdE9ZQW04eHpJ?= =?utf-8?B?Q1RvY0VVL1ZJVTJ3NGNOZlAxSmpZTGxpc21vc1BoeHBiei81ekJ3R1FEZFZN?= =?utf-8?B?c1R3b0MrOXFmZ2U3QmlQTitrNTdCRnhHQVcvUml1YUNMWUtQV3pyYzNZTENI?= =?utf-8?B?bXFmWmd5N3EwU29KbXloZ0dORkdTUmFna3Y5SFptbWpGM2tBMHpSV3J2TE9o?= =?utf-8?Q?6aONnylahLin3?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 62732540-f2f7-4ce2-2857-08d8cd13e13b X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB2762.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Feb 2021 16:00:54.8533 (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: avxICpYEk2KPBGUlTCqiwjySEsC1yPMFPYRBcrSKd5lOKQZJeVaaaLI16aFu2hNxkWDJ6Ra+7LINHkL7+QSBfw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1201MB0011 X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, MSGID_FROM_MTA_HEADER, 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.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org 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: , X-List-Received-Date: Tue, 09 Feb 2021 16:01:02 -0000 > > Zoran> + if (dynamic_cast (location) != nullptr) > > Zoran> + else if (auto register_entry > Zoran> + = dynamic_cast (location)) > > Zoran> + else if (auto memory_entry = dynamic_cast (location)) > > I didn't read this patch too closely, but this kind of type-case should > only be done when a virtual function is unsuitable. > > Tom > Thank you Tom for the review. To be honest, I am not sure how to do this with virtual functions, considering that the information held by the different location descriptions categories are so very different. The only way how I can see this being implemented if I encapsulate all the specifics of dealing with the different location descriptions (reading, writing, conversions between them and the composite/implicit pointer infrastructure) inside of that class hierarchy and change the dwarf_entry class to have a bunch of virtual functions that only make sense for one location description category. The reason why I didn't implement it that way in the first place is because I was following the existing model of how the struct value handling was implemented, where instead of dynamic casting there is an enumeration check to figure out what is described by an object. Don't get me wrong, I am not really against that change, but it would require a bit serious rework of the implementation. So if you really feel that this is a deal breaker, I could give another crack at it in the next version. Zoran