Process record for aarch64-linux syscall
authorYao Qi <yao.qi@linaro.org>
Tue, 23 Feb 2016 09:21:09 +0000 (09:21 +0000)
committerYao Qi <yao.qi@linaro.org>
Tue, 23 Feb 2016 09:21:09 +0000 (09:21 +0000)
commitc955ae7389e1c5dba0aef5c88c64f647c13e01c5
treec1efb3083b2e71cd6b0e52c61f56db975ee5aeb7
parent2d8dcb8135e454c47bc8609e3f9d89b29ef0b8d2
Process record for aarch64-linux syscall

This patch updates the syscalls in sync with syscalls/aarch64-linux.xml.
Some syscalls are still not supported by gdb/linux-record.c yet.  Mark
them UNSUPPORTED_SYSCALL_MAP.

This patch fixes the following test fail,

Process record and replay target doesn't support syscall number 56^M
Process record: failed to record execution log.^M
^M
Program stopped.^M
0x00000020000e9dfc in open () from /lib/aarch64-linux-gnu/libc.so.6^M
(gdb) FAIL: gdb.reverse/fstatat-reverse.exp: continue to breakpoint: marker2

gdb:

2016-02-23  Yao Qi  <yao.qi@linaro.org>

* aarch64-linux-tdep.c (enum aarch64_syscall) <aarch64_sys_mknod>:
Remove.
<aarch64_sys_mkdir, aarch64_sys_unlink, aarch64_sys_symlink>: Remove.
<aarch64_sys_link, aarch64_sys_rename, aarch64_sys_faccess>: Remove.
<aarch64_sys_mknodat, aarch64_sys_mkdirat>: New.
<aarch64_sys_unlinkat, aarch64_sys_symlinkat>: New.
<aarch64_sys_linkat, aarch64_sys_renameat, aarch64_sys_faccessat>: New.
<aarch64_sys_open, aarch64_sys_readlink, aarch64_sys_fstatat>: Remove.
<aarch64_sys_openat, aarch64_sys_readlinkat>: New.
<aarch64_sys_newfstatat>: New.
(UNSUPPORTED_SYSCALL_MAP): New macro.
(aarch64_canonicalize_syscall): Add missing syscalls.
gdb/ChangeLog
gdb/aarch64-linux-tdep.c