From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 87933 invoked by alias); 24 Aug 2017 12:36:13 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 87921 invoked by uid 89); 24 Aug 2017 12:36:12 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-7.4 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,MIME_BASE64_BLANKS,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=nicole, Tel, tel, commercial X-HELO: mga07.intel.com Received: from mga07.intel.com (HELO mga07.intel.com) (134.134.136.100) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 24 Aug 2017 12:36:10 +0000 Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga105.jf.intel.com with ESMTP; 24 Aug 2017 05:36:08 -0700 X-ExtLoop1: 1 Received: from irsmsx109.ger.corp.intel.com ([163.33.3.23]) by orsmga001.jf.intel.com with ESMTP; 24 Aug 2017 05:36:08 -0700 Received: from irsmsx155.ger.corp.intel.com (163.33.192.3) by IRSMSX109.ger.corp.intel.com (163.33.3.23) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 24 Aug 2017 13:36:07 +0100 Received: from irsmsx106.ger.corp.intel.com ([169.254.8.36]) by irsmsx155.ger.corp.intel.com ([169.254.14.70]) with mapi id 14.03.0319.002; Thu, 24 Aug 2017 13:36:07 +0100 From: "Wiederhake, Tim" To: Yao Qi CC: "gdb-patches@sourceware.org" , Bernhard Heckel Subject: RE: [PATCH v3 3/6] Fortran: Ptype, print type extension. Date: Thu, 24 Aug 2017 12:36:00 -0000 Message-ID: <9676A094AF46E14E8265E7A3F4CCE9AF636294C3@IRSMSX106.ger.corp.intel.com> References: <1502449611-8865-1-git-send-email-tim.wiederhake@intel.com> <1502449611-8865-4-git-send-email-tim.wiederhake@intel.com> <86fucir1cg.fsf@gmail.com> In-Reply-To: <86fucir1cg.fsf@gmail.com> dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 X-IsSubscribed: yes X-SW-Source: 2017-08/txt/msg00463.txt.bz2 PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBnZGItcGF0 Y2hlcy1vd25lckBzb3VyY2V3YXJlLm9yZyBbbWFpbHRvOmdkYi1wYXRjaGVz LQ0KPiBvd25lckBzb3VyY2V3YXJlLm9yZ10gT24gQmVoYWxmIE9mIFlhbyBR aQ0KPiBTZW50OiBXZWRuZXNkYXksIEF1Z3VzdCAyMywgMjAxNyAxOjA1IFBN DQo+IFRvOiBXaWVkZXJoYWtlLCBUaW0gPHRpbS53aWVkZXJoYWtlQGludGVs LmNvbT4NCj4gQ2M6IGdkYi1wYXRjaGVzQHNvdXJjZXdhcmUub3JnOyBCZXJu aGFyZCBIZWNrZWwNCj4gPGJlcm5oYXJkLmhlY2tlbEBpbnRlbC5jb20+DQo+ IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjMgMy82XSBGb3J0cmFuOiBQdHlwZSwg cHJpbnQgdHlwZSBleHRlbnNpb24uDQo+IA0KPiBUaW0gV2llZGVyaGFrZSA8 dGltLndpZWRlcmhha2VAaW50ZWwuY29tPiB3cml0ZXM6DQo+IA0KPiA+ICtn ZGJfdGVzdF9tdWx0aXBsZSAkdGVzdCAldGVzdCB7DQo+IA0KPiBzLyV0ZXN0 LyR0ZXN0DQo+IA0KPiA+ICsgICAgLXJlICIkb3V0cHV0X3Bhc3NcclxuJGdk Yl9wcm9tcHQgJCIgew0KPiA+ICsgICAgICBwYXNzICIkdGVzdCINCj4gPiAr ICAgIH0NCj4gPiArICAgIC1yZSAiJG91dHB1dF94ZmFpbFxyXG4kZ2RiX3By b21wdCAkIiB7DQo+ID4gKyAgICAgIHhmYWlsICJnY2MvNDk0NzUiDQo+ID4g KyAgICB9DQo+ID4gK30NCj4gPiAgc2V0IHRlc3QgInB0eXBlIHdwJWNvbyIN Cj4gPiAgZ2RiX3Rlc3RfbXVsdGlwbGUgIiR0ZXN0IiAiJHRlc3QiIHsNCj4g PiAgICAgIC1yZSAiJHJlYWwgXFwoM1xcKVxyXG4kZ2RiX3Byb21wdCAkIiB7 DQo+ID4gQEAgLTgwLDExICs5MiwxNSBAQCBnZGJfdGVzdCAicCB3cF92bGEo MSklcG9pbnQiICIgPSBcXCggY29vID0gXFwoMTAsDQo+IDEyLCAxMFxcKSBc XCkiDQo+ID4gIGdkYl90ZXN0ICJwIHdwX3ZsYSgxKSIgIiA9IFxcKCBwb2lu dCA9IFxcKCBjb28gPSBcXCgxMCwgMTIsIDEwXFwpIFxcKSwNCj4gYW5nbGUg PSAxMDEgXFwpIg0KPiA+DQo+ID4gIGdkYl90ZXN0ICJ3aGF0aXMgd3Bfdmxh IiAidHlwZSA9IFR5cGUgd2F5cG9pbnQgXFwoM1xcKSINCj4gPiAtZ2RiX3Rl c3QgInB0eXBlIHdwX3ZsYSIgXA0KPiA+IC0gIFttdWx0aV9saW5lICJ0eXBl ID0gVHlwZSB3YXlwb2ludCIgXA0KPiA+IC0gICAgICAgICAgICAgICIgICAg VHlwZSBwb2ludCA6OiBwb2ludCIgXA0KPiA+IC0gICAgICAgICAgICAgICIg ICAgJHJlYWwgOjogYW5nbGUiIFwNCj4gPiAtICAgICAgICAgICAgICAiRW5k IFR5cGUgd2F5cG9pbnQgXFwoM1xcKSJdDQo+ID4gK3NldCB0ZXN0ICJwdHlw ZSB3cF92bGEiDQo+ID4gK2dkYl90ZXN0X211bHRpcGxlICR0ZXN0ICV0ZXN0 IHsNCj4gDQo+IExpa2V3aXNlLg0KDQpCb3RoIGFwcGxpZWQgbG9jYWxseS4N Cg0KPiBQYXRjaCBpcyBnb29kIHRvIG1lLg0KDQpUaGFua3MhDQoNCk5vdyAj MSBhbmQgIzMgYXJlIE9LJ2Q7DQojMiwgIzQsICM1LCAjNiBzdGlsbCBuZWVk IHJldmlldy4NCg0KUmVnYXJkcywNClRpbQ0KDQo+IA0KPiAtLQ0KPiBZYW8g KOm9kOWwpykNCkludGVsIERldXRzY2hsYW5kIEdtYkgKUmVnaXN0ZXJlZCBB ZGRyZXNzOiBBbSBDYW1wZW9uIDEwLTEyLCA4NTU3OSBOZXViaWJlcmcsIEdl cm1hbnkKVGVsOiArNDkgODkgOTkgODg1My0wLCB3d3cuaW50ZWwuZGUKTWFu YWdpbmcgRGlyZWN0b3JzOiBDaHJpc3RpbiBFaXNlbnNjaG1pZCwgQ2hyaXN0 aWFuIExhbXByZWNodGVyCkNoYWlycGVyc29uIG9mIHRoZSBTdXBlcnZpc29y eSBCb2FyZDogTmljb2xlIExhdQpSZWdpc3RlcmVkIE9mZmljZTogTXVuaWNo CkNvbW1lcmNpYWwgUmVnaXN0ZXI6IEFtdHNnZXJpY2h0IE11ZW5jaGVuIEhS QiAxODY5MjgK >From gdb-patches-return-141172-listarch-gdb-patches=sources.redhat.com@sourceware.org Thu Aug 24 12:57:08 2017 Return-Path: Delivered-To: listarch-gdb-patches@sources.redhat.com Received: (qmail 130142 invoked by alias); 24 Aug 2017 12:57:08 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 130131 invoked by uid 89); 24 Aug 2017 12:57:06 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy= X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 24 Aug 2017 12:57:05 +0000 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 75C635F7B1 for ; Thu, 24 Aug 2017 12:57:04 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 75C635F7B1 Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=jan.kratochvil@redhat.com Received: from host1.jankratochvil.net (ovpn-117-146.ams2.redhat.com [10.36.117.146]) by smtp.corp.redhat.com (Postfix) with ESMTPS id B45C57F1D9; Thu, 24 Aug 2017 12:57:03 +0000 (UTC) Date: Thu, 24 Aug 2017 12:57:00 -0000 From: Jan Kratochvil To: Pedro Alves Cc: gdb-patches@sourceware.org Subject: [patchv2+8.0] DWARF-5 Fix DW_FORM_implicit_const Message-ID: <20170824125700.GA7891@host1.jankratochvil.net> References: <20170622203308.GA23353@host1.jankratochvil.net> <2f19870d-0c08-193f-1971-b58333039f40@redhat.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="7JfCtLOvnd9MIVvH" Content-Disposition: inline In-Reply-To: <2f19870d-0c08-193f-1971-b58333039f40@redhat.com> User-Agent: Mutt/1.8.3 (2017-05-23) X-SW-Source: 2017-08/txt/msg00464.txt.bz2 --7JfCtLOvnd9MIVvH Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-length: 591 On Thu, 24 Aug 2017 01:08:01 +0200, Pedro Alves wrote: > Wouldn't that be more direct and to the point? If I'm imagining > that version of the patch correctly, that'd seem like a > more obvious choice to me. The proposed version looks like is > frobbing the form so that DW_FORM_sdata so that those two other > functions end up doing the right thing as side effect. Right? > Is there some advantage to doing it the sdata way? It kind of feels > like a hack, but maybe I'm missing something. Is this patch OK? Regression tested on fedora-rawhide {x86_64,x86_64-m32,i686}. Thanks, Jan --7JfCtLOvnd9MIVvH Content-Type: text/plain; charset=us-ascii Content-Disposition: inline; filename="dwarf5-implicit_form.patch" Content-length: 2175 gdb/ChangeLog 2017-08-24 Jan Kratochvil * dwarf2read.c (dwarf2_const_value_attr, dump_die_shallow) (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes) (skip_form_bytes, attr_form_is_constant): Handle DW_FORM_implicit_const. diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index 38228500ab..d4dd01b8b3 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -19499,6 +19499,7 @@ dwarf2_const_value_attr (const struct attribute *attr, struct type *type, break; case DW_FORM_sdata: + case DW_FORM_implicit_const: *value = DW_SND (attr); break; @@ -20492,6 +20493,10 @@ dump_die_shallow (struct ui_file *f, int indent, struct die_info *die) fprintf_unfiltered (f, "unexpected attribute form: DW_FORM_indirect"); break; + case DW_FORM_implicit_const: + fprintf_unfiltered (f, "constant: %s", + plongest (DW_SND (&die->attrs[i]))); + break; default: fprintf_unfiltered (f, "unsupported attribute form: %d.", die->attrs[i].form); @@ -20583,7 +20588,7 @@ dwarf2_get_ref_die_offset (const struct attribute *attr) static LONGEST dwarf2_get_attr_constant_value (const struct attribute *attr, int default_value) { - if (attr->form == DW_FORM_sdata) + if (attr->form == DW_FORM_sdata || attr->form == DW_FORM_implicit_const) return DW_SND (attr); else if (attr->form == DW_FORM_udata || attr->form == DW_FORM_data1 @@ -20918,6 +20923,7 @@ dwarf2_fetch_constant_bytes (sect_offset sect_off, break; case DW_FORM_sdata: + case DW_FORM_implicit_const: type = die_type (die, cu); result = write_constant_as_bytes (obstack, byte_order, type, DW_SND (attr), len); @@ -21854,6 +21860,9 @@ skip_form_bytes (bfd *abfd, const gdb_byte *bytes, const gdb_byte *buffer_end, } break; + case DW_FORM_implicit_const: + break; + default: { complain: @@ -22495,6 +22504,7 @@ attr_form_is_constant (const struct attribute *attr) case DW_FORM_data2: case DW_FORM_data4: case DW_FORM_data8: + case DW_FORM_implicit_const: return 1; default: return 0; --7JfCtLOvnd9MIVvH--