File tree 2 files changed +37
-0
lines changed 2 files changed +37
-0
lines changed Original file line number Diff line number Diff line change
1
+ // Copyright 2022 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
+ //go:build loong64
6
+
7
+ package runtime
8
+
9
+ // Called from assembly only; declared for go vet.
10
+ func load_g ()
11
+ func save_g ()
Original file line number Diff line number Diff line change
1
+ // Copyright 2022 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 "go_asm.h"
6
+ #include "go_tls.h"
7
+ #include "funcdata.h"
8
+ #include "textflag.h"
9
+
10
+ // If !iscgo, this is a no-op.
11
+ //
12
+ // NOTE: mcall() assumes this clobbers only R30 (REGTMP).
13
+ TEXT runtime·save_g(SB),NOSPLIT|NOFRAME,$0 -0
14
+ MOVB runtime·iscgo(SB), R30
15
+ BEQ R30, nocgo
16
+
17
+ MOVV g, runtime·tls_g(SB)
18
+
19
+ nocgo:
20
+ RET
21
+
22
+ TEXT runtime·load_g(SB),NOSPLIT|NOFRAME,$0 -0
23
+ MOVV runtime·tls_g(SB), g
24
+ RET
25
+
26
+ GLOBL runtime·tls_g(SB), TLSBSS, $8
You can’t perform that action at this time.
0 commit comments