This commit adds proper support for single-stepping on arm-none-eabi.
arm_software_single_step is now always registered in arm_gdbarch_init (arm-tdep.c) before calling gdbarch_osabi_init. Additionally, arm_software_single_step now checks whether or not the target supports single-stepping itself (which is the case for most simulators, emulators, etc.).
Following this change, we need to assume, without the knowledge the OS (if there is one) that SVC instructions return to the next user-mode instruction by default (arm_get_next_pcs_syscall_next_pc currently returns 0 which is virtually guaranteed to fail).
gdb/Changelog:
- arm-tdep.c (arm_software_single_step): Check whether the target actually has declared single-step support. Declare this function static. (arm_get_next_pcs_syscall_next_pc): Assume that SVC instructions return to the next user-mode instruction by default.