Commit 1f65c9c1 authored by Srdjan Petrovic's avatar Srdjan Petrovic Committed by Ian Lance Taylor

runtime: deflake TestNewOSProc0, fix _rt0_amd64_linux_lib stack alignment

This addresses iant's comments from CL 9164.

Change-Id: I7b5b282f61b11aab587402c2d302697e76666376
Reviewed-on: https://go-review.googlesource.com/9222Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
parent ed09e0e2
......@@ -21,6 +21,8 @@ func newOSProcCreated() {
newOSProcDone = true
}
// Can't be run with -race because it inserts calls into newOSProcCreated()
// that require a valid G/M.
func TestNewOSProc0(t *testing.T) {
if runtime.GOOS == "android" && runtime.GOARCH == "arm" {
// newosproc0 does not work for android/arm.
......@@ -28,10 +30,12 @@ func TestNewOSProc0(t *testing.T) {
t.Skipf("skipping on %v", runtime.GOOS)
}
runtime.NewOSProc0(0x800000, unsafe.Pointer(runtime.FuncPC(newOSProcCreated)))
check, end := time.Tick(1*time.Second), time.Tick(5*time.Second)
check := time.NewTicker(1 * time.Second)
defer check.Stop()
end := time.After(5 * time.Second)
for {
select {
case <-check:
case <-check.C:
if newOSProcDone {
return
}
......
......@@ -12,7 +12,7 @@ TEXT _rt0_amd64_linux(SB),NOSPLIT,$-8
// When building with -buildmode=c-shared, this symbol is called when the shared
// library is loaded.
TEXT _rt0_amd64_linux_lib(SB),NOSPLIT,$0x40
TEXT _rt0_amd64_linux_lib(SB),NOSPLIT,$0x48
MOVQ BX, 0x10(SP)
MOVQ BP, 0x18(SP)
MOVQ R12, 0x20(SP)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment