From: Walfred Tedeschi <walfred.tedeschi@intel.com>
To: tromey@redhat.com, jan.kratochvil@redhat.com, mark.kettenis@xs4all.nl
Cc: gdb-patches@sourceware.org,
Walfred Tedeschi <walfred.tedeschi@intel.com>
Subject: [PATCH 1/7] Fix conditions in creating a bitfield.
Date: Wed, 21 Aug 2013 12:46:00 -0000 [thread overview]
Message-ID: <1377089148-11844-2-git-send-email-walfred.tedeschi@intel.com> (raw)
In-Reply-To: <1377089148-11844-1-git-send-email-walfred.tedeschi@intel.com>
Bitfields are represented by intervals [start, begin]. It means that for an
interval comprised by only one bit start and end will be equal.
The present condition does not always hold. On the other hand in target-description.c
(tdesc_gdb_type) bitfield is created when "f->type" is null. The routine
maint_print_maint_print_c_tdesc_cmd is modified to follow the same strategy.
2013-07-31 Walfred Tedeschi <walfred.tedeschi@intel.com>
* target-descriptions.c (maint_print_maint_print_c_tdesc_cmd):
Modified logic of creating a bitfield to be in sync with
tdesc_gdb_type.
testsuite/
* maint_print_struct.xml (bitfield): Added bitfield having
start and end equal 0.
---
gdb/target-descriptions.c | 2 +-
gdb/testsuite/gdb.xml/maint_print_struct.xml | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/gdb/target-descriptions.c b/gdb/target-descriptions.c
index 44ad401..1410c02 100644
--- a/gdb/target-descriptions.c
+++ b/gdb/target-descriptions.c
@@ -1762,7 +1762,7 @@ feature = tdesc_create_feature (result, \"%s\");\n",
/* Going first for implicitly sized types, else part handles
bitfields. As reported on xml-tdesc.c implicitly sized types
cannot contain a bitfield. */
- if (f->start == 0 && f->end == 0)
+ if (f->type != NULL)
{
printf_unfiltered
(" field_type = tdesc_named_type (feature, \"%s\");\n",
diff --git a/gdb/testsuite/gdb.xml/maint_print_struct.xml b/gdb/testsuite/gdb.xml/maint_print_struct.xml
index 5ef0683..deac300 100644
--- a/gdb/testsuite/gdb.xml/maint_print_struct.xml
+++ b/gdb/testsuite/gdb.xml/maint_print_struct.xml
@@ -15,6 +15,7 @@
</struct>
<struct id="bitfield" size="8">
+ <field name="field0" start="0" end="0"/>
<field name="field1" start="24" end="63"/>
<field name="field2" start="16" end="24"/>
</struct>
--
1.7.10.4
next prev parent reply other threads:[~2013-08-21 12:46 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-21 12:46 [PATCH 0/7] Intel(R) MPX registers support Walfred Tedeschi
2013-08-21 12:46 ` Walfred Tedeschi [this message]
2013-08-21 12:46 ` [PATCH 5/7] Add MPX support to gdbserver Walfred Tedeschi
2013-08-21 12:46 ` [PATCH 7/7] Add MPX registers tests Walfred Tedeschi
2013-08-21 12:46 ` [PATCH 3/7] Add MPX support for i386 Walfred Tedeschi
2013-08-21 12:46 ` [PATCH 4/7] MPX for amd64 Walfred Tedeschi
2013-08-21 12:46 ` [PATCH 2/7] Add MPX registers XML files Walfred Tedeschi
2013-08-21 12:46 ` [PATCH 6/7] Add pretty-printer for MPX bnd registers Walfred Tedeschi
2013-08-21 14:33 ` [PATCH 0/7] Intel(R) MPX registers support Mark Kettenis
2013-08-21 16:25 ` Tedeschi, Walfred
2013-08-22 9:42 ` Tedeschi, Walfred
2013-08-23 13:30 ` Mark Kettenis
2013-08-23 13:40 ` Tedeschi, Walfred
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=1377089148-11844-2-git-send-email-walfred.tedeschi@intel.com \
--to=walfred.tedeschi@intel.com \
--cc=gdb-patches@sourceware.org \
--cc=jan.kratochvil@redhat.com \
--cc=mark.kettenis@xs4all.nl \
--cc=tromey@redhat.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