gdb: syscalls: Add loongarch-linux.xml.in
There is no syscall.tbl for LoongArch because it uses generic syscalls,
so it can not generate loongarch-linux.xml.in automatically through the
script update-linux-from-src.sh, make use of the script update-linux.sh
to generate loongarch-linux.xml.in.
Like this:
$ git clone https://sourceware.org/git/binutils-gdb.git gdb.git
$ cd gdb.git/gdb/syscalls/
$ touch loongarch-linux.xml.in
$ ./update-linux.sh loongarch-linux.xml.in
Note that the system header file /usr/include/asm-generic/unistd.h
may be different with the latest upstream Linux kernel uapi header
file include/uapi/asm-generic/unistd.h, it is better to copy the
upstream header file into the system header file when generating
loongarch-linux.xml.in.
There exist some __NR3264_ prefixed syscall numbers, replace them
with digital numbers according to /usr/include/asm-generic/unistd.h
and sort them by syscall number manually, maybe we can modify the
script to do it automatically in the future.
<syscall name="fcntl" number="__NR3264_fcntl"/>
<syscall name="statfs" number="__NR3264_statfs"/>
<syscall name="fstatfs" number="__NR3264_fstatfs"/>
<syscall name="truncate" number="__NR3264_truncate"/>
<syscall name="ftruncate" number="__NR3264_ftruncate"/>
<syscall name="lseek" number="__NR3264_lseek"/>
<syscall name="sendfile" number="__NR3264_sendfile"/>
<syscall name="mmap" number="__NR3264_mmap"/>
<syscall name="fadvise64" number="__NR3264_fadvise64"/>
Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
Approved-By: John Baldwin <jhb@FreeBSD.org>
1 file changed