Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[sfrench/cifs-2.6.git] / tools / perf / arch / s390 / entry / syscalls / mksyscalltbl
1 #!/bin/sh
2 # SPDX-License-Identifier: GPL-2.0
3 #
4 # Generate system call table for perf
5 #
6 # Copyright IBM Corp. 2017, 2018
7 # Author(s):  Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
8 #
9
10 SYSCALL_TBL=$1
11
12 if ! test -r $SYSCALL_TBL; then
13         echo "Could not read input file" >&2
14         exit 1
15 fi
16
17 create_table()
18 {
19         local max_nr nr abi sc discard
20
21         echo 'static const char *syscalltbl_s390_64[] = {'
22         while read nr abi sc discard; do
23                 printf '\t[%d] = "%s",\n' $nr $sc
24                 max_nr=$nr
25         done
26         echo '};'
27         echo "#define SYSCALLTBL_S390_64_MAX_ID $max_nr"
28 }
29
30 grep -E "^[[:digit:]]+[[:space:]]+(common|64)" $SYSCALL_TBL     \
31         |sort -k1 -n                                    \
32         |create_table