aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/internal/obj/arm64/doc.go
diff options
context:
space:
mode:
authorfanzha02 <fannie.zhang@arm.com>2018-01-26 08:15:49 +0000
committerCherry Zhang <cherryyz@google.com>2018-04-11 14:53:02 +0000
commit604028568e1a8c2c750ca4731c0c695516ffee65 (patch)
tree143675747544b2850d56788b70b2119965076ad5 /src/cmd/internal/obj/arm64/doc.go
parente0ac5f540bf0d5fff39ce05d60e82d97a011e935 (diff)
downloadgo-604028568e1a8c2c750ca4731c0c695516ffee65.tar.gz
go-604028568e1a8c2c750ca4731c0c695516ffee65.zip
cmd/internal/obj/arm64: add support for a series of load/store with register offset instrucitons
The patch adds support for arm64 instructions LDRB, LDRH, LDRSB, LDRSH, LDRSW, STR, STRB and STRH with register offset. Test cases are also added. Change-Id: I8d17fddd2963c0bc366e12b00bac49b93f3f0957 Reviewed-on: https://go-review.googlesource.com/91575 Reviewed-by: Cherry Zhang <cherryyz@google.com> Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src/cmd/internal/obj/arm64/doc.go')
-rw-r--r--src/cmd/internal/obj/arm64/doc.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/cmd/internal/obj/arm64/doc.go b/src/cmd/internal/obj/arm64/doc.go
index 4e7cb0177e..0a7700f8ac 100644
--- a/src/cmd/internal/obj/arm64/doc.go
+++ b/src/cmd/internal/obj/arm64/doc.go
@@ -35,10 +35,17 @@ Go Assembly for ARM64 Reference Manual
LDXPW (<Rn>), (<Rt1>, <Rt2>)
Loads two 32-bit words from memory, and writes them to Rt1 and Rt2.
- MOVD|MOVW: Load Register (register offset)
+ MOVD|MOVW|MOVH|MOVHU|MOVB|MOVBU: Load Register (register offset)
MOVD (Rn)(Rm.UXTW<<3), Rt
MOVD (Rn)(Rm.SXTX), Rt
+ MOVD (Rn)(Rm<<3), Rt
MOVD (Rn)(Rm), Rt
+ MOVB|MOVBU (Rn)(Rm.UXTW), Rt
+
+ MOVD|MOVW|MOVH|MOVB: Stote Register (register offset)
+ MOVD Rt, (Rn)(Rm.UXTW<<3)
+ MOVD Rt, (Rn)(Rm.SXTX)
+ MOVD Rt, (Rn)(Rm)
PRFM: Prefetch Memory (immediate)
PRFM imm(Rn), <prfop>