1// Copyright 2012 The Go Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5#include "textflag.h" 6#include "funcdata.h" 7 8// makeFuncStub is the code half of the function returned by MakeFunc. 9// See the comment on the declaration of makeFuncStub in makefunc.go 10// for more details. 11// No argsize here, gc generates argsize info at call site. 12TEXT ·makeFuncStub(SB),(NOSPLIT|WRAPPER),$20 13 NO_LOCAL_POINTERS 14 MOVL DX, 0(SP) 15 LEAL argframe+0(FP), CX 16 MOVL CX, 4(SP) 17 MOVB $0, 16(SP) 18 LEAL 16(SP), AX 19 MOVL AX, 8(SP) 20 MOVL $0, 12(SP) 21 CALL ·callReflect(SB) 22 RET 23 24// methodValueCall is the code half of the function returned by makeMethodValue. 25// See the comment on the declaration of methodValueCall in makefunc.go 26// for more details. 27// No argsize here, gc generates argsize info at call site. 28TEXT ·methodValueCall(SB),(NOSPLIT|WRAPPER),$20 29 NO_LOCAL_POINTERS 30 MOVL DX, 0(SP) 31 LEAL argframe+0(FP), CX 32 MOVL CX, 4(SP) 33 MOVB $0, 16(SP) 34 LEAL 16(SP), AX 35 MOVL AX, 8(SP) 36 MOVL $0, 12(SP) 37 CALL ·callMethod(SB) 38 RET 39