1
0
mirror of https://github.com/golang/go synced 2024-11-25 03:07:56 -07:00
go/test
Russ Cox 5eb007dede runtime: work around false negative in deadlock detection
Not a complete fix for issue 3342, but fixes the trivial case.
There may still be a race in the instants before and after
a scavenger-induced garbage collection.

Intended to be "obviously safe": a call to runtime·gosched
before main.main is no different than a call to runtime.Gosched
at the beginning of main.main, and it is (or had better be)
safe to call runtime.Gosched at any point during main.

Update #3342.

R=iant
CC=golang-dev
https://golang.org/cl/5919052
2012-03-27 12:22:19 -04:00
..
bench build: re-enable some broken tests in run.bash 2012-03-08 06:23:56 +08:00
bugs cmd/gc: do not confuse unexported methods of same name 2012-03-07 01:55:17 -05:00
chan test/chan: document tests 2012-02-19 17:44:02 +11:00
dwarf test: use testlib (first 100) 2012-02-16 23:48:57 -05:00
fixedbugs runtime: work around false negative in deadlock detection 2012-03-27 12:22:19 -04:00
interface test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
ken go/test/chan1.go: fix typo 2012-02-25 08:47:04 +11:00
safe cmd/gc: suspend safemode during typecheck of inlined bodies. 2012-02-10 22:50:55 +01:00
syntax test: use testlib (final 61) 2012-02-16 23:51:04 -05:00
64bit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
235.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
alias1.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
alias.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
append.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
args.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
assign1.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
assign.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
bigalg.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
bigmap.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
blank1.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
blank.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
chancap.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
char_lit1.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
char_lit.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
closedchan.go test: use testlib (first 100) 2012-02-16 23:48:57 -05:00
closure.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
cmp6.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
cmp.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
cmplx.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
cmplxdivide1.go test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
cmplxdivide.c test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
cmplxdivide.go test: invoke go command in run.go 2012-03-07 01:54:39 -05:00
complit1.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
complit.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
compos.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
const1.go test: add a couple of cases to const1.go that crashed gccgo 2012-02-29 17:39:02 -08:00
const2.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
const3.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
const4.go cmd/gc: implement len(array) / cap(array) rule 2012-03-07 22:43:28 -05:00
const5.go cmd/gc: implement len(array) / cap(array) rule 2012-03-07 22:43:28 -05:00
const.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
convert1.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
convert3.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
convert.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
convlit1.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
convlit.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
copy.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00
crlf.go gc: implement and test \r in raw strings 2011-12-15 10:47:09 -05:00
ddd1.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
ddd2.go test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
ddd3.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
ddd.go test: enable method expression tests in ddd.go 2012-03-07 11:17:26 -08:00
decl.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
declbad.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
defer.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
deferprint.go test: add cmpout to testlib 2012-02-24 13:17:26 +11:00
deferprint.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
divide.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
empty.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
env.go os: remove Getenverror 2012-02-18 21:18:13 -08:00
eof1.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
eof.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
errchk errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
escape2.go gc: fix escape analysis + inlining + closure bug 2012-02-23 23:09:53 -05:00
escape3.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
escape4.go cmd/gc: must not inline panic, recover 2012-03-05 13:51:44 -05:00
escape.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
float_lit.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
floatcmp.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
for.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func1.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func2.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func3.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func4.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func5.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func6.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func7.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func8.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
func.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
gc1.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
gc2.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
gc.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
golden.out runtime: work around false negative in deadlock detection 2012-03-27 12:22:19 -04:00
goprint.go test: add cmpout to testlib 2012-02-24 13:17:26 +11:00
goprint.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
goto.go test: explanatory comments [c-g]* 2012-02-19 14:28:53 +11:00
helloworld.go test: add cmpout to testlib 2012-02-24 13:17:26 +11:00
helloworld.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
if.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
import1.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
import2.go test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
import3.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
import4.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
import5.go gc: disallow absolute import paths 2012-02-29 15:28:36 -05:00
import.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
index.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
indirect1.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
indirect.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
init1.go test: use testlib (fourth 100) 2012-02-16 23:50:37 -05:00
init.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
initcomma.go test/initcomma.go: restore what it's supposed to be testing 2012-02-20 07:44:24 +11:00
initialize.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
initializerr.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
int_lit.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
intcvt.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
iota.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
label1.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
label.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
linkx.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
literal.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
mallocfin.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
map1.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
map.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
method1.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
method2.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
method3.go test: commentary for [h-m]*.go 2012-02-23 18:47:26 +11:00
method4.go test: test method expressions with parameters, and with import 2012-02-03 16:38:59 -08:00
method4a.go test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
method.go cmd/gc: unnamed struct types can have methods 2012-03-07 02:27:15 -05:00
named1.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
named.go gc: return of ideal bool 2012-02-21 22:54:07 -05:00
nil.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
nilptr.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
nul1.go errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
parentype.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
peano.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
printbig.go test: add cmpout to testlib 2012-02-24 13:17:26 +11:00
printbig.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
range.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
recover1.go test: use testlib (final 61) 2012-02-16 23:51:04 -05:00
recover2.go test: use testlib (final 61) 2012-02-16 23:51:04 -05:00
recover3.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
recover.go test: add test of calling recover in a varargs function 2012-03-01 08:24:03 -08:00
rename1.go test: fix the fix of the rename tests. 2012-02-24 15:06:32 +11:00
rename.go test: fix the fix of the rename tests. 2012-02-24 15:06:32 +11:00
reorder2.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
reorder.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
run cmd/gc: if $GOROOT_FINAL is set, rewrite file names in object files 2012-03-05 16:13:33 -05:00
run.go test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
rune.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
runtime.go test/[n-r]*.go: add documentation 2012-02-24 10:30:39 +11:00
shift1.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
shift2.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
sieve.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
sigchld.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
sigchld.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
simassign.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
sinit.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
sizeof.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
solitaire.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
stack.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
string_lit.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
stringrange.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
struct0.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
switch3.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
switch.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
testlib test: use testlib in a few more cases 2012-03-22 02:14:44 +08:00
turing.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
typeswitch1.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
typeswitch2.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
typeswitch3.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
typeswitch.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
undef.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
utf.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
varerr.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
varinit.go test/[n-z]*.go: add documentation 2012-02-24 11:48:19 +11:00
zerodivide.go test: [a-c]: add introductory comments to tests 2012-02-19 13:19:43 +11:00