Skip to content

Commit eb7c67f

Browse files
sophie-zhaoabner-chenc
authored andcommitted
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 <[email protected]> Reviewed-by: Mark Freeman <[email protected]> Reviewed-by: Meidan Li <[email protected]> Reviewed-by: Michael Knyszek <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]>
1 parent 6b8d507 commit eb7c67f

File tree

1 file changed

+1
-1
lines changed
  • src/cmd/internal/obj/loong64

1 file changed

+1
-1
lines changed

src/cmd/internal/obj/loong64/obj.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym, newprog obj.ProgAlloc) {
324324
q = c.ctxt.StartUnsafePoint(q, c.newprog)
325325

326326
q = obj.Appendp(q, newprog)
327-
q.As = mov
327+
q.As = AMOVVP
328328
q.Pos = p.Pos
329329
q.From.Type = obj.TYPE_REG
330330
q.From.Reg = REGLINK

0 commit comments

Comments
 (0)