From: Tom Tromey <tromey@redhat.com>
To: Sanimir Agovic <sanimir.agovic@intel.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH 01/10] vla: introduce new bound type abstraction adapt uses
Date: Thu, 07 Nov 2013 19:00:00 -0000 [thread overview]
Message-ID: <87iow4um4k.fsf@fleche.redhat.com> (raw)
In-Reply-To: <1382366424-21010-2-git-send-email-sanimir.agovic@intel.com> (Sanimir Agovic's message of "Mon, 21 Oct 2013 16:40:15 +0200")
>>>>> "Sanimir" == Sanimir Agovic <sanimir.agovic@intel.com> writes:
Sanimir> The rational behind this patch is to get started to implement
Sanimir> the feature described in dwarf4 standard (2.19) Static and
Sanimir> Dynamic Values of Attributes. It adds new DWARF2_PROP to store
Sanimir> either a constant, exprloc, or reference to describe an
Sanimir> upper-/lower bound of a subrange. Other than that no new
Sanimir> features are introduce.
Thanks very much for working on this.
Sanimir> + low.data.const_val = dwarf2_get_attr_constant_value (attr, low.data.const_val);
This line is too long and should be wrapped.
Sanimir> +struct type *
Sanimir> +create_range_type_1 (struct type *result_type, struct type *index_type,
Sanimir> + const struct dwarf2_prop *low_bound,
Sanimir> + const struct dwarf2_prop *high_bound)
Sanimir> +{
This needs an introductory comment.
Sanimir> +/* Used to store bound information for a type. */
Sanimir> +
Sanimir> +struct dwarf2_prop
Sanimir> +{
Sanimir> + /* Determine which field of the union dwarf2_prop.data is used. */
Sanimir> + enum
Sanimir> + {
Sanimir> + DWARF_CONST,
Sanimir> + DWARF_LOCEXPR,
Sanimir> + DWARF_LOCLIST
Sanimir> + } kind;
Sanimir> +
Sanimir> + /* Stores information as location expression, location list,
Sanimir> + or constant value. */
Sanimir> + union data
Sanimir> + {
Sanimir> + LONGEST const_val;
Sanimir> + struct dwarf2_locexpr_baton *locexpr;
Sanimir> + struct dwarf2_loclist_baton *loclist;
Sanimir> + } data;
Sanimir> +};
Sanimir> @@ -589,11 +612,11 @@ struct main_type
Sanimir> {
Sanimir> /* Low bound of range. */
Sanimir> - LONGEST low;
Sanimir> + struct dwarf2_prop low;
Sanimir> /* High bound of range. */
Sanimir> - LONGEST high;
Sanimir> + struct dwarf2_prop high;
Just after this hunk of "struct range_bounds" is this code:
/* Flags indicating whether the values of low and high are
valid. When true, the respective range value is
undefined. Currently used only for FORTRAN arrays. */
char low_undefined;
char high_undefined;
It seems to me that it would be cleanest to make this a new value of the
enum you introduced, like "DWARF_UNDEFINED", and update a few macros to
follow. What do you think?
Tom
next prev parent reply other threads:[~2013-11-07 18:01 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-21 14:40 C99 variable length array support Sanimir Agovic
2013-10-21 14:40 ` [PATCH 03/10] vla: enable sizeof operator to work with variable length arrays Sanimir Agovic
2013-11-07 19:10 ` Tom Tromey
2013-10-21 14:40 ` [PATCH 05/10] vla: allow side effects for sizeof argument Sanimir Agovic
2013-10-24 19:55 ` Tom Tromey
2013-10-25 8:13 ` Agovic, Sanimir
2013-10-28 21:00 ` Tom Tromey
2013-11-18 9:37 ` Agovic, Sanimir
2013-11-18 15:56 ` Tom Tromey
2013-11-20 12:18 ` Agovic, Sanimir
2013-11-19 17:08 ` Pedro Alves
2013-11-20 12:47 ` Agovic, Sanimir
2013-11-20 13:24 ` Pedro Alves
2013-10-21 14:40 ` [PATCH 02/10] type: add c99 variable length array support Sanimir Agovic
2013-11-07 19:02 ` Tom Tromey
2013-11-19 15:31 ` Agovic, Sanimir
2013-11-22 20:00 ` Tom Tromey
2013-11-27 17:08 ` Agovic, Sanimir
[not found] ` <0377C58828D86C4588AEEC42FC3B85A7176BC3DE@IRSMSX105.ger.corp.intel.com>
2013-11-27 17:15 ` Agovic, Sanimir
2013-11-07 19:10 ` Tom Tromey
2013-10-21 14:40 ` [PATCH 07/10] test: evaluate pointers to C99 vla correctly Sanimir Agovic
2013-11-07 20:57 ` Tom Tromey
2013-11-08 6:37 ` Tom Tromey
2013-11-07 21:14 ` Tom Tromey
2013-10-21 14:40 ` [PATCH 01/10] vla: introduce new bound type abstraction adapt uses Sanimir Agovic
2013-11-07 19:00 ` Tom Tromey [this message]
2013-11-18 11:15 ` Agovic, Sanimir
2013-10-21 14:40 ` [PATCH 08/10] test: multi-dimensional c99 vla Sanimir Agovic
2013-11-07 21:19 ` Tom Tromey
2013-10-21 14:40 ` [PATCH 04/10] vla: enable sizeof operator for indirection Sanimir Agovic
2013-11-07 19:57 ` Tom Tromey
2013-10-21 14:40 ` [PATCH 06/10] vla: update type from newly created value Sanimir Agovic
2013-11-07 20:56 ` Tom Tromey
2013-11-20 7:56 ` Agovic, Sanimir
2013-11-20 11:02 ` Pedro Alves
2013-11-20 13:08 ` Agovic, Sanimir
2013-11-21 18:50 ` Pedro Alves
2013-11-23 19:27 ` Doug Evans
2013-10-21 14:40 ` [PATCH 09/10] test: basic c99 vla tests Sanimir Agovic
2013-11-07 21:23 ` Tom Tromey
2013-10-21 14:40 ` [PATCH 10/10] test: add mi vla test Sanimir Agovic
2013-11-07 21:31 ` Tom Tromey
2013-11-21 18:52 ` C99 variable length array support Pedro Alves
2013-11-21 19:01 ` Pedro Alves
2013-11-21 19:10 ` Pedro Alves
2013-11-22 10:53 ` Agovic, Sanimir
2013-11-22 12:35 ` Pedro Alves
2013-11-22 17:06 ` Agovic, Sanimir
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87iow4um4k.fsf@fleche.redhat.com \
--to=tromey@redhat.com \
--cc=gdb-patches@sourceware.org \
--cc=sanimir.agovic@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).