mksyscalltbl 636 B

1234567891011121314151617181920212223242526272829303132
  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. SYSCALL_TBL=$1
  10. if ! test -r $SYSCALL_TBL; then
  11. echo "Could not read input file" >&2
  12. exit 1
  13. fi
  14. create_table()
  15. {
  16. local max_nr nr abi sc discard
  17. echo 'static const char *syscalltbl_s390_64[] = {'
  18. while read nr abi sc discard; do
  19. printf '\t[%d] = "%s",\n' $nr $sc
  20. max_nr=$nr
  21. done
  22. echo '};'
  23. echo "#define SYSCALLTBL_S390_64_MAX_ID $max_nr"
  24. }
  25. grep -E "^[[:digit:]]+[[:space:]]+(common|64)" $SYSCALL_TBL \
  26. |sort -k1 -n \
  27. |create_table