diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/templates/Makefile | 9 | ||||
-rwxr-xr-x | tests/templates/templates.sh | 50 |
2 files changed, 59 insertions, 0 deletions
diff --git a/tests/templates/Makefile b/tests/templates/Makefile new file mode 100644 index 000000000000..1880dcc04184 --- /dev/null +++ b/tests/templates/Makefile @@ -0,0 +1,9 @@ + +PROG= templates + +templates : + sh templates.sh + +clean : + rm -f *.asl *.aml *.dsl *.hex diff.log + diff --git a/tests/templates/templates.sh b/tests/templates/templates.sh new file mode 100755 index 000000000000..06c08143df42 --- /dev/null +++ b/tests/templates/templates.sh @@ -0,0 +1,50 @@ +#!/bin/bash + +rm -f *.aml *.asl *.dsl *.log + +files=`ls` + +if [ "$1" == 1 ]; then + ASL_COMPILER="../../generate/unix/bin/iasl" +else + ASL_COMPILER="iasl" +fi + +echo "Using $ASL_COMPILER" + +# +# Create and compile the terse (normal) templates just +# to ensure that they will emit and compile +# +$ASL_COMPILER -T ALL > /dev/null 2>&1 +$ASL_COMPILER *.asl > /dev/null 2>&1 + +rm -f *.aml *.asl *.dsl *.log + +# Create the templates (use verbose mode) + +$ASL_COMPILER -vt -T ALL > /dev/null 2>&1 + +# Compile the templates + +$ASL_COMPILER *.asl > /dev/null 2>&1 + +# Disassemble the compiled templates + +$ASL_COMPILER -d *.aml > /dev/null 2>&1 + +> diff.log + +# +# Compare templates to compiled/disassembled templates +# +for f in $files ; do + if [ "$f" != "$0" ] && [ "$f" != "Makefile" ]; then + sig=`echo $f | awk -F. '{print $1}'` + + # Ignore differences in the comment/header field + + diff -pu -I" \*" $sig.asl $sig.dsl >> diff.log + fi +done + |