]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile/internal/mips: use hardware NOP instruction as NOOP on mips platform
authorJunxian Zhu <zhujunxian@oss.cipunited.com>
Wed, 12 Jul 2023 11:07:55 +0000 (19:07 +0800)
committerJoel Sing <joel@sing.id.au>
Tue, 1 Aug 2023 14:53:45 +0000 (14:53 +0000)
This CL uses mips hardware NOP instruction as NOOP on mips platform, instead of pseudo NOP "nor $zero,$zero,$zero".

Change-Id: I336e1ba4228b71e6bfc6be66b367a4327fb3b36e
Reviewed-on: https://go-review.googlesource.com/c/go/+/509015
Reviewed-by: David Chase <drchase@google.com>
Reviewed-by: Joel Sing <joel@sing.id.au>
Run-TryBot: Joel Sing <joel@sing.id.au>
Reviewed-by: Keith Randall <khr@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
src/cmd/compile/internal/mips/ggen.go
src/cmd/compile/internal/mips64/ggen.go

index a18440e7b3c405aacb82e3efc7fd440d1978d2d7..e235ef95676f4794e529c6962425954c697a0ddb 100644 (file)
@@ -46,10 +46,6 @@ func zerorange(pp *objw.Progs, p *obj.Prog, off, cnt int64, _ *uint32) *obj.Prog
 }
 
 func ginsnop(pp *objw.Progs) *obj.Prog {
-       p := pp.Prog(mips.ANOR)
-       p.From.Type = obj.TYPE_REG
-       p.From.Reg = mips.REG_R0
-       p.To.Type = obj.TYPE_REG
-       p.To.Reg = mips.REG_R0
+       p := pp.Prog(mips.ANOOP)
        return p
 }
index 37bb871958bf4e827dc6d829c4f4853951b93351..5f3f3e64d9cc1a2bc4592d0a398987a4ccecf10b 100644 (file)
@@ -50,10 +50,6 @@ func zerorange(pp *objw.Progs, p *obj.Prog, off, cnt int64, _ *uint32) *obj.Prog
 }
 
 func ginsnop(pp *objw.Progs) *obj.Prog {
-       p := pp.Prog(mips.ANOR)
-       p.From.Type = obj.TYPE_REG
-       p.From.Reg = mips.REG_R0
-       p.To.Type = obj.TYPE_REG
-       p.To.Reg = mips.REG_R0
+       p := pp.Prog(mips.ANOOP)
        return p
 }