OXIESEC PANEL
- Current Dir:
/
/
opt
/
golang
/
1.22.0
/
src
/
reflect
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
馃搧
..
-
02/02/2024 06:09:55 PM
rwxr-xr-x
馃搫
abi.go
15.02 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
abi_test.go
26.39 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
all_test.go
214.57 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
arena.go
570 bytes
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_386.s
1.07 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_amd64.s
2.76 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_arm.s
1.13 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_arm64.s
2.77 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_loong64.s
2.87 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_mips64x.s
1.16 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_mipsx.s
1.16 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_ppc64x.s
3.31 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_riscv64.s
2.58 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_s390x.s
1.1 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
asm_wasm.s
1.15 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
benchmark_test.go
8.82 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
deepequal.go
7.42 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
example_test.go
4.53 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
export_test.go
3.73 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
float32reg_generic.go
681 bytes
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
float32reg_ppc64x.s
838 bytes
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
float32reg_riscv64.s
794 bytes
02/02/2024 06:09:55 PM
rw-r--r--
馃搧
internal
-
02/02/2024 06:09:55 PM
rwxr-xr-x
馃搫
makefunc.go
5.91 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
nih_test.go
1004 bytes
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
set_test.go
5.71 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
stubs_ppc64x.go
292 bytes
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
stubs_riscv64.go
263 bytes
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
swapper.go
2 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
tostring_test.go
2.14 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
type.go
80.47 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
type_test.go
1.26 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
value.go
118.95 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
visiblefields.go
2.97 KB
02/02/2024 06:09:55 PM
rw-r--r--
馃搫
visiblefields_test.go
5.27 KB
02/02/2024 06:09:55 PM
rw-r--r--
Editing: asm_riscv64.s
Close
// Copyright 2019 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. #include "textflag.h" #include "funcdata.h" // The frames of each of the two functions below contain two locals, at offsets // that are known to the runtime. // // The first local is a bool called retValid with a whole pointer-word reserved // for it on the stack. The purpose of this word is so that the runtime knows // whether the stack-allocated return space contains valid values for stack // scanning. // // The second local is an abi.RegArgs value whose offset is also known to the // runtime, so that a stack map for it can be constructed, since it contains // pointers visible to the GC. #define LOCAL_RETVALID 40 #define LOCAL_REGARGS 48 // The frame size of the functions below is // 32 (args of callReflect/callMethod) + (8 bool with padding) + 392 (abi.RegArgs) = 432. // makeFuncStub is the code half of the function returned by MakeFunc. // See the comment on the declaration of makeFuncStub in makefunc.go // for more details. // No arg size here, runtime pulls arg map out of the func value. TEXT 路makeFuncStub(SB),(NOSPLIT|WRAPPER),$432 NO_LOCAL_POINTERS ADD $LOCAL_REGARGS, SP, X25 // spillArgs using X25 CALL runtime路spillArgs(SB) MOV CTXT, 32(SP) // save CTXT > args of moveMakeFuncArgPtrs < LOCAL_REGARGS MOV CTXT, 8(SP) MOV X25, 16(SP) CALL 路moveMakeFuncArgPtrs(SB) MOV 32(SP), CTXT // restore CTXT MOV CTXT, 8(SP) MOV $argframe+0(FP), T0 MOV T0, 16(SP) MOV ZERO, LOCAL_RETVALID(SP) ADD $LOCAL_RETVALID, SP, T1 MOV T1, 24(SP) ADD $LOCAL_REGARGS, SP, T1 MOV T1, 32(SP) CALL 路callReflect(SB) ADD $LOCAL_REGARGS, SP, X25 // unspillArgs using X25 CALL runtime路unspillArgs(SB) RET // methodValueCall is the code half of the function returned by makeMethodValue. // See the comment on the declaration of methodValueCall in makefunc.go // for more details. // No arg size here; runtime pulls arg map out of the func value. TEXT 路methodValueCall(SB),(NOSPLIT|WRAPPER),$432 NO_LOCAL_POINTERS ADD $LOCAL_REGARGS, SP, X25 // spillArgs using X25 CALL runtime路spillArgs(SB) MOV CTXT, 32(SP) // save CTXT MOV CTXT, 8(SP) MOV X25, 16(SP) CALL 路moveMakeFuncArgPtrs(SB) MOV 32(SP), CTXT // restore CTXT MOV CTXT, 8(SP) MOV $argframe+0(FP), T0 MOV T0, 16(SP) MOV ZERO, LOCAL_RETVALID(SP) ADD $LOCAL_RETVALID, SP, T1 MOV T1, 24(SP) ADD $LOCAL_REGARGS, SP, T1 MOV T1, 32(SP) // frame size to 32+SP as callreflect args CALL 路callMethod(SB) ADD $LOCAL_REGARGS, SP, X25 // unspillArgs using X25 CALL runtime路unspillArgs(SB) RET