2014-11-11 15:09:09 -07:00
|
|
|
// Copyright 2013 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.
|
|
|
|
|
|
|
|
package runtime
|
|
|
|
|
|
|
|
import "unsafe"
|
|
|
|
|
|
|
|
// adjust Gobuf as if it executed a call to fn with context ctxt
|
|
|
|
// and then did an immediate Gosave.
|
|
|
|
func gostartcall(buf *gobuf, fn, ctxt unsafe.Pointer) {
|
|
|
|
if buf.lr != 0 {
|
2014-12-27 21:58:00 -07:00
|
|
|
throw("invalid use of gostartcall")
|
2014-11-11 15:09:09 -07:00
|
|
|
}
|
|
|
|
buf.lr = buf.pc
|
|
|
|
buf.pc = uintptr(fn)
|
|
|
|
buf.ctxt = ctxt
|
|
|
|
}
|
|
|
|
|
2015-07-30 08:54:53 -06:00
|
|
|
// for testing
|
|
|
|
func usplit(x uint32) (q, r uint32)
|