aboutsummaryrefslogtreecommitdiff
path: root/src/os/exec
diff options
context:
space:
mode:
authorruinan <ruinan.sun@arm.com>2022-08-18 01:31:57 +0000
committerGopher Robot <gobot@golang.org>2023-02-28 03:16:44 +0000
commit4d180f71dca041a39b50b9dec8a0ebec5cc02b90 (patch)
treede718da37f917630d4dab3620a23fba111fbee52 /src/os/exec
parentdd16258f48bc9e328ef2086a49da0432fe46f413 (diff)
downloadgo-4d180f71dca041a39b50b9dec8a0ebec5cc02b90.tar.xz
cmd/compile: omit redundant sign/unsign extension on arm64
On Arm64, all 32-bit instructions will ignore the upper 32 bits and clear them to zero for the result. No need to do an unsign extend before a 32 bit op. This CL removes the redundant unsign extension only for the existing 32-bit opcodes, and also omits the sign extension when the upper bit of the result can be predicted. Fixes #42162 Change-Id: I61e6670bfb8982572430e67a4fa61134a3ea240a CustomizedGitHooks: yes Reviewed-on: https://go-review.googlesource.com/c/go/+/427454 Reviewed-by: Keith Randall <khr@google.com> Auto-Submit: Eric Fang <eric.fang@arm.com> Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: Eric Fang <eric.fang@arm.com> Reviewed-by: Cherry Mui <cherryyz@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
Diffstat (limited to 'src/os/exec')
0 files changed, 0 insertions, 0 deletions