Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tromey@redhat.com>
To: Jan Kratochvil <jan.kratochvil@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: RFC: implement DW_OP_bit_piece
Date: Fri, 21 May 2010 17:57:00 -0000	[thread overview]
Message-ID: <m3wruxywrx.fsf@fleche.redhat.com> (raw)
In-Reply-To: <20100520210135.GA31238@host0.dyn.jankratochvil.net> (Jan	Kratochvil's message of "Thu, 20 May 2010 23:01:35 +0200")

Tom> We do take care to optimize for the byte-aligned case.

Jan> FYI I am strongly against this decision.  This creates (a) more
Jan> complicated code to maintain (b) less used and more dense to debug
Jan> codepath (the bits one) and (c) I doubt current hardware and
Jan> current `gcc -O2' code will ever notice a difference

Ok.  I will change this and make all the other changes you recommend.

Jan> GDB has much more serious performance issues (symbols reading,
Jan> lookup) than evaluation of any specific values.

If you know of specific bad cases, I'm very interested in that.
I think we understand the symbol reading problem pretty well now, but
other stuff could at least use bug reports.

Jan> And this function needs to distinguish both the bits endianity and
Jan> the bytes endianity.  Out of big-byte-endian machines there are
Jan> both big-bits-endian and little-bits-endian ones:
Jan> 	http://en.wikipedia.org/wiki/Bit_numbering#Usage
Jan> OTOH there is currently no GDB target using set_gdbarch_bits_big_endian,
Jan> therefore all the GDB targets are little-bits-endian.  This seems
Jan> to be wrong.

As we discussed on irc, gdb is actually mostly ok here -- the default is
set properly in gdbarch.c:

  gdbarch->bits_big_endian = (gdbarch->byte_order == BFD_ENDIAN_BIG);

There may be some architecture where this is wrong -- Jakub mentioned
some ARM part? -- but naturally that is outside the scope of this patch.

Tom


  reply	other threads:[~2010-05-21 17:44 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-18 23:43 Tom Tromey
2010-05-19 14:16 ` Stan Shebs
2010-05-19 23:35   ` Tom Tromey
2010-05-20  3:29     ` Stan Shebs
2010-05-20  5:10       ` Tom Tromey
2010-05-20  7:12         ` Tom Tromey
2010-05-26 22:41           ` Tom Tromey
2010-06-03 20:12             ` RFA: rewrite dwarf->ax translator (Was: RFC: implement DW_OP_bit_piece) Tom Tromey
2010-06-08 20:45               ` RFA: rewrite dwarf->ax translator Tom Tromey
2010-06-11 15:20                 ` Tom Tromey
2010-06-08 20:52               ` RFA: rewrite dwarf->ax translator (Was: RFC: implement DW_OP_bit_piece) Pedro Alves
2010-06-08 21:21                 ` RFA: rewrite dwarf->ax translator Tom Tromey
2010-06-08 22:48                   ` Tom Tromey
2010-06-09 14:04                     ` Pedro Alves
2010-07-01 12:43               ` collecting optimized out variables regression (Re: RFA: rewrite dwarf->ax translator (Was: RFC: implement DW_OP_bit_piece)) Pedro Alves
2010-07-01 15:25                 ` collecting optimized out variables regression (Re: RFA: rewrite dwarf->ax translator Tom Tromey
2010-07-01 15:57                   ` Pedro Alves
2010-07-01 15:34                 ` collecting optimized out variables regression (Re: RFA: rewrite dwarf->ax translator (Was: RFC: implement DW_OP_bit_piece)) Jan Kratochvil
2010-05-20 19:53     ` RFC: implement DW_OP_bit_piece Tom Tromey
2010-05-20 20:30       ` Jan Kratochvil
2010-05-21 20:16     ` Tom Tromey
2010-05-21 21:16       ` Stan Shebs
2010-05-21 21:18         ` Tom Tromey
2010-05-25 19:22         ` RFC: DWARF expression disassembly (Was: RFC: implement DW_OP_bit_piece) Tom Tromey
2010-05-25 19:27           ` Jan Kratochvil
2010-05-25 20:25             ` RFC: DWARF expression disassembly Tom Tromey
2010-05-25 20:52               ` Jan Kratochvil
2010-05-25 22:03                 ` Tom Tromey
2010-05-26 17:21                   ` Eli Zaretskii
2010-06-01 18:36                     ` Tom Tromey
2010-06-01 18:40                       ` Eli Zaretskii
2010-06-02 19:32                         ` Tom Tromey
2010-05-20 21:07 ` RFC: implement DW_OP_bit_piece Jan Kratochvil
2010-05-21 17:57   ` Tom Tromey [this message]
2010-05-25 18:19     ` performance talk [Re: RFC: implement DW_OP_bit_piece] Jan Kratochvil
2010-05-25 22:23       ` Tom Tromey

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=m3wruxywrx.fsf@fleche.redhat.com \
    --to=tromey@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=jan.kratochvil@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