| 123456789101112131415161718192021222324252627282930313233 | # Script used in producing headers of assembly constants from C expressions.# The input to this script looks like:#	#cpp-directive ...#	NAME1#	NAME2 expression ...# The output of this script is C code to be run through gcc -S and then# massaged to extract the integer constant values of the given C expressions.# A line giving just a name implies an expression consisting of just that name.BEGIN { started = 0 }# cpp directives go straight through./^#/ { print; next }NF >= 1 && !started {  printf "void dummy(void);\n";  print "void dummy(void) {";  started = 1;}# Separator.$1 == "--" { next }NF == 1 { sub(/^.*$/, "& &"); }NF > 1 {  name = $1;  sub(/^[^ 	]+[ 	]+/, "");  printf "__asm__ (\"@@@name@@@%s@@@value@@@%%0@@@end@@@\" : : \"i\" ((long) %s));\n",    name, $0;}END { if (started) print "}" }
 |