+2016-06-28 Yao Qi <yao.qi@linaro.org>
+
+ * linux-low.c (get_syscall_trapinfo): Remove parameter sysret.
+ Callers updated.
+ * linux-low.h (struct linux_target_ops) <get_syscall_trapinfo>:
+ Remove parameter sysno.
+ * linux-x86-low.c (x86_get_syscall_trapinfo): Remove parameter
+ sysret.
+
2016-06-21 Andreas Arnez <arnez@linux.vnet.ibm.com>
* linux-s390-low.c (s390_emit_eq_goto): Mark function static.
}
/* This function should only be called if LWP got a SYSCALL_SIGTRAP.
- Fill *SYSNO with the syscall nr trapped. Fill *SYSRET with the
- return code. */
+ Fill *SYSNO with the syscall nr trapped. */
static void
-get_syscall_trapinfo (struct lwp_info *lwp, int *sysno, int *sysret)
+get_syscall_trapinfo (struct lwp_info *lwp, int *sysno)
{
struct thread_info *saved_thread;
struct regcache *regcache;
if (the_low_target.get_syscall_trapinfo == NULL)
{
/* If we cannot get the syscall trapinfo, report an unknown
- system call number and -ENOSYS return value. */
+ system call number. */
*sysno = UNKNOWN_SYSCALL;
- *sysret = -ENOSYS;
return;
}
current_thread = get_lwp_thread (lwp);
regcache = get_thread_regcache (current_thread, 1);
- (*the_low_target.get_syscall_trapinfo) (regcache, sysno, sysret);
+ (*the_low_target.get_syscall_trapinfo) (regcache, sysno);
if (debug_threads)
- {
- debug_printf ("get_syscall_trapinfo sysno %d sysret %d\n",
- *sysno, *sysret);
- }
+ debug_printf ("get_syscall_trapinfo sysno %d\n", *sysno);
current_thread = saved_thread;
}
gdb_catch_this_syscall_p (struct lwp_info *event_child)
{
int i, iter;
- int sysno, sysret;
+ int sysno;
struct thread_info *thread = get_lwp_thread (event_child);
struct process_info *proc = get_thread_process (thread);
if (VEC_index (int, proc->syscalls_to_catch, 0) == ANY_SYSCALL)
return 1;
- get_syscall_trapinfo (event_child, &sysno, &sysret);
+ get_syscall_trapinfo (event_child, &sysno);
for (i = 0;
VEC_iterate (int, proc->syscalls_to_catch, i, iter);
i++)
if (WSTOPSIG (w) == SYSCALL_SIGTRAP)
{
- int sysret;
-
get_syscall_trapinfo (event_child,
- &ourstatus->value.syscall_number, &sysret);
+ &ourstatus->value.syscall_number);
ourstatus->kind = event_child->syscall_state;
}
else if (current_thread->last_resume_kind == resume_stop
/* See target.h. */
int (*supports_hardware_single_step) (void);
- /* Fill *SYSNO with the syscall nr trapped. Fill *SYSRET with the
- return code. Only to be called when inferior is stopped
- due to SYSCALL_SIGTRAP. */
- void (*get_syscall_trapinfo) (struct regcache *regcache,
- int *sysno, int *sysret);
+ /* Fill *SYSNO with the syscall nr trapped. Only to be called when
+ inferior is stopped due to SYSCALL_SIGTRAP. */
+ void (*get_syscall_trapinfo) (struct regcache *regcache, int *sysno);
/* See target.h. */
int (*get_ipa_tdesc_idx) (void);
code. This should only be called if LWP got a SYSCALL_SIGTRAP. */
static void
-x86_get_syscall_trapinfo (struct regcache *regcache, int *sysno, int *sysret)
+x86_get_syscall_trapinfo (struct regcache *regcache, int *sysno)
{
int use_64bit = register_size (regcache->tdesc, 0) == 8;
if (use_64bit)
{
long l_sysno;
- long l_sysret;
collect_register_by_name (regcache, "orig_rax", &l_sysno);
- collect_register_by_name (regcache, "rax", &l_sysret);
*sysno = (int) l_sysno;
- *sysret = (int) l_sysret;
}
else
- {
- collect_register_by_name (regcache, "orig_eax", sysno);
- collect_register_by_name (regcache, "eax", sysret);
- }
+ collect_register_by_name (regcache, "orig_eax", sysno);
}
static int