diff options
author | H. Peter Anvin <hpa@linux.intel.com> | 2011-11-12 03:55:49 +0400 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2011-11-18 01:35:36 +0400 |
commit | d181764ccf6207e02abb95fb3052639b947f4833 (patch) | |
tree | cd37381b20d437d5d352a07b20fd4a01d332759b /arch/x86/syscalls/syscalltbl.sh | |
parent | d5e553d6e0a4bdea43adae7373e3fa144b9a1aaa (diff) | |
download | linux-d181764ccf6207e02abb95fb3052639b947f4833.tar.xz |
x86: Machine-readable syscall tables and scripts to process them
Create a simple set of syscall tables and scripts to turn them into
both header files (unistd_*.h) and macros for generating the system
call tables.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/syscalls/syscalltbl.sh')
-rw-r--r-- | arch/x86/syscalls/syscalltbl.sh | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/x86/syscalls/syscalltbl.sh b/arch/x86/syscalls/syscalltbl.sh new file mode 100644 index 000000000000..0e7f8ec071e7 --- /dev/null +++ b/arch/x86/syscalls/syscalltbl.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +in="$1" +out="$2" + +grep '^[0-9]' "$in" | sort -n | ( + while read nr abi name entry compat; do + abi=`echo "$abi" | tr '[a-z]' '[A-Z]'` + if [ -n "$compat" ]; then + echo "__SYSCALL_${abi}($nr, $entry, $compat)" + elif [ -n "$entry" ]; then + echo "__SYSCALL_${abi}($nr, $entry, $entry)" + fi + done +) > "$out" |