ports/lang/go/patches/patch-src_runtime_tls_riscv64_s

29 lines
692 B
Text

Index: src/runtime/tls_riscv64.s
--- src/runtime/tls_riscv64.s.orig
+++ src/runtime/tls_riscv64.s
@@ -11,20 +11,16 @@
//
// NOTE: mcall() assumes this clobbers only X31 (REG_TMP).
TEXT runtime·save_g(SB),NOSPLIT|NOFRAME,$0-0
+#ifndef GOOS_openbsd
MOVB runtime·iscgo(SB), X31
- BEQ X0, X31, nocgo
-
- MOV runtime·tls_g(SB), X31
- ADD TP, X31 // add offset to thread pointer (X4)
- MOV g, (X31)
-
+ BEQZ X31, nocgo
+#endif
+ MOV g, runtime·tls_g(SB)
nocgo:
RET
TEXT runtime·load_g(SB),NOSPLIT|NOFRAME,$0-0
- MOV runtime·tls_g(SB), X31
- ADD TP, X31 // add offset to thread pointer (X4)
- MOV (X31), g
+ MOV runtime·tls_g(SB), g
RET
GLOBL runtime·tls_g(SB), TLSBSS, $8