From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id CCaOL05giWDMJQAAWB0awg (envelope-from ) for ; Wed, 28 Apr 2021 09:17:02 -0400 Received: by simark.ca (Postfix, from userid 112) id C0B561F11C; Wed, 28 Apr 2021 09:17:02 -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 C6CA21E01F for ; Wed, 28 Apr 2021 09:17:01 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 80E3D393BC3B; Wed, 28 Apr 2021 13:17:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 80E3D393BC3B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1619615821; bh=T7l+JixOfH6cF5a9OEth39ZYv5zCDoajd/S8Y9DdO3A=; 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=aUKzm57L2QNWrs9zB5+6Ra+U3yrNUQQ38KXR2X9bXhj6tC4Rwctxa0zqo9Umon1tY v51kGoblmc99lAX+mIXc12UjMran8QCx9j4X0AJGiDOdE0czF/8YQrZ3wpmxPIRG/L BO3LD5ATuEe2boXKHIn5iv5qV4n21XKYaES+WQBs= Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2060.outbound.protection.outlook.com [40.107.220.60]) by sourceware.org (Postfix) with ESMTPS id 18229385701E for ; Wed, 28 Apr 2021 13:16:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 18229385701E ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZbFyQEcWkCs4LshA5q1Coq25FGq5oOhikOcp7Q2pgpkxPJmSqofJMFc/Wf+XKY9oV13Mnu/C5/0km6DEJQQl8CT0T5UZPwbzRtLzxp3MK2UT2NYT5qptmGy0ejlaIdkGIfsvMthTY0ilWF6Itxi67IP9AJM7fifNzpQovQuBeGYF/wdesfdSv9OzdYfvkGFL38NCN6oUrSsHXb8uzVqq664Duvv+jI//HxAr2KlE2E+OsI4vmHnOtUrSdHRvigs5khOABbXF/oFhjb6GUHjs3vNiXi63kcewwhs596jgleyUMNxTG3MVNcD75lqCMrGTYmeeTfp69BuCTPcwZqTyTg== 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=T7l+JixOfH6cF5a9OEth39ZYv5zCDoajd/S8Y9DdO3A=; b=ckfa9cfjr3pQC/zYMDQ5/PvKvWwnnqtu0o9xm6OFzsqK3QQC0/JYYDEzLtSTQd+Urb1D77aPJcjNUYeY87xUnlbhtUFJKg9VxbQOJ4YJL0Ymty5p3s+38NhaF7W9eI120ymncVMmWIClwhcn2C/W8DzYd3H1l5Qm6u8rWtl7iGk7x92LZxArCI6287jdEtt6a0DDYyoA6JTC9ntzeDGYg1kXb45/l5xBRl+Ej1KmkAb3wu1hqaDg68hxtq5TBfoAzxHcLru31DcgaQqyQ7CTgf7vap94rm7GMXfYOLvPOMT5lqLBPS73hHIasO3R78rQ1Z5955AdYajrycKVSlLhGg== 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 DM6PR12MB3003.namprd12.prod.outlook.com (2603:10b6:5:38::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.23; Wed, 28 Apr 2021 13:16:57 +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 13:16:57 +0000 Subject: Re: [PATCH 17/43] Add as_lval argument to expression evaluator To: Simon Marchi , gdb-patches@sourceware.org References: <20210301144620.103016-1-Zoran.Zaric@amd.com> <20210301144620.103016-18-Zoran.Zaric@amd.com> Message-ID: Date: Wed, 28 Apr 2021 14:16:52 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.9.1 In-Reply-To: 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: LO2P265CA0220.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:b::16) 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 LO2P265CA0220.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:b::16) 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 13:16:56 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: fb98b835-0063-4fbb-e37a-08d90a47e621 X-MS-TrafficTypeDiagnostic: DM6PR12MB3003: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: g58Klp35TPG1BHk1QwWUfMwO8KAbYYOcIVEqxf+U8VGxLangOO+DCNCIN7xZ0FKYTulXOCx5Lsb+FTtJsNDDzbMPkJ7LXNQLX2TVrydsDvhDn0hHJdo5iwj+9G9/Lfq2n+eyw7GHVIrK9JYpOyEPaYua159qx77PjIuwjUufo4+G1B552AQi5iDqC5rPV6zfVNV7ZqdN7y71CjLz5Zj+bX8bX/AdgNPQBEu/odYQCU70jufUwJzClYDpdu/IbVjSijqAHASfNgvoshdTYa8PS96fKQXGnxBruCAz6iuxr6kzIQVs1Jnji+znfzQkf5ZsAKZ8LOAQgRtCEqBoh4lhniyJnemP/64EJkFqogBfdM+gbwkjJ8337jukmjJgGHAAoFzCh6qnnuAEwmpmsjco474rd2KtzhX/mFbcImUYHyaNvueSnAYhWspm0GG+P/Wvaoo/4o6HTaJFxRYlLifb8r5+JyozY6m0HNOCO0++Ahmyhdy9nr3I6swkuTZ9cn3sMnDcVoG6EFam4xIneE9Jh4yuKw47CcfLsxn3TGNn7s4gX7iP4ilG1K0Ivcbah9rj00HlOcLBAiMVC22HcsTzWyCamCzHBwdQWHbZmdcCXl/t4NJLKdIR+jRIqMZ0DiiF8OO7QJ7T1zK+jUwg7U1VPT7BQbxr2r7vjUNP5kDje9Bwy9qmlyzamZnfdw6/c6o9 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)(376002)(366004)(136003)(346002)(396003)(39850400004)(86362001)(31686004)(5660300002)(31696002)(53546011)(478600001)(8936002)(2906002)(316002)(66946007)(186003)(6666004)(66556008)(66476007)(6486002)(52116002)(2616005)(38100700002)(36756003)(16526019)(8676002)(43740500002)(45980500001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?NERDWVJQUlEwL2JFV2NHR1J0bllOUUVnMUROSFN1WXhTdDRJd2E4WVJUU3Rl?= =?utf-8?B?UlRMM2pseDdleFEvaTZ4MGhpWStTcmdjeVRmUGs0aGVDcXZwd0c4ZWxNQm1G?= =?utf-8?B?am1lWWhFUHRnY3crb0QxTnBWY1VTTEUwQ25zUzczcGdOUGVXeGhSdktjWHZB?= =?utf-8?B?RWxnOXF3Y3IwbVV2N2VKZFRMSXpobFZTSldxTjFsbjZmdC84VXFnbUFTaFg0?= =?utf-8?B?cmNmeTBteHFiQW1rb0N6dm1ra29kOXczQjduMUNja2pDZzRhTGxiR1JBSy9G?= =?utf-8?B?QXBjdmViMTdCZzNsMU1WN1ZsemNLTjQ3Z25yRkRQbmU2bll3Q0dVRlFYZDVD?= =?utf-8?B?OHZPRDd4TGc3ajdESmp0dG9zRjd4TkhCRWFXRFlWcGdCOGJwa1BwU2pBL3Yr?= =?utf-8?B?S2dUb2tDcXJhbFFJUlVSQlJFOWZrUmczblJxTE0vVUlnWnJNNHpMN1YxRzlr?= =?utf-8?B?S3BoZ1NORFljcGFUYkwxcEl2WXpVbDZxOWJvVGhCaWg5YWZtMXRLNXV5cHJ1?= =?utf-8?B?aHJuakhJdzI3R0dwZ2QyZVR3Y3dGT2p1ZmY4ZEdpZ2tkYTM2K3FqeHJOTXpZ?= =?utf-8?B?ZGNISXJKUlFnL0FjRDczRTN0L2Q5MzBCc2VmcDR1WlpkOWJPUWkvaGhlQWRV?= =?utf-8?B?M3h3Q2ZlN1RxM2drdnlWdVRaZGM5ZjVvVDA0S3U2cjExdWpGNWh6a3VLMWdY?= =?utf-8?B?SHgrRURqeldVelF4emcrNmlhL1VKSktRQ0JIQ0x1T05SRDV6TUt1QkF6Z25W?= =?utf-8?B?NTJ6Z3pMSC9YT1JWM3psMUpHWEQ2a3JuZmVHM1E5ZHRWZTFOMDQwU00waWlN?= =?utf-8?B?M3F4NzcrMlJabThDNk52NkdNa0hpMmsxbm5vZm84WlMyWWRqRHFWd2RzNzdF?= =?utf-8?B?czFWWExqWkZTRU1DUjMxQ1A0QS8xNFMyaDNYcm91bUJyL0ZIZ0poN0RNVG90?= =?utf-8?B?LzRkd3RkK2x2cVp5b05kS3V2QTBqelZHZjBIb01lSU9sckQyOFJjSnIvY2Ey?= =?utf-8?B?Mk00OGxRLzgvcFRrSEtid2JDeFVWK3haVmxMOHJ1Tk5KZHl5WUNkYVpzRHdq?= =?utf-8?B?dlZxRmdkT3hrd1IxcVhlS3JhTW14R0JoaGFlNFJpVGVoODV2V2ZtbkN4ajJD?= =?utf-8?B?QmtGQkF2eGlBOC9LY0tNdlB2ZVo4bVdRcTU4d3VSMjk0bTB5MXJGSndNQ2Vo?= =?utf-8?B?ejlDYzBLR3lJQU5DNTAwcGJ6SzEwWkdWNTdDS0J1bS8rNDZ5a2FvRFUzT0VD?= =?utf-8?B?Y3FodTRVQmtYRUhoREV3NlBLemhxMjFsSi9MM3J0R1lDeElhZU51MUtvVkhO?= =?utf-8?B?MzVNaC9vaFlMNjJ0UWlsdU91OHlzdDdicHJLUitFdStrMHlxUnpsYmpMNFhk?= =?utf-8?B?WE5ZSndjKytzZzZib1ZocWV4Ym1FVSsvSnFZcDk2N1JaZjZyUHpvOTRzd210?= =?utf-8?B?SVducjNSano2ZXcyM1lsZUUwWWlrUkdhY1pqOTIvTHBRZ0FwQU9VREFVbGZl?= =?utf-8?B?dVZlNmVzejZPeFk4Y2tSR0o5d1ZvVi8vVXNMaWVSdXRKeDRpTEdKNkVENDFw?= =?utf-8?B?K2RMNFZ0RUxkazdmamsxUmduUWhqbWNtTnhPNmlBNlQ1Y3pUNEh6M2FlMEUz?= =?utf-8?B?ZE5Ub1orSnZuS3JEZHhxNFZCUDVPQU5rZHBRQzJxSFgxUlFYZFlhTG5rN0ZO?= =?utf-8?B?L3NUOG9VdFM0WDM3SFJ2ZU5oNEN6eW1nTjRXTGJJZUlhZUtNaUhCQlhGNG9T?= =?utf-8?B?QTlvNW04WHR5YmMyWllCeGVtUDk3RURsc2VHY2QrZTVvQnhVYVRnU1FUTDJz?= =?utf-8?B?eTVTQjFhVXcxNUFhVlA2K3J5YmovV015OWFCWFd5bVE1R2EwdVd4TVB4S1Vh?= =?utf-8?Q?tPw+AsrpX2cYN?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: fb98b835-0063-4fbb-e37a-08d90a47e621 X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB2762.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Apr 2021 13:16:57.0791 (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: HA6rF5SJ6zDaFyJonTFLMOFlacpLbXlthL2Q7WS6CLlt+WbWuK3uw+PXgau8iTChSnfrLLRiADnxlaVpEZdrsA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3003 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 4:04 AM, Simon Marchi wrote: > [CAUTION: External Email] > >> @@ -929,6 +930,11 @@ dwarf_expr_context::fetch_result (struct type *type, >> } >> else >> { >> + /* If AS_LVAL is false, means that the implicit conversion >> + from a location description to value is expected. */ >> + if (as_lval == false) > > For booleans: !as_lval > >> diff --git a/gdb/dwarf2/expr.h b/gdb/dwarf2/expr.h >> index d1374068732..3f519e81849 100644 >> --- a/gdb/dwarf2/expr.h >> +++ b/gdb/dwarf2/expr.h >> @@ -130,11 +130,13 @@ struct dwarf_expr_context >> void push_address (CORE_ADDR value, bool in_stack_memory); >> >> /* Evaluate the expression at ADDR (LEN bytes long) in a given PER_CU >> - FRAME context. Where TYPE, SUBOBJ_TYPE and SUBOBJ_OFFSET describe >> - expected struct value representation of the evaluation result. >> - The ADDR_INFO property can be specified to override the range of >> - memory addresses with the passed in buffer. */ >> - struct value *evaluate (const gdb_byte *addr, size_t len, >> + FRAME context. AS_LVAL defines if the returned struct value is >> + expected to be a value or a location description. Where TYPE, >> + SUBOBJ_TYPE and SUBOBJ_OFFSET describe expected struct value >> + representation of the evaluation result. The ADDR_INFO property >> + can be specified to override the range of memory addresses with >> + the passed in buffer. */ > > Especially when the comment starts getting long and there are many > parameters, I think it helps readability to space it out a bit. Start > with one sentence by itself that gives the high level description of > what the method does. Then one paragraph per parameter (or group of > parameters, if some are logically connected). So, something like: > > /* Evaluate the expression at ADDR (LEN bytes long) in a given PER_CU > and FRAME context. > > AS_LVAL defines if the returned struct value is expected to be a > value or a location description. > > TYPE, SUBOBJ_TYPE, SUBOBJ_OFFSET describe the expected struct value > representation of the evaluation result. > > ... > > It would also be good to clarify for AS_LVAL which of true and false > mean "a value" and "a location description". It's not clear to me. > > Simon > Agreed, I will change it in the next iteration. Zoran