[go] cmd/compile: on arm64 pair a load with a load in a subsequent block

0 views
Skip to first unread message

Keith Randall (Gerrit)

unread,
4:51 PM (3 hours ago) 4:51 PM
to Keith Randall, goph...@pubsubhelper.golang.org, golang-...@googlegroups.com, Go LUCI, Keith Randall, David Chase, golang-co...@googlegroups.com

Keith Randall submitted the change with unreviewed changes

Unreviewed changes

1 is the latest approved patch-set.
The change was submitted with unreviewed changes in the following files:

```
The name of the file: src/cmd/compile/internal/ssa/pair.go
Insertions: 4, Deletions: 2.

The diff is too large to show. Please review the diff.
```

Change information

Commit message:
cmd/compile: on arm64 pair a load with a load in a subsequent block

Look into the following block(s) for a load that can be paired with
the load we're trying to pair up.

This particularly helps the generated equality functions. Instead of doing

MOVD x(R0), R2
MOVD x(R1), R3
CMP R2, R3
BNE noteq
MOVD x+8(R0), R2
MOVD x+8(R1), R3
CMP R2, R3
BNE noteq

we do

LDP x(R0), (R2, R4)
LDP x(R1), (R3, R5)
CMP R2, R3
BNE noteq
CMP R4, R5
BNE noteq

Removes 5296 bytes of code from cmd/go.
Change-Id: I6368686892ac944783c8b07ed7252126d1ef4031
Reviewed-by: David Chase <drc...@google.com>
Reviewed-by: Keith Randall <k...@google.com>
Files:
  • M src/cmd/compile/internal/ssa/pair.go
  • M test/codegen/memcombine.go
Change size: M
Delta: 2 files changed, 121 insertions(+), 0 deletions(-)
Branch: refs/heads/master
Submit Requirements:
  • requirement satisfiedCode-Review: +1 by Keith Randall, +2 by David Chase
  • requirement satisfiedTryBots-Pass: LUCI-TryBot-Result+1 by Go LUCI
Open in Gerrit
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: merged
Gerrit-Project: go
Gerrit-Branch: master
Gerrit-Change-Id: I6368686892ac944783c8b07ed7252126d1ef4031
Gerrit-Change-Number: 740741
Gerrit-PatchSet: 3
Gerrit-Owner: Keith Randall <k...@golang.org>
Gerrit-Reviewer: David Chase <drc...@google.com>
Gerrit-Reviewer: Keith Randall <k...@golang.org>
Gerrit-Reviewer: Keith Randall <k...@google.com>
open
diffy
satisfied_requirement
Reply all
Reply to author
Forward
0 new messages