mirror of
https://github.com/golang/go.git
synced 2025-10-19 11:03:18 +00:00
cmd/internal/obj/loong64: use the MOVVP instruction to optimize prologue
The MOVVP instruction has a larger offset range, and removes 928 instructions from the go binary on loong64. file before after Δ go 1634208 1634064 -144 gofmt 323324 323240 -84 asm 567870 567778 -92 cgo 487694 487598 -96 compile 2500266 2500142 -124 cover 530590 530498 -92 link 723804 723692 -112 preprofile 240562 240474 -88 vet 819672 819576 -96 Change-Id: Ib0efcb006d3ae3f2bceec0d6e88f3794d5e99831 Reviewed-on: https://go-review.googlesource.com/c/go/+/702715 Reviewed-by: abner chenc <chenguoqi@loongson.cn> Reviewed-by: Mark Freeman <markfreeman@google.com> Reviewed-by: Meidan Li <limeidan@loongson.cn> Reviewed-by: Michael Knyszek <mknyszek@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This commit is contained in:
parent
6b8d507508
commit
eb7c67fdc9
1 changed files with 1 additions and 1 deletions
|
@ -324,7 +324,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym, newprog obj.ProgAlloc) {
|
|||
q = c.ctxt.StartUnsafePoint(q, c.newprog)
|
||||
|
||||
q = obj.Appendp(q, newprog)
|
||||
q.As = mov
|
||||
q.As = AMOVVP
|
||||
q.Pos = p.Pos
|
||||
q.From.Type = obj.TYPE_REG
|
||||
q.From.Reg = REGLINK
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue