Go patch committed: New lock/note implementation
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Thu Dec 1 16:48:00 GMT 2011
Ian Lance Taylor <iant@google.com> writes:
>> ... and also Solaris 8 and 9 bootstrap which lack sem_timedwait:
>>
>> /vol/gcc/src/hg/trunk/local/libgo/runtime/thread-sema.c: In function 'runtime_semasleep':
>> /vol/gcc/src/hg/trunk/local/libgo/runtime/thread-sema.c:42:7: error: implicit declaration of function 'sem_timedwait' [-Werror=implicit-function-declaration]
>
> This one was somewhat trickier, but I think this patch will do the job.
> This uses pthread_cond_timedwait instead of sem_timedwait (I hope that
> Solaris 8 and 9 have pthread_cond_timedwait). Bootstrapped and ran Go
They do, as does IRIX.
> testsuite on x86_64-unknown-linux-gnu. Committed to mainline.
Together with the sigignore -> sig_ignore change, I'm back to bootstrap
land again,thanks. Unfortunately, I'm now (as of r181837) seeing
considerable testsuite regressions on go and libgo test results:
* many 64-bit go execution failures on i386-pc-solaris2.1[01]:
Running target unix/-m64
FAIL: go.go-torture/execute/go-1.go execution, -O0
FAIL: go.go-torture/execute/go-1.go execution, -O1
FAIL: go.go-torture/execute/go-1.go execution, -O2
FAIL: go.go-torture/execute/go-1.go execution, -O2 -fomit-frame-pointer -finline-functions
FAIL: go.go-torture/execute/go-1.go execution, -O2 -fomit-frame-pointer -finline-functions -funroll-loops
FAIL: go.go-torture/execute/go-1.go execution, -O2 -fbounds-check
FAIL: go.go-torture/execute/go-1.go execution, -O3 -g
FAIL: go.go-torture/execute/go-1.go execution, -Os
FAIL: go.go-torture/execute/go-2.go execution, -O0
FAIL: go.go-torture/execute/go-2.go execution, -O1
FAIL: go.go-torture/execute/go-2.go execution, -O2
FAIL: go.go-torture/execute/go-2.go execution, -O2 -fomit-frame-pointer -finline-functions
FAIL: go.go-torture/execute/go-2.go execution, -O2 -fomit-frame-pointer -finline-functions -funroll-loops
FAIL: go.go-torture/execute/go-2.go execution, -O2 -fbounds-check
FAIL: go.go-torture/execute/go-2.go execution, -O3 -g
FAIL: go.go-torture/execute/go-2.go execution, -Os
FAIL: go.go-torture/execute/go-3.go execution, -O0
FAIL: go.go-torture/execute/go-3.go execution, -O1
FAIL: go.go-torture/execute/go-3.go execution, -O2
FAIL: go.go-torture/execute/go-3.go execution, -O2 -fomit-frame-pointer -finline-functions
FAIL: go.go-torture/execute/go-3.go execution, -O2 -fomit-frame-pointer -finline-functions -funroll-loops
FAIL: go.go-torture/execute/go-3.go execution, -O2 -fbounds-check
FAIL: go.go-torture/execute/go-3.go execution, -O3 -g
FAIL: go.go-torture/execute/go-3.go execution, -Os
FAIL: go.go-torture/execute/select-1.go execution, -O0
FAIL: go.go-torture/execute/select-1.go execution, -O1
FAIL: go.go-torture/execute/select-1.go execution, -O2
FAIL: go.go-torture/execute/select-1.go execution, -O2 -fomit-frame-pointer -finline-functions
FAIL: go.go-torture/execute/select-1.go execution, -O2 -fomit-frame-pointer -finline-functions -funroll-loops
FAIL: go.go-torture/execute/select-1.go execution, -O2 -fbounds-check
FAIL: go.go-torture/execute/select-1.go execution, -O3 -g
FAIL: go.go-torture/execute/select-1.go execution, -Os
FAIL: go.test/test/235.go execution, -O2 -g
FAIL: go.test/test/bigalg.go execution, -O2 -g
FAIL: go.test/test/chan/doubleselect.go execution, -O2 -g
FAIL: go.test/test/chan/fifo.go execution, -O2 -g
FAIL: go.test/test/chan/goroutines.go execution, -O2 -g
FAIL: go.test/test/chan/nonblock.go execution, -O2 -g
FAIL: go.test/test/chan/powser1.go execution, -O2 -g
FAIL: go.test/test/chan/powser2.go execution, -O2 -g
FAIL: go.test/test/chan/select2.go execution, -O2 -g
FAIL: go.test/test/chan/select3.go execution, -O2 -g
FAIL: go.test/test/chan/select6.go execution, -O2 -g
FAIL: go.test/test/chan/sieve1.go execution, -O2 -g
FAIL: go.test/test/chan/sieve2.go execution, -O2 -g
FAIL: go.test/test/closure.go execution, -O2 -g
FAIL: go.test/test/escape.go execution, -O2 -g
FAIL: go.test/test/fixedbugs/bug067.go execution, -O2 -g
FAIL: go.test/test/fixedbugs/bug130.go execution, -O2 -g
FAIL: go.test/test/fixedbugs/bug147.go execution, -O2 -g
FAIL: go.test/test/fixedbugs/bug243.go execution, -O2 -g
FAIL: go.test/test/func5.go execution, -O2 -g
FAIL: go.test/test/goprint.go execution, -O2 -g
FAIL: go.test/test/ken/chan.go execution, -O2 -g
FAIL: go.test/test/ken/chan1.go execution, -O2 -g
FAIL: go.test/test/ken/cplx5.go execution, -O2 -g
FAIL: go.test/test/mallocfin.go execution, -O2 -g
FAIL: go.test/test/nil.go execution, -O2 -g
FAIL: go.test/test/range.go execution, -O2 -g
FAIL: go.test/test/stack.go execution, -O2 -g
* All 64-bit libgo tests fail on the same target:
FAIL: asn1
/vol/gcc/src/hg/trunk/local/libgo/testsuite/gotest[422]: gotest-timeout: cannot create [No such file or directory]
checkId: 65 should be 1
checkId: 66 should be 1
I've not yet investigated what's going on here.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
More information about the Gcc-patches
mailing list