This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 00/13] Change gdbarch software_single_step frame_info to regcache


Hi,
We use regcache for arm software single step after we shared arm
software single step code in both GDB and GDBserver.  This patch series
converts the rest arches to using regcache instead of frame_info,
because we always do single step in innermost frame, which is
equivalent to regcache.

Patch #1 adds regcache_raw_get_signed, which is used the in following
patches as an replacement to get_frame_register_signed.  The following
11 patches convert each arch one by one to using regcache.  Each patch
does the following changes,

 - use current regcache, and stop using frame,
 - replace get_frame_register_{un,}signed with regcache_raw_get_{un,}signed,
 - get gdbarch from get_regcache_arch instead of get_frame_arch,
 - get pc from regcache_read_pc instead of get_frame_pc,
 - still current frame some places in order to get the next pc of syscall,

The last patch change the software_single_step interface finally.

Regression tested on x86_64-linux and ppc64-linux.  If people want to test
on their own arch, just need to apply patch #1, patch for the arch, and
the last one.

*** BLURB HERE ***

Yao Qi (13):
  New regcache_raw_get_signed
  gdbarch software_single_step frame_info to regcache: aarch64
  gdbarch software_single_step frame_info to regcache: alpha
  gdbarch software_single_step frame_info to regcache: cris
  gdbarch software_single_step frame_info to regcache: mips
  gdbarch software_single_step frame_info to regcache: moxie
  gdbarch software_single_step frame_info to regcache: nios2
  gdbarch software_single_step frame_info to regcache: sparc
  gdbarch software_single_step frame_info to regcache: s390
  gdbarch software_single_step frame_info to regcache: rs6000
  gdbarch software_single_step frame_info to regcache: tic6x
  gdbarch software_single_step frame_info to regcache: spu
  Change gdbarch software_single_step frame_info to regcache

 gdb/aarch64-tdep.c    |   6 +--
 gdb/alpha-tdep.c      |  22 ++++----
 gdb/alpha-tdep.h      |   2 +-
 gdb/arm-linux-tdep.c  |   3 +-
 gdb/arm-tdep.c        |   3 +-
 gdb/arm-tdep.h        |   2 +-
 gdb/breakpoint.c      |   5 +-
 gdb/cris-tdep.c       |  14 ++---
 gdb/gdbarch.c         |   4 +-
 gdb/gdbarch.h         |   4 +-
 gdb/gdbarch.sh        |   2 +-
 gdb/mips-tdep.c       | 141 +++++++++++++++++++++++++-------------------------
 gdb/mips-tdep.h       |   2 +-
 gdb/moxie-tdep.c      |   7 ++-
 gdb/nios2-tdep.c      |  26 +++++-----
 gdb/ppc-tdep.h        |   2 +-
 gdb/regcache.c        |  13 +++++
 gdb/regcache.h        |   3 ++
 gdb/rs6000-aix-tdep.c |  35 +++++++------
 gdb/rs6000-tdep.c     |   7 ++-
 gdb/s390-linux-tdep.c |   7 ++-
 gdb/sparc-tdep.c      |  18 ++++---
 gdb/spu-tdep.c        |  10 ++--
 gdb/tic6x-tdep.c      |  24 ++++-----
 24 files changed, 190 insertions(+), 172 deletions(-)

-- 
1.9.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]