• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Return -1 on error or 1 on success (never 0!). */
2 static int
get_syscall_args(struct tcb * tcp)3 get_syscall_args(struct tcb *tcp)
4 {
5 	/* Registers used by SH5 Linux system calls for parameters */
6 	static const int syscall_regs[MAX_ARGS] = { 2, 3, 4, 5, 6, 7 };
7 	unsigned int i;
8 
9 	for (i = 0; i < tcp->s_ent->nargs; ++i)
10 		if (upeek(tcp->pid, REG_GENERAL(syscall_regs[i]),
11 			  &tcp->u_arg[i]) < 0)
12 			return -1;
13 	return 1;
14 }
15