gdbarch software_single_step frame_info to regcache: s390
authorYao Qi <yao.qi@linaro.org>
Tue, 22 Nov 2016 14:05:05 +0000 (14:05 +0000)
committerYao Qi <yao.qi@linaro.org>
Tue, 22 Nov 2016 14:05:05 +0000 (14:05 +0000)
gdb:

2016-11-22  Yao Qi  <yao.qi@linaro.org>

* s390-linux-tdep.c (s390_software_single_step): Call
get_regcache_arch instead of get_frame_arch.  Call
regcache_read_pc instead of get_frame_pc.

gdb/ChangeLog
gdb/s390-linux-tdep.c

index b3931c3b321b2535ef44fd0fcd087a7658646cc6..9898c8fffe5b7cbe83e0b3257e0cc8628561f2ad 100644 (file)
@@ -1,3 +1,9 @@
+2016-11-22  Yao Qi  <yao.qi@linaro.org>
+
+       * s390-linux-tdep.c (s390_software_single_step): Call
+       get_regcache_arch instead of get_frame_arch.  Call
+       regcache_read_pc instead of get_frame_pc.
+
 2016-11-22  Yao Qi  <yao.qi@linaro.org>
 
        * sparc-tdep.c (sparc_analyze_control_transfer): Replace parameter
index 885aadd1536b9909d0aadc8b43cab541d9d2eab1..dc5c674bc2dab8abdfb22206711d8e19b842ba49 100644 (file)
@@ -725,9 +725,9 @@ s390_is_partial_instruction (struct gdbarch *gdbarch, CORE_ADDR loc, int *len)
 static VEC (CORE_ADDR) *
 s390_software_single_step (struct frame_info *frame)
 {
-  struct gdbarch *gdbarch = get_frame_arch (frame);
-  struct address_space *aspace = get_frame_address_space (frame);
-  CORE_ADDR loc = get_frame_pc (frame);
+  struct regcache *regcache = get_current_regcache ();
+  struct gdbarch *gdbarch = get_regcache_arch (regcache);
+  CORE_ADDR loc = regcache_read_pc (regcache);
   enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
   int len;
   uint16_t insn;