Home | History | Annotate | Download | only in reflect
      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 arg size here; runtime pulls arg map out of the func value.
     12 TEXT makeFuncStub(SB),(NOSPLIT|WRAPPER),$16
     13 	NO_LOCAL_POINTERS
     14 	MOVQ	DX, 0(SP)
     15 	LEAQ	argframe+0(FP), CX
     16 	MOVQ	CX, 8(SP)
     17 	CALL	callReflect(SB)
     18 	RET
     19 
     20 // methodValueCall is the code half of the function returned by makeMethodValue.
     21 // See the comment on the declaration of methodValueCall in makefunc.go
     22 // for more details.
     23 // No arg size here; runtime pulls arg map out of the func value.
     24 TEXT methodValueCall(SB),(NOSPLIT|WRAPPER),$16
     25 	NO_LOCAL_POINTERS
     26 	MOVQ	DX, 0(SP)
     27 	LEAQ	argframe+0(FP), CX
     28 	MOVQ	CX, 8(SP)
     29 	CALL	callMethod(SB)
     30 	RET
     31