/* Target-dependent code for Analog Devices Blackfin processor, for GDB.
- Copyright (C) 2005-2017 Free Software Foundation, Inc.
+ Copyright (C) 2005-2022 Free Software Foundation, Inc.
Contributed by Analog Devices, Inc.
{
{ 0x00ADE128, 0xffffffff }, /* P0 = __NR_rt_sigreturn; */
{ 0x00A0, 0xffff }, /* EXCPT 0; */
- { TRAMP_SENTINEL_INSN, -1 },
+ { TRAMP_SENTINEL_INSN, ULONGEST_MAX },
},
bfin_linux_sigframe_init,
};
static LONGEST
bfin_linux_get_syscall_number (struct gdbarch *gdbarch,
- ptid_t ptid)
+ thread_info *thread)
{
- struct regcache *regcache = get_thread_regcache (ptid);
+ struct regcache *regcache = get_thread_regcache (thread);
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
/* The content of a register. */
gdb_byte buf[4];
/* Getting the system call number from the register.
When dealing with Blackfin architecture, this information
is stored at %p0 register. */
- regcache_cooked_read (regcache, BFIN_P0_REGNUM, buf);
+ regcache->cooked_read (BFIN_P0_REGNUM, buf);
ret = extract_signed_integer (buf, 4, byte_order);
static void
bfin_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
{
- linux_init_abi (info, gdbarch);
+ linux_init_abi (info, gdbarch, 0);
/* Set the sigtramp frame sniffer. */
tramp_frame_prepend_unwinder (gdbarch, &bfin_linux_sigframe);
/* Functions for 'catch syscall'. */
set_xml_syscall_file_name (gdbarch, "syscalls/bfin-linux.xml");
set_gdbarch_get_syscall_number (gdbarch,
- bfin_linux_get_syscall_number);
+ bfin_linux_get_syscall_number);
}
-/* Provide a prototype to silence -Wmissing-prototypes. */
-extern initialize_file_ftype _initialize_bfin_linux_tdep;
-
+void _initialize_bfin_linux_tdep ();
void
-_initialize_bfin_linux_tdep (void)
+_initialize_bfin_linux_tdep ()
{
gdbarch_register_osabi (bfd_arch_bfin, 0, GDB_OSABI_LINUX,
- bfin_linux_init_abi);
+ bfin_linux_init_abi);
}