]> Cypherpunks repositories - gostls13.git/commit
cmd/internal/obj/arm64: fix BITCON constant printing error
authoreric fang <eric.fang@arm.com>
Sun, 26 Jun 2022 09:39:09 +0000 (09:39 +0000)
committerKeith Randall <khr@google.com>
Tue, 28 Jun 2022 21:01:39 +0000 (21:01 +0000)
commit160414ca6a30a210b82fb09abbd3541802a51017
tree8dd7c1bc6b6f0e727826cabc1ebc471ab5989e07
parenta30f4346674ec43bf576e6f56a9cd1c7ca482e1f
cmd/internal/obj/arm64: fix BITCON constant printing error

For some 32-bit instructions whose first operand is a constant, we
copy the lower 32 bits of the constant into the upper 32 bits in progedit,
which leads to the wrong value being printed in -S output.

The purpose of this is that we don't need to distinguish between 32-bit
and 64-bit constants when checking C_BITCON, this CL puts the modified
value in a temporary variable, so that the constant operand of the
instruction will not be modified.

Fixes #53551

Change-Id: I40ee9223b4187bff1c0a1bab7eb508fcb30325f9
Reviewed-on: https://go-review.googlesource.com/c/go/+/414374
Run-TryBot: Eric Fang <eric.fang@arm.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
src/cmd/internal/obj/arm64/asm7.go
src/cmd/internal/obj/arm64/obj7.go