type stkframe … type reflectMethodValue … // argBytes returns the argument frame size for a call to frame.fn. func (frame *stkframe) argBytes() uintptr { … } // argMapInternal is used internally by stkframe to fetch special // argument maps. // // argMap.n is always populated with the size of the argument map. // // argMap.bytedata is only populated for dynamic argument maps (used // by reflect). If the caller requires the argument map, it should use // this if non-nil, and otherwise fetch the argument map using the // current PC. // // hasReflectStackObj indicates that this frame also has a reflect // function stack object, which the caller must synthesize. func (frame *stkframe) argMapInternal() (argMap bitvector, hasReflectStackObj bool) { … } // getStackMap returns the locals and arguments live pointer maps, and // stack object list for frame. func (frame *stkframe) getStackMap(debug bool) (locals, args bitvector, objs []stackObjectRecord) { … } var methodValueCallFrameObjs … func stkobjinit() { … }