11b700c99SArnaldo Carvalho de Melo#!/bin/sh
2b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
31b700c99SArnaldo Carvalho de Melo
41b700c99SArnaldo Carvalho de Meloin="$1"
51b700c99SArnaldo Carvalho de Meloarch="$2"
61b700c99SArnaldo Carvalho de Melo
71b700c99SArnaldo Carvalho de Melosyscall_macro() {
81b700c99SArnaldo Carvalho de Melo    nr="$1"
91b700c99SArnaldo Carvalho de Melo    name="$2"
101b700c99SArnaldo Carvalho de Melo
111b700c99SArnaldo Carvalho de Melo    echo "	[$nr] = \"$name\","
121b700c99SArnaldo Carvalho de Melo}
131b700c99SArnaldo Carvalho de Melo
141b700c99SArnaldo Carvalho de Meloemit() {
151b700c99SArnaldo Carvalho de Melo    nr="$1"
161b700c99SArnaldo Carvalho de Melo    entry="$2"
171b700c99SArnaldo Carvalho de Melo
181b700c99SArnaldo Carvalho de Melo    syscall_macro "$nr" "$entry"
191b700c99SArnaldo Carvalho de Melo}
201b700c99SArnaldo Carvalho de Melo
2149f3806dSTiezhu Yangecho "static const char *const syscalltbl_${arch}[] = {"
221b700c99SArnaldo Carvalho de Melo
231b700c99SArnaldo Carvalho de Melosorted_table=$(mktemp /tmp/syscalltbl.XXXXXX)
241b700c99SArnaldo Carvalho de Melogrep '^[0-9]' "$in" | sort -n > $sorted_table
251b700c99SArnaldo Carvalho de Melo
261b700c99SArnaldo Carvalho de Melomax_nr=0
27*84caba70SAthira Rajeevwhile read nr _abi name entry _compat; do
281b700c99SArnaldo Carvalho de Melo    if [ $nr -ge 512 ] ; then # discard compat sycalls
291b700c99SArnaldo Carvalho de Melo        break
301b700c99SArnaldo Carvalho de Melo    fi
311b700c99SArnaldo Carvalho de Melo
321b700c99SArnaldo Carvalho de Melo    emit "$nr" "$name"
331b700c99SArnaldo Carvalho de Melo    max_nr=$nr
341b700c99SArnaldo Carvalho de Melodone < $sorted_table
351b700c99SArnaldo Carvalho de Melo
361b700c99SArnaldo Carvalho de Melorm -f $sorted_table
371b700c99SArnaldo Carvalho de Melo
381b700c99SArnaldo Carvalho de Meloecho "};"
391b700c99SArnaldo Carvalho de Melo
401b700c99SArnaldo Carvalho de Meloecho "#define SYSCALLTBL_${arch}_MAX_ID ${max_nr}"
41