1
0
mirror of https://github.com/golang/go synced 2024-10-01 18:18:32 -06:00
go/misc/cgo/test/testdata/issue9400/gccgo.go
Bryan C. Mills 551af5f50a misc/cgo/test: fix tests in module mode
This change preserves the ability to test misc/cgo/test in GOPATH
mode, at the cost of indirection through a 'go test' subprocess.

Updates #30228

Change-Id: I08de855e62278d30fa622b2f7478e43dd2ab0e96
Reviewed-on: https://go-review.googlesource.com/c/163418
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2019-02-24 00:35:18 +00:00

27 lines
611 B
Go

// Copyright 2014 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.
// +build gccgo
package issue9400
import (
"runtime"
"sync/atomic"
)
// The test for the gc compiler resets the stack pointer so that the
// stack gets modified. We don't have a way to do that for gccgo
// without writing more assembly code, which we haven't bothered to
// do. So this is not much of a test.
var Baton int32
func RewindAndSetgid() {
atomic.StoreInt32(&Baton, 1)
for atomic.LoadInt32(&Baton) != 0 {
runtime.Gosched()
}
}