public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 0/7] Support tracepoints and software breakpoints on ARM aarch32-linux in GDBServer.
@ 2015-09-11 12:13 Antoine Tremblay
  2015-09-11 12:13 ` [PATCH 1/7] Fix instruction skipping when using software single step " Antoine Tremblay
                   ` (7 more replies)
  0 siblings, 8 replies; 34+ messages in thread
From: Antoine Tremblay @ 2015-09-11 12:13 UTC (permalink / raw)
  To: gdb-patches

This patch series adds support for tracepoints and software breakpoints on ARM
aarch32 on linux.

Some background :

Some specific issues for ARM aarch32 make it difficult for GDBServer to enable
these features namely : it has no hardware single step support and the
breakpoint data and size depends on the current instruction set used, thumb,
thumb2 or arm.

So GDBServer needs to know how to set a breakpoint of different size based on
the current instruction and registers and it needs to be able to do software
single stepping.

This patchset teaches this to GDBServer and enables support for tracepoints and
software breakpoints.

The patchset :

This patchset applies over :
https://sourceware.org/ml/gdb-patches/2015-09/msg00004.html
to avoid an immediate conflict...

The first 4 patches do some refactoring and some fixes to prepare for the main
patch : Add support for software single step on ARM aarch32-linux

This patch contains most of the work and resolves the main issues.

Subsequent patches add the functionality of tracepoints and software breakpoints
themselves.

This patchset was tested on Ubuntu 14.04 on ARMv7 and x86 no regressions found.

^ permalink raw reply	[flat|nested] 34+ messages in thread
* Re: [PATCH 2/7] Move some integer operations to common.
@ 2015-09-23 20:40 Doug Evans
  2015-09-24 11:53 ` Antoine Tremblay
  0 siblings, 1 reply; 34+ messages in thread
From: Doug Evans @ 2015-09-23 20:40 UTC (permalink / raw)
  To: Antoine Tremblay; +Cc: Pedro Alves, Gary Benson, gdb-patches

Antoine Tremblay writes:
  > > The next question I have is: Is there anything in what we need that
  > > needs to be in a generated header?
  > > Can we ask the bfd folks to move things like bfd_endian to a
  > > non-generated header?
  > > [bfd.h can still include it]
  > >
  >
  > Quickly looking at how bfd.h is done it seems to be possible to move
  > some stuff to a static file however I wonder if the current problem
  > would prove enough justification for that work.

One would hope no one would try to set too high a bar to justify this work,
but whatever.

  > It would also introduce a bfd version dependency in common code to check
  > for this static header. And it could be quite an ugly #ifdef changing
  > ints to enum in case the header is present.

This is a non-issue.  gdb always uses bfd HEAD, and in general
we don't support uses of bfd outside of binutils and gdb.

  > One thing to consider too is that this patchset has now changed a bit
  > and this enum is no longer used in GDBServer itself at all.

I'm less interested in whether the enum is used in gdbserver than
whether it is used in the common code (and thus by extension
it still matters what gdbserver uses).

We *could* just use a bool, is_big_endian or is_little_endian.
The code today assumes it never sees BFD_ENDIAN_UNKNOWN,
which would be nice to fix.
Or we could invent a new enum that just has big/little endian.

^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2015-09-24 11:53 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-11 12:13 [PATCH 0/7] Support tracepoints and software breakpoints on ARM aarch32-linux in GDBServer Antoine Tremblay
2015-09-11 12:13 ` [PATCH 1/7] Fix instruction skipping when using software single step " Antoine Tremblay
2015-09-11 12:13 ` [PATCH 2/7] Move some integer operations to common Antoine Tremblay
2015-09-11 14:24   ` Gary Benson
2015-09-11 17:16     ` Antoine Tremblay
2015-09-11 17:32       ` Antoine Tremblay
2015-09-14  9:24         ` Gary Benson
2015-09-14 15:20           ` Antoine Tremblay
2015-09-14 15:28             ` [PATCH 2/7 v2] " Antoine Tremblay
2015-09-21  9:10             ` [PATCH 2/7] " Gary Benson
2015-09-21  9:16               ` Pedro Alves
2015-09-21 17:49                 ` Antoine Tremblay
2015-09-22 16:06                   ` Doug Evans
2015-09-22 17:50                     ` Antoine Tremblay
2015-09-11 12:14 ` [PATCH 7/7] Support tracepoints and software breakpoints on ARM aarch32-linux in GDBServer Antoine Tremblay
2015-09-11 12:30   ` Eli Zaretskii
2015-09-11 12:43     ` Antoine Tremblay
2015-09-11 12:14 ` [PATCH 3/7] Support multiple breakpoint types per target " Antoine Tremblay
2015-09-11 12:14 ` [PATCH 4/7] Make breakpoint and breakpoint_len local variables " Antoine Tremblay
2015-09-11 12:14 ` [PATCH 5/7] Add support for software single step on ARM aarch32-linux " Antoine Tremblay
2015-09-14 11:00   ` Yao Qi
2015-09-14 12:41     ` Antoine Tremblay
2015-09-14 16:10       ` Yao Qi
2015-09-14 17:28         ` Antoine Tremblay
2015-09-15  7:22           ` Yao Qi
2015-09-15 12:33             ` Antoine Tremblay
2015-09-15 16:49               ` Antoine Tremblay
2015-09-11 12:14 ` [PATCH 6/7] Support conditional breakpoints on targets that can software single step " Antoine Tremblay
2015-09-14 10:33 ` [PATCH 0/7] Support tracepoints and software breakpoints on ARM aarch32-linux " Yao Qi
2015-09-14 13:23   ` Antoine Tremblay
2015-09-15 14:02     ` Yao Qi
2015-09-15 14:08       ` Antoine Tremblay
2015-09-23 20:40 [PATCH 2/7] Move some integer operations to common Doug Evans
2015-09-24 11:53 ` Antoine Tremblay

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).