X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdbserver%2Flinux-arm-low.cc;h=bd42feba1c4724bc20a421f2b52e840a66342bc5;hb=7582c77c1d2cab3f53b70697529c1644ceeb94a2;hp=aab2c427f5abd4b446de5b0d3a6862ddf3c7319c;hpb=3ca4edb6617353defacd3bf3a4ee3d458238419e;p=deliverable%2Fbinutils-gdb.git diff --git a/gdbserver/linux-arm-low.cc b/gdbserver/linux-arm-low.cc index aab2c427f5..bd42feba1c 100644 --- a/gdbserver/linux-arm-low.cc +++ b/gdbserver/linux-arm-low.cc @@ -68,6 +68,8 @@ public: const gdb_byte *sw_breakpoint_from_kind (int kind, int *size) override; + bool supports_software_single_step () override; + protected: void low_arch_setup () override; @@ -81,6 +83,8 @@ protected: CORE_ADDR low_get_pc (regcache *regcache) override; void low_set_pc (regcache *regcache, CORE_ADDR newpc) override; + + std::vector low_get_next_pcs (regcache *regcache) override; }; /* The singleton target ops object. */ @@ -968,10 +972,16 @@ arm_target::low_arch_setup () have_ptrace_getregset = 0; } +bool +arm_target::supports_software_single_step () +{ + return true; +} + /* Fetch the next possible PCs after the current instruction executes. */ -static std::vector -arm_gdbserver_get_next_pcs (struct regcache *regcache) +std::vector +arm_target::low_get_next_pcs (regcache *regcache) { struct arm_get_next_pcs next_pcs_ctx; @@ -1075,7 +1085,6 @@ arm_target::get_regs_info () } struct linux_target_ops the_low_target = { - arm_gdbserver_get_next_pcs, 0, arm_breakpoint_at, arm_supports_z_point_type,