...
Text file
src/reflect/asm_wasm.s
Documentation: reflect
1// Copyright 2018 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.
12TEXT ·makeFuncStub(SB),(NOSPLIT|WRAPPER),$40
13 NO_LOCAL_POINTERS
14
15 MOVD CTXT, 0(SP)
16
17 Get SP
18 Get SP
19 I64ExtendI32U
20 I64Const $argframe+0(FP)
21 I64Add
22 I64Store $8
23
24 MOVB $0, 32(SP)
25 MOVD $32(SP), 16(SP)
26 MOVD $0, 24(SP)
27
28 CALL ·callReflect(SB)
29 RET
30
31// methodValueCall is the code half of the function returned by makeMethodValue.
32// See the comment on the declaration of methodValueCall in makefunc.go
33// for more details.
34// No arg size here; runtime pulls arg map out of the func value.
35TEXT ·methodValueCall(SB),(NOSPLIT|WRAPPER),$40
36 NO_LOCAL_POINTERS
37
38 MOVD CTXT, 0(SP)
39
40 Get SP
41 Get SP
42 I64ExtendI32U
43 I64Const $argframe+0(FP)
44 I64Add
45 I64Store $8
46
47 MOVB $0, 32(SP)
48 MOVD $32(SP), 16(SP)
49 MOVD $0, 24(SP)
50
51 CALL ·callMethod(SB)
52 RET
View as plain text