1
0
mirror of https://github.com/golang/go synced 2024-11-15 03:50:33 -07:00
go/test/internal/runtime/sys/inlinegcpc.go

30 lines
617 B
Go
Raw Normal View History

// errorcheck -0 -+ -p=internal/runtime/sys -m
// Copyright 2024 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 sys
// A function that calls sys.GetCallerPC or sys.GetCallerSP
// cannot be inlined, no matter how small it is.
func GetCallerPC() uintptr
func GetCallerSP() uintptr
func pc() uintptr {
return GetCallerPC() + 1
}
func cpc() uintptr { // ERROR "can inline cpc"
return pc() + 2
}
func sp() uintptr {
return GetCallerSP() + 3
}
func csp() uintptr { // ERROR "can inline csp"
return sp() + 4
}