[GDBserver,AArch64] Enable support for range stepping

Message ID 1436956091-8344-1-git-send-email-pierre.langlois@arm.com
State New, archived
Headers

Commit Message

Pierre Langlois July 15, 2015, 10:28 a.m. UTC
  Hi all,

This patch just enables range stepping for AArch64.

Regression tested in remote configuration.  The gdb.base/range-stepping.exp
test is now enabled and gdb.trace/range-stepping.exp passes.

Thanks,
Pierre

gdb/gdbserver/Changelog:

	* linux-aarch64-low.c (aarch64_supports_range_stepping): New
	function, return 1.
	(the_low_target): Install it.
---
 gdb/gdbserver/linux-aarch64-low.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)
  

Comments

Yao Qi July 15, 2015, 11:57 a.m. UTC | #1
Pierre Langlois <pierre.langlois@arm.com> writes:

> gdb/gdbserver/Changelog:
>
> 	* linux-aarch64-low.c (aarch64_supports_range_stepping): New
> 	function, return 1.
> 	(the_low_target): Install it.

It is obvious to me.  Patch is OK.
  
Pierre Langlois July 15, 2015, 2:04 p.m. UTC | #2
On 15/07/15 12:57, Yao Qi wrote:
> Pierre Langlois <pierre.langlois@arm.com> writes:
> 
>> gdb/gdbserver/Changelog:
>>
>> 	* linux-aarch64-low.c (aarch64_supports_range_stepping): New
>> 	function, return 1.
>> 	(the_low_target): Install it.
> 
> It is obvious to me.  Patch is OK.
> 

Thanks Yao, I've pushed this in.
  

Patch

diff --git a/gdb/gdbserver/linux-aarch64-low.c b/gdb/gdbserver/linux-aarch64-low.c
index b068e55..4534a47 100644
--- a/gdb/gdbserver/linux-aarch64-low.c
+++ b/gdb/gdbserver/linux-aarch64-low.c
@@ -1295,6 +1295,14 @@  aarch64_supports_tracepoints (void)
   return 1;
 }
 
+/* Implementation of linux_target_ops method "supports_range_stepping".  */
+
+static int
+aarch64_supports_range_stepping (void)
+{
+  return 1;
+}
+
 struct linux_target_ops the_low_target =
 {
   aarch64_arch_setup,
@@ -1323,6 +1331,11 @@  struct linux_target_ops the_low_target =
   aarch64_linux_prepare_to_resume,
   NULL, /* process_qsupported */
   aarch64_supports_tracepoints,
+  NULL, /* get_thread_area */
+  NULL, /* install_fast_tracepoint_jump_pad */
+  NULL, /* emit_ops */
+  NULL, /* get_min_fast_tracepoint_insn_len */
+  aarch64_supports_range_stepping,
 };
 
 void