diff options
author | Dmitry V. Levin <ldv@altlinux.org> | 2015-11-30 00:57:14 +0000 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2015-11-30 00:57:14 +0000 |
commit | 64672a6526f041b3c35bf1d801a8f3f5457eca51 (patch) | |
tree | 506303c748a39a1336d3baedb6c29a1de227449d /linux/xtensa/get_syscall_args.c | |
parent | f51aec6abfad5dae5f3dd77365c2f8275e37437d (diff) | |
download | strace-64672a6526f041b3c35bf1d801a8f3f5457eca51.tar.gz |
cleanup: make get_syscall_args.c files more readable
Make get_syscall_args.c files more self-contained. While they are
still being included by syscall.c, the latter no longer defines
get_syscall_args function.
* linux/aarch64/get_syscall_args.c: Include "arm/get_syscall_args.c"
with get_syscall_args temporarily defined to arm_get_syscall_args.
(get_syscall_args): Define.
* linux/alpha/get_syscall_args.c (get_syscall_args): Define.
* linux/arc/get_syscall_args.c: Likewise.
* linux/arm/get_syscall_args.c: Likewise.
* linux/avr32/get_syscall_args.c: Likewise.
* linux/bfin/get_syscall_args.c: Likewise.
* linux/crisv10/get_syscall_args.c: Likewise.
* linux/hppa/get_syscall_args.c: Likewise.
* linux/i386/get_syscall_args.c: Likewise.
* linux/ia64/get_syscall_args.c: Likewise.
* linux/m68k/get_syscall_args.c: Likewise.
* linux/metag/get_syscall_args.c: Likewise.
* linux/microblaze/get_syscall_args.c: Likewise.
* linux/mips/get_syscall_args.c: Likewise.
* linux/nios2/get_syscall_args.c: Likewise.
* linux/or1k/get_syscall_args.c: Likewise.
* linux/powerpc/get_syscall_args.c: Likewise.
* linux/s390/get_syscall_args.c: Likewise.
* linux/sh/get_syscall_args.c: Likewise.
* linux/sh64/get_syscall_args.c: Likewise.
* linux/sparc/get_syscall_args.c: Likewise.
* linux/tile/get_syscall_args.c: Likewise.
* linux/x86_64/get_syscall_args.c: Likewise.
* linux/xtensa/get_syscall_args.c: Likewise.
* syscall.c (get_syscall_args): Remove.
Include "get_syscall_args.c" in file scope.
Requested-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'linux/xtensa/get_syscall_args.c')
-rw-r--r-- | linux/xtensa/get_syscall_args.c | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/linux/xtensa/get_syscall_args.c b/linux/xtensa/get_syscall_args.c index dca8788e9..a9c933a9f 100644 --- a/linux/xtensa/get_syscall_args.c +++ b/linux/xtensa/get_syscall_args.c @@ -1,7 +1,20 @@ -/* arg0: a6, arg1: a3, arg2: a4, arg3: a5, arg4: a8, arg5: a9 */ -static const int xtensaregs[MAX_ARGS] = { 6, 3, 4, 5, 8, 9 }; -unsigned int i; +/* Return -1 on error or 1 on success (never 0!). */ +static int +get_syscall_args(struct tcb *tcp) +{ + /* arg0: a6, arg1: a3, arg2: a4, arg3: a5, arg4: a8, arg5: a9 */ + static const int xtensaregs[MAX_ARGS] = { + REG_A_BASE + 6, + REG_A_BASE + 3, + REG_A_BASE + 4, + REG_A_BASE + 5, + REG_A_BASE + 8, + REG_A_BASE + 9 + }; + unsigned int i; -for (i = 0; i < tcp->s_ent->nargs; ++i) - if (upeek(tcp->pid, REG_A_BASE + xtensaregs[i], &tcp->u_arg[i]) < 0) - return -1; + for (i = 0; i < tcp->s_ent->nargs; ++i) + if (upeek(tcp->pid, xtensaregs[i], &tcp->u_arg[i]) < 0) + return -1; + return 1; +} |