Linux 120.141.167.72.host.secureserver.net 4.18.0-553.150.1.el8_10.x86_64 #1 SMP Fri Jul 31 15:23:31 EDT 2026 x86_64
Apache
: 72.167.141.120 | : 216.73.217.14
808 Domain
7.4.33
bestseocompany
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
local /
go /
test /
codegen /
[ HOME SHELL ]
Name
Size
Permission
Action
README
5.21
KB
-rw-r--r--
addrcalc.go
324
B
-rw-r--r--
alloc.go
902
B
-rw-r--r--
arithmetic.go
15.2
KB
-rw-r--r--
atomics.go
728
B
-rw-r--r--
bitfield.go
9.64
KB
-rw-r--r--
bits.go
7.83
KB
-rw-r--r--
bmi.go
4.21
KB
-rw-r--r--
bool.go
6.73
KB
-rw-r--r--
clobberdead.go
1.31
KB
-rw-r--r--
clobberdeadreg.go
1.29
KB
-rw-r--r--
compare_and_branch.go
4.5
KB
-rw-r--r--
comparisons.go
15.24
KB
-rw-r--r--
condmove.go
6.24
KB
-rw-r--r--
constants.go
1.11
KB
-rw-r--r--
copy.go
3.14
KB
-rw-r--r--
floats.go
4.89
KB
-rw-r--r--
fuse.go
4.79
KB
-rw-r--r--
ifaces.go
621
B
-rw-r--r--
issue22703.go
5.43
KB
-rw-r--r--
issue25378.go
445
B
-rw-r--r--
issue31618.go
504
B
-rw-r--r--
issue33580.go
459
B
-rw-r--r--
issue38554.go
355
B
-rw-r--r--
issue42610.go
623
B
-rw-r--r--
issue48054.go
464
B
-rw-r--r--
issue52635.go
816
B
-rw-r--r--
issue54467.go
949
B
-rw-r--r--
issue56440.go
689
B
-rw-r--r--
issue58166.go
554
B
-rw-r--r--
issue60324.go
805
B
-rw-r--r--
issue60673.go
360
B
-rw-r--r--
issue61356.go
1.1
KB
-rw-r--r--
issue63332.go
264
B
-rw-r--r--
issue66585.go
336
B
-rw-r--r--
logic.go
1.06
KB
-rw-r--r--
mapaccess.go
9.11
KB
-rw-r--r--
maps.go
3.64
KB
-rw-r--r--
math.go
6.25
KB
-rw-r--r--
mathbits.go
19.6
KB
-rw-r--r--
memcombine.go
29.66
KB
-rw-r--r--
memops.go
12.48
KB
-rw-r--r--
memops_bigoffset.go
2.5
KB
-rw-r--r--
noextend.go
5.39
KB
-rw-r--r--
race.go
651
B
-rw-r--r--
regabi_regalloc.go
494
B
-rw-r--r--
retpoline.go
580
B
-rw-r--r--
rotate.go
5.99
KB
-rw-r--r--
select.go
373
B
-rw-r--r--
shift.go
12.72
KB
-rw-r--r--
shortcircuit.go
368
B
-rw-r--r--
slices.go
9.81
KB
-rw-r--r--
smallintiface.go
500
B
-rw-r--r--
spectre.go
734
B
-rw-r--r--
stack.go
3.36
KB
-rw-r--r--
strings.go
2.4
KB
-rw-r--r--
structs.go
923
B
-rw-r--r--
switch.go
3.6
KB
-rw-r--r--
writebarrier.go
1.5
KB
-rw-r--r--
zerosize.go
650
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : stack.go
// asmcheck // Copyright 2018 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. package codegen import "runtime" // This file contains code generation tests related to the use of the // stack. // Check that stack stores are optimized away. // 386:"TEXT\t.*, [$]0-" // amd64:"TEXT\t.*, [$]0-" // arm:"TEXT\t.*, [$]-4-" // arm64:"TEXT\t.*, [$]0-" // mips:"TEXT\t.*, [$]-4-" // ppc64x:"TEXT\t.*, [$]0-" // s390x:"TEXT\t.*, [$]0-" func StackStore() int { var x int return *(&x) } type T struct { A, B, C, D int // keep exported fields x, y, z int // reset unexported fields } // Check that large structs are cleared directly (issue #24416). // 386:"TEXT\t.*, [$]0-" // amd64:"TEXT\t.*, [$]0-" // arm:"TEXT\t.*, [$]0-" (spills return address) // arm64:"TEXT\t.*, [$]0-" // mips:"TEXT\t.*, [$]-4-" // ppc64x:"TEXT\t.*, [$]0-" // s390x:"TEXT\t.*, [$]0-" func ZeroLargeStruct(x *T) { t := T{} *x = t } // Check that structs are partially initialised directly (issue #24386). // Notes: // - 386 fails due to spilling a register // amd64:"TEXT\t.*, [$]0-" // arm:"TEXT\t.*, [$]0-" (spills return address) // arm64:"TEXT\t.*, [$]0-" // ppc64x:"TEXT\t.*, [$]0-" // s390x:"TEXT\t.*, [$]0-" // Note: that 386 currently has to spill a register. func KeepWanted(t *T) { *t = T{A: t.A, B: t.B, C: t.C, D: t.D} } // Check that small array operations avoid using the stack (issue #15925). // Notes: // - 386 fails due to spilling a register // - arm & mips fail due to softfloat calls // amd64:"TEXT\t.*, [$]0-" // arm64:"TEXT\t.*, [$]0-" // ppc64x:"TEXT\t.*, [$]0-" // s390x:"TEXT\t.*, [$]0-" func ArrayAdd64(a, b [4]float64) [4]float64 { return [4]float64{a[0] + b[0], a[1] + b[1], a[2] + b[2], a[3] + b[3]} } // Check that small array initialization avoids using the stack. // 386:"TEXT\t.*, [$]0-" // amd64:"TEXT\t.*, [$]0-" // arm:"TEXT\t.*, [$]0-" (spills return address) // arm64:"TEXT\t.*, [$]0-" // mips:"TEXT\t.*, [$]-4-" // ppc64x:"TEXT\t.*, [$]0-" // s390x:"TEXT\t.*, [$]0-" func ArrayInit(i, j int) [4]int { return [4]int{i, 0, j, 0} } // Check that assembly output has matching offset and base register // (issue #21064). func check_asmout(b [2]int) int { runtime.GC() // use some frame // amd64:`.*b\+24\(SP\)` // arm:`.*b\+4\(FP\)` return b[1] } // Check that simple functions get promoted to nosplit, even when // they might panic in various ways. See issue 31219. // amd64:"TEXT\t.*NOSPLIT.*" func MightPanic(a []int, i, j, k, s int) { _ = a[i] // panicIndex _ = a[i:j] // panicSlice _ = a[i:j:k] // also panicSlice _ = i << s // panicShift _ = i / j // panicDivide } // Put a defer in a loop, so second defer is not open-coded func Defer() { for i := 0; i < 2; i++ { defer func() {}() } // amd64:`CALL\truntime\.deferprocStack` defer func() {}() } // Check that stack slots are shared among values of the same // type, but not pointer-identical types. See issue 65783. func spillSlotReuse() { // The return values of getp1 and getp2 need to be // spilled around the calls to nopInt. Make sure that // spill slot gets reused. //arm64:`.*autotmp_2-8\(SP\)` getp1()[nopInt()] = 0 //arm64:`.*autotmp_2-8\(SP\)` getp2()[nopInt()] = 0 } //go:noinline func nopInt() int { return 0 } //go:noinline func getp1() *[4]int { return nil } //go:noinline func getp2() *[4]int { return nil }
Close