const (
PtrSize = 8 // pointer size
PtrAlign = 8 // pointer alignment
)
var (
F_morestack_noctxt = uintptr(rt.FuncAddr(morestack_noctxt))
)
func CallC(addr uintptr, fr Frame, maxStack uintptr) []byte
func ReservedRegs(callc bool) []Register
type Frame struct {
// contains filtered or unexported fields
}
func NewFrame(desc *FunctionLayout, locals []bool, ccall bool) Frame
func (self *Frame) ArgPtrs() *rt.StackMap
func (self *Frame) GrowStackTextSize() uint32
func (self *Frame) LocalPtrs() *rt.StackMap
func (self *Frame) Offs() uint32
func (self *Frame) Prev() uint32
func (self *Frame) Size() uint32
func (self *Frame) StackCheckTextSize() uint32
func (self *Frame) String() string
type FunctionLayout struct {
FP uint32
Args []Parameter
Rets []Parameter
}
func NewFunctionLayout(ft reflect.Type) FunctionLayout
func (self FunctionLayout) ArgSize() uint32
func (self FunctionLayout) StackMap() *rt.StackMap
func (self FunctionLayout) String() string
type Parameter struct {
InRegister bool
IsPointer bool
IsFloat floatKind
Reg Register
Mem uint32
Type reflect.Type
}
func (self Parameter) String() string