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]

Re: [PATCH 2/2] Support single step by arch or target


Antoine Tremblay <antoine.tremblay@ericsson.com> writes:

> Could we name this can_hardware_single_step instead ? Since the target
> may be able to software single step (in gdbserver). And thus it would
> be confusing...It would also be more consistent with the
> supports_hardware_single_step hook ?
>

If GDBserver can do software single step, this hook should return true
as well.  Hardware single step and software single step in GDBserver
should make no difference to GDB.

>
>> --- a/gdb/arm-linux-tdep.c
>> +++ b/gdb/arm-linux-tdep.c
>> @@ -917,6 +917,11 @@ arm_linux_software_single_step (struct frame_info *frame)
>>     if (arm_deal_with_atomic_sequence (frame))
>>       return 1;
>>
>> +  /* If the target does have hardware single step, GDB doesn't have
>> +     to bother software single step.  */
>> +  if (target_can_do_single_step () == 1)
>> +    return 0;
>> +
>>     next_pc = arm_get_next_pc (frame, get_frame_pc (frame));
>>
>>     /* The Linux kernel offers some user-mode helpers in a high page.  We can
>
> target_can_do_single_step () should be before
> arm_deal_with_atomic_sequence ...

I am not sure we can do single step (via hardware and linux kernel)
for arm atomic sequence , but we can't do that for aarch64, see
aarch64-tdep.c:aarch64_software_single_step.

-- 
Yao (éå)


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