...

Text file src/reflect/asm_386.s

Documentation: 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 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

View as plain text