164672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin#define get_syscall_args arm_get_syscall_args
264672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin#include "arm/get_syscall_args.c"
364672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin#undef get_syscall_args
464672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin
564672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin/* Return -1 on error or 1 on success (never 0!). */
664672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levinstatic int
764672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levinget_syscall_args(struct tcb *tcp)
864672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin{
9c37173f76de6163d746266f78a8485f576ddb6a8Dmitry V. Levin	if (tcp->currpers == 1)
1064672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin		return arm_get_syscall_args(tcp);
11d70d1c4aa6b9b2f4713d79f442dbf66a3f702c9bDmitry V. Levin	tcp->u_arg[0] = aarch64_regs.regs[0];
12d70d1c4aa6b9b2f4713d79f442dbf66a3f702c9bDmitry V. Levin	tcp->u_arg[1] = aarch64_regs.regs[1];
13d70d1c4aa6b9b2f4713d79f442dbf66a3f702c9bDmitry V. Levin	tcp->u_arg[2] = aarch64_regs.regs[2];
14d70d1c4aa6b9b2f4713d79f442dbf66a3f702c9bDmitry V. Levin	tcp->u_arg[3] = aarch64_regs.regs[3];
15d70d1c4aa6b9b2f4713d79f442dbf66a3f702c9bDmitry V. Levin	tcp->u_arg[4] = aarch64_regs.regs[4];
16d70d1c4aa6b9b2f4713d79f442dbf66a3f702c9bDmitry V. Levin	tcp->u_arg[5] = aarch64_regs.regs[5];
1764672a6526f041b3c35bf1d801a8f3f5457eca51Dmitry V. Levin	return 1;
18d70d1c4aa6b9b2f4713d79f442dbf66a3f702c9bDmitry V. Levin}
19