1*4882a593Smuzhiyun#!/bin/sh 2*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 3*4882a593Smuzhiyun 4*4882a593Smuzhiyunin="$1" 5*4882a593Smuzhiyunout="$2" 6*4882a593Smuzhiyunmy_abis=`echo "($3)" | tr ',' '|'` 7*4882a593Smuzhiyunmy_abi="$4" 8*4882a593Smuzhiyunoffset="$5" 9*4882a593Smuzhiyun 10*4882a593Smuzhiyunemit() { 11*4882a593Smuzhiyun t_nxt="$1" 12*4882a593Smuzhiyun t_nr="$2" 13*4882a593Smuzhiyun t_entry="$3" 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun while [ $t_nxt -lt $t_nr ]; do 16*4882a593Smuzhiyun printf "__SYSCALL(%s, sys_nis_syscall, )\n" "${t_nxt}" 17*4882a593Smuzhiyun t_nxt=$((t_nxt+1)) 18*4882a593Smuzhiyun done 19*4882a593Smuzhiyun printf "__SYSCALL(%s, %s, )\n" "${t_nxt}" "${t_entry}" 20*4882a593Smuzhiyun} 21*4882a593Smuzhiyun 22*4882a593Smuzhiyungrep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | ( 23*4882a593Smuzhiyun nxt=0 24*4882a593Smuzhiyun if [ -z "$offset" ]; then 25*4882a593Smuzhiyun offset=0 26*4882a593Smuzhiyun fi 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun while read nr abi name entry compat ; do 29*4882a593Smuzhiyun if [ "$my_abi" = "c32" ] && [ ! -z "$compat" ]; then 30*4882a593Smuzhiyun emit $((nxt+offset)) $((nr+offset)) $compat 31*4882a593Smuzhiyun else 32*4882a593Smuzhiyun emit $((nxt+offset)) $((nr+offset)) $entry 33*4882a593Smuzhiyun fi 34*4882a593Smuzhiyun nxt=$((nr+1)) 35*4882a593Smuzhiyun done 36*4882a593Smuzhiyun) > "$out" 37