summary refs log tree commit diff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rwxr-xr-xtest/go.sh119
1 files changed, 0 insertions, 119 deletions
diff --git a/test/go.sh b/test/go.sh
deleted file mode 100755
index d2563d4..0000000
--- a/test/go.sh
+++ /dev/null
@@ -1,119 +0,0 @@
-#!/bin/sh
-
-DIR=`cd $(dirname "$0"); pwd`
-QBE=$DIR/../src/qbe
-
-TMP=/tmp/qbe.zzzz
-
-DRV=$TMP.c
-ASM=$TMP.s
-BIN=$TMP.bin
-OUT=$TMP.out
-
-cleanup() {
-	rm -f $DRV $ASM $BIN $OUT
-}
-
-extract() {
-	WHAT="$1"
-	FILE="$2"
-
-	awk "
-		/^# >>> $WHAT/ {
-			p = 1
-			next
-		}
-		/^# <<</ {
-			if (p)
-				p = 0
-		}
-		p
-	" $FILE \
-	| sed -e 's/# //' \
-	| sed -e 's/#$//'
-}
-
-once() {
-	T="$1"
-
-	if ! test -f $T
-	then
-		echo "invalid test file $T" >&2
-		exit 1
-	fi
-
-	echo "$(basename $T)..."
-
-	if ! $QBE -o $ASM $T
-	then
-		echo "[qbe fail]"
-		return 1
-	fi
-
-	extract driver $T > $DRV
-	extract output $T > $OUT
-
-	if test -s $DRV
-	then
-		LNK="$DRV $ASM"
-	else
-		LNK="$ASM"
-	fi
-
-	if ! cc -g -o $BIN $LNK
-	then
-		echo "[cc fail]"
-		return 1
-	fi
-
-	if test -s $OUT
-	then
-		$BIN a b c | diff - $OUT
-		RET=$?
-		REASON="output"
-	else
-		$BIN a b c
-		RET=$?
-		REASON="returned $RET"
-	fi
-
-	if test $RET -ne 0
-	then
-		echo "[$REASON fail]"
-		return 1
-	fi
-
-	printf "\033[1A\033[45C[ok]\n"
-}
-
-
-#trap cleanup TERM QUIT
-
-if test -z "$1"
-then
-	echo "usage: test/go.sh {all, SSAFILE}" 2>&1
-	exit 1
-fi
-
-case $1 in
-	"all")
-		F=0
-		for T in $DIR/[!_]*.ssa
-		do
-			once $T
-			F=`expr $F + $?`
-		done
-		if test $F -ge 1
-		then
-			echo
-			echo "$F test(s) failed!"
-		else
-			echo
-			echo "All is fine!"
-		fi
-		;;
-	*)
-		once $1
-		exit $?
-		;;
-esac