]> Cypherpunks repositories - gostls13.git/commitdiff
expanded arm regression testing. will go away once 5g is compliant
authorKai Backman <kaib@golang.org>
Sat, 19 Sep 2009 02:09:29 +0000 (19:09 -0700)
committerKai Backman <kaib@golang.org>
Sat, 19 Sep 2009 02:09:29 +0000 (19:09 -0700)
R=rsc
APPROVED=rsc
DELTA=300  (297 added, 0 deleted, 3 changed)
OCL=34813
CL=34821

src/all-arm.bash
test/arm-pass.txt [new file with mode: 0644]
test/run-arm [new file with mode: 0755]

index fc194dcb8c5ec47d185d90765595e41f58884f08..81cba295e93160074c2830653d33cadd1b40fa89 100755 (executable)
@@ -8,6 +8,15 @@ bash make-arm.bash
 
 # TODO(kaib): add in proper tests
 #bash run.bash
-5g -o hello.5 /home/kaib/work/go/hello.go
-5l -o 5.out hello.5
-qemu-arm -cpu cortex-a8 5.out|grep -q "Hello World"
+
+set -e
+
+xcd() {
+       echo
+       echo --- cd $1
+       builtin cd $1
+}
+
+(xcd ../test
+./run-arm
+) || exit $?
diff --git a/test/arm-pass.txt b/test/arm-pass.txt
new file mode 100644 (file)
index 0000000..a8de6c3
--- /dev/null
@@ -0,0 +1,207 @@
+ 64bit.go
+ assign.go
+ blank1.go
+ bugs/bug136.go
+ bugs/bug169.go
+ bugs/bug190.go
+ bugs/bug193.go
+ bugs/bug196.go
+ bugs/bug198.go
+ chan/perm.go
+ cmp2.go
+ cmp3.go
+ cmp4.go
+ cmp5.go
+ const1.go
+ const2.go
+ convert3.go
+ convlit.go
+ convlit1.go
+ declbad.go
+ empty.go
+ escape1.go
+ fixedbugs/bug000.go
+ fixedbugs/bug001.go
+ fixedbugs/bug002.go
+ fixedbugs/bug003.go
+ fixedbugs/bug004.go
+ fixedbugs/bug005.go
+ fixedbugs/bug007.go
+ fixedbugs/bug008.go
+ fixedbugs/bug009.go
+ fixedbugs/bug013.go
+ fixedbugs/bug014.go
+ fixedbugs/bug015.go
+ fixedbugs/bug016.go
+ fixedbugs/bug017.go
+ fixedbugs/bug020.go
+ fixedbugs/bug021.go
+ fixedbugs/bug022.go
+ fixedbugs/bug023.go
+ fixedbugs/bug024.go
+ fixedbugs/bug026.go
+ fixedbugs/bug030.go
+ fixedbugs/bug031.go
+ fixedbugs/bug035.go
+ fixedbugs/bug036.go
+ fixedbugs/bug037.go
+ fixedbugs/bug038.go
+ fixedbugs/bug039.go
+ fixedbugs/bug040.go
+ fixedbugs/bug046.go
+ fixedbugs/bug049.go
+ fixedbugs/bug050.go
+ fixedbugs/bug051.go
+ fixedbugs/bug053.go
+ fixedbugs/bug057.go
+ fixedbugs/bug058.go
+ fixedbugs/bug061.go
+ fixedbugs/bug062.go
+ fixedbugs/bug063.go
+ fixedbugs/bug064.go
+ fixedbugs/bug065.go
+ fixedbugs/bug066.go
+ fixedbugs/bug068.go
+ fixedbugs/bug070.go
+ fixedbugs/bug071.go
+ fixedbugs/bug072.go
+ fixedbugs/bug073.go
+ fixedbugs/bug074.go
+ fixedbugs/bug076.go
+ fixedbugs/bug077.go
+ fixedbugs/bug078.go
+ fixedbugs/bug080.go
+ fixedbugs/bug081.go
+ fixedbugs/bug082.go
+ fixedbugs/bug083.go
+ fixedbugs/bug085.go
+ fixedbugs/bug086.go
+ fixedbugs/bug087.go
+ fixedbugs/bug088.go
+ fixedbugs/bug089.go
+ fixedbugs/bug090.go
+ fixedbugs/bug091.go
+ fixedbugs/bug093.go
+ fixedbugs/bug094.go
+ fixedbugs/bug096.go
+ fixedbugs/bug097.go
+ fixedbugs/bug098.go
+ fixedbugs/bug099.go
+ fixedbugs/bug102.go
+ fixedbugs/bug103.go
+ fixedbugs/bug104.go
+ fixedbugs/bug106.go
+ fixedbugs/bug107.go
+ fixedbugs/bug108.go
+ fixedbugs/bug109.go
+ fixedbugs/bug110.go
+ fixedbugs/bug111.go
+ fixedbugs/bug112.go
+ fixedbugs/bug113.go
+ fixedbugs/bug114.go
+ fixedbugs/bug115.go
+ fixedbugs/bug116.go
+ fixedbugs/bug118.go
+ fixedbugs/bug119.go
+ fixedbugs/bug120.go
+ fixedbugs/bug121.go
+ fixedbugs/bug122.go
+ fixedbugs/bug123.go
+ fixedbugs/bug125.go
+ fixedbugs/bug126.go
+ fixedbugs/bug127.go
+ fixedbugs/bug128.go
+ fixedbugs/bug129.go
+ fixedbugs/bug130.go
+ fixedbugs/bug131.go
+ fixedbugs/bug132.go
+ fixedbugs/bug133.go
+ fixedbugs/bug135.go
+ fixedbugs/bug137.go
+ fixedbugs/bug139.go
+ fixedbugs/bug140.go
+ fixedbugs/bug141.go
+ fixedbugs/bug142.go
+ fixedbugs/bug143.go
+ fixedbugs/bug144.go
+ fixedbugs/bug145.go
+ fixedbugs/bug146.go
+ fixedbugs/bug147.go
+ fixedbugs/bug148.go
+ fixedbugs/bug149.go
+ fixedbugs/bug150.go
+ fixedbugs/bug151.go
+ fixedbugs/bug153.go
+ fixedbugs/bug154.go
+ fixedbugs/bug155.go
+ fixedbugs/bug156.go
+ fixedbugs/bug157.go
+ fixedbugs/bug158.go
+ fixedbugs/bug159.go
+ fixedbugs/bug161.go
+ fixedbugs/bug163.go
+ fixedbugs/bug164.go
+ fixedbugs/bug165.go
+ fixedbugs/bug166.go
+ fixedbugs/bug167.go
+ fixedbugs/bug168.go
+ fixedbugs/bug170.go
+ fixedbugs/bug171.go
+ fixedbugs/bug172.go
+ fixedbugs/bug173.go
+ fixedbugs/bug174.go
+ fixedbugs/bug175.go
+ fixedbugs/bug176.go
+ fixedbugs/bug178.go
+ fixedbugs/bug179.go
+ fixedbugs/bug181.go
+ fixedbugs/bug182.go
+ fixedbugs/bug183.go
+ fixedbugs/bug185.go
+ fixedbugs/bug186.go
+ fixedbugs/bug188.go
+ fixedbugs/bug189.go
+ fixedbugs/bug191.go
+ fixedbugs/bug192.go
+ fixedbugs/bug194.go
+ fixedbugs/bug195.go
+ fixedbugs/bug197.go
+ fixedbugs/bug200.go
+ fixedbugs/bug201.go
+ fixedbugs/bug202.go
+ fixedbugs/bug203.go
+ fixedbugs/bug205.go
+ fixedbugs/bug206.go
+ func1.go
+ func2.go
+ func3.go
+ func4.go
+ gc1.go
+ helloworld.go
+ import1.go
+ indirect.go
+ indirect1.go
+ initializerr.go
+ interface/convert1.go
+ interface/convert2.go
+ interface/explicit.go
+ interface/fail.go
+ interface/pointer.go
+ interface/receiver1.go
+ interface/recursive.go
+ interface/struct.go
+ iota.go
+ ken/complit.go
+ ken/label.go
+ ken/mfunc.go
+ ken/simpprint.go
+ ken/simpswitch.go
+ ken/simpvar.go
+ method1.go
+ method2.go
+ method3.go
+ parentype.go
+ printbig.go
+ rename1.go
+ simassign.go
+ varinit.go
diff --git a/test/run-arm b/test/run-arm
new file mode 100755 (executable)
index 0000000..f34271d
--- /dev/null
@@ -0,0 +1,81 @@
+#!/bin/sh
+# Copyright 2009 The Go Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style
+# license that can be found in the LICENSE file.
+
+export E=""
+case X"$GOARCH" in
+Xamd64)
+       export A=6
+       ;;
+X386)
+       export A=8
+       ;;
+Xarm)
+       export A=5
+       export E="qemu-arm -cpu cortex-a8 "
+       ;;
+*)
+       echo 1>&2 run: unsupported '$GOARCH'
+       exit 1
+esac
+
+export G=${A}g
+export L=${A}l
+export GOTRACEBACK=0
+
+failed=0
+
+PATH=/bin:/usr/bin:/usr/local/bin:${GOBIN:-$HOME/bin}:`pwd`
+
+RUNFILE=/tmp/gorun-$$-$USER
+TMP1FILE=/tmp/gotest1-$$-$USER
+TMP2FILE=/tmp/gotest2-$$-$USER
+
+# don't run the machine out of memory: limit individual processes to 4GB.
+# on thresher, 3GB suffices to run the tests; with 2GB, peano fails.
+ulimit -v 4000000
+
+
+for i in $(cat arm-pass.txt)
+do
+       export F=$(basename $i .go)
+       dir=$(dirname $i)
+       export D=$dir
+       sed '/^\/\//!q; s|//||g; s|./\$A.out|$E &|' $i >$RUNFILE
+       if ! sh $RUNFILE >$TMP1FILE 2>$TMP2FILE
+       then
+               echo
+               echo "===========" $i
+               cat $TMP1FILE
+               cat $TMP2FILE
+               echo >&2 fail: $i
+       elif test -s $TMP1FILE || test -s $TMP2FILE
+       then
+               echo
+               echo "===========" $i
+               cat $TMP1FILE
+               cat $TMP2FILE
+       elif [ $dir = "bugs" ]
+       then
+               echo $i succeeded with no output.
+       fi
+done | # clean up some stack noise
+       egrep -v '^(r[0-9a-z]+|[cfg]s)  +0x'  |
+       sed '/tmp.*Bus error/s/.*Bus/Bus/; /tmp.*Trace.BPT/s/.*Trace/Trace/
+               s!'$RUNFILE'!$RUNFILE!g
+               s/ PC=0x[0-9a-f]*/ PC=xxx/
+               s/^pc: 0x[0-9a-f]*/pc: xxx/
+               /^Trace\/breakpoint trap/d
+               /^Trace\/BPT trap/d
+               /RUNFILE/ s/line 1: *[0-9]*/line 1: PID/
+               /^\$RUNFILE: line 1: PID Trace\/breakpoint trap/d
+               /^qemu: uncaught target signal 11 (Segmentation fault) - exiting/d' > run.out
+
+case $failed in
+1)
+       echo FAIL
+esac
+rm  -f $RUNFILE $TMP1FILE $TMP2FILE *.$A $A.out
+
+exit $failed