]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: remove unnecessary writes to gp.sched.g on loong64
authorGuoqi Chen <chenguoqi@loongson.cn>
Tue, 14 Mar 2023 23:35:43 +0000 (07:35 +0800)
committerGopher Robot <gobot@golang.org>
Wed, 29 Mar 2023 02:23:21 +0000 (02:23 +0000)
Same as CL 292109, A g's sched.g is set in newproc1, After that, it never changes.
Yet lots of assembly code does "g.sched.g = g" unnecessarily. Remove it to avoid
confusion about whether it ever changes.

Change-Id: I3d3b18267a80bdd9ef5487c1d1d29de4c5a2d5cc
Reviewed-on: https://go-review.googlesource.com/c/go/+/476375
Reviewed-by: Ian Lance Taylor <iant@google.com>
Auto-Submit: Wayne Zuo <wdvxdr@golangcn.org>
Reviewed-by: WANG Xuerui <git@xen0n.name>
Run-TryBot: Wayne Zuo <wdvxdr@golangcn.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
src/runtime/asm_loong64.s

index d2b15144e03b380e81038c25f9e56f4042f755af..b2aa5efea68a2de986518bf9e21e953b69709380 100644 (file)
@@ -128,7 +128,6 @@ TEXT runtime·mcall(SB), NOSPLIT|NOFRAME, $0-8
        MOVV    R3, (g_sched+gobuf_sp)(g)
        MOVV    R1, (g_sched+gobuf_pc)(g)
        MOVV    R0, (g_sched+gobuf_lr)(g)
-       MOVV    g, (g_sched+gobuf_g)(g)
 
        // Switch to m->g0 & its stack, call fn.
        MOVV    g, R19