1 /*
2 * Copyright (c) 2015-2021 The strace developers.
3 * All rights reserved.
4 *
5 * SPDX-License-Identifier: LGPL-2.1-or-later
6 */
7
8 /* Return -1 on error or 1 on success (never 0!). */
9 static int
10 arch_get_syscall_args(struct tcb *tcp)
11 {
12 static const int argreg[MAX_ARGS] = {
13 PT_R0, PT_R1, PT_R2, PT_R3, PT_R4, PT_R5
14 };
15
16 for (unsigned int i = 0; i < n_args(tcp); ++i)
17 if (upeek(tcp, argreg[i], &tcp->u_arg[i]) < 0)
18 return -1;
19 return 1;
20 }