1*e7e6cc50SLaurent Vivier#!/bin/sh 2*e7e6cc50SLaurent Vivier# SPDX-License-Identifier: GPL-2.0 3*e7e6cc50SLaurent Vivier 4*e7e6cc50SLaurent Vivierin="$1" 5*e7e6cc50SLaurent Vivierout="$2" 6*e7e6cc50SLaurent Viviermy_abis=`echo "($3)" | tr ',' '|'` 7*e7e6cc50SLaurent Vivierprefix="$4" 8*e7e6cc50SLaurent Vivieroffset="$5" 9*e7e6cc50SLaurent Vivier 10*e7e6cc50SLaurent Vivierfileguard=LINUX_USER_HEXAGON_`basename "$out" | sed \ 11*e7e6cc50SLaurent Vivier -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \ 12*e7e6cc50SLaurent Vivier -e 's/[^A-Z0-9_]/_/g' -e 's/__/_/g'` 13*e7e6cc50SLaurent Viviergrep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | ( 14*e7e6cc50SLaurent Vivier echo "#ifndef ${fileguard}" 15*e7e6cc50SLaurent Vivier echo "#define ${fileguard} 1" 16*e7e6cc50SLaurent Vivier echo "" 17*e7e6cc50SLaurent Vivier 18*e7e6cc50SLaurent Vivier while read nr abi name entry compat ; do 19*e7e6cc50SLaurent Vivier if [ -z "$offset" ]; then 20*e7e6cc50SLaurent Vivier echo "#define TARGET_NR_${prefix}${name} $nr" 21*e7e6cc50SLaurent Vivier else 22*e7e6cc50SLaurent Vivier echo "#define TARGET_NR_${prefix}${name} ($offset + $nr)" 23*e7e6cc50SLaurent Vivier fi 24*e7e6cc50SLaurent Vivier done 25*e7e6cc50SLaurent Vivier 26*e7e6cc50SLaurent Vivier echo "" 27*e7e6cc50SLaurent Vivier echo "#endif /* ${fileguard} */" 28*e7e6cc50SLaurent Vivier) > "$out" 29