]> Cypherpunks repositories - gostls13.git/commit
cmd/internal/obj/arm64: add CONSTRAINED UNPREDICTABLE behavior check for some load...
authorfanzha02 <fannie.zhang@arm.com>
Fri, 15 Jun 2018 10:20:00 +0000 (10:20 +0000)
committerCherry Zhang <cherryyz@google.com>
Thu, 6 Sep 2018 19:42:03 +0000 (19:42 +0000)
commit7ab4b5586d37513bfa48f769773007ff8e9b732d
tree4a26ef2d8e08d5e85b5602c32e89513845794f6e
parent9c2be4c22d78cebc52458ba7298a470a3be0cdce
cmd/internal/obj/arm64: add CONSTRAINED UNPREDICTABLE behavior check for some load/store

According to ARM64 manual, it is "constrained unpredictable behavior"
if the src and dst registers of some load/store instructions are same.
In order to completely prevent such unpredictable behavior, adding the
check for load/store instructions that are supported by the assembler
in the assembler.

Add test cases.

Update #25823

Change-Id: I64c14ad99ee543d778e7ec8ae6516a532293dbb3
Reviewed-on: https://go-review.googlesource.com/120660
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/asm/internal/asm/testdata/arm64.s
src/cmd/asm/internal/asm/testdata/arm64enc.s
src/cmd/asm/internal/asm/testdata/arm64error.s
src/cmd/internal/obj/arm64/asm7.go