diff options
| author | Ben Shi <powerman1st@163.com> | 2018-07-24 03:47:39 +0000 |
|---|---|---|
| committer | Cherry Zhang <cherryyz@google.com> | 2018-07-30 15:31:06 +0000 |
| commit | e351a1600514b6a4ae18c4b44e883b049c314ebd (patch) | |
| tree | 620b852c400fa659f6be2e7da4873e663a212423 /src/cmd/asm | |
| parent | 86f907fdecbf0bdf5d97070205b7c965e3ab2b9b (diff) | |
| download | go-e351a1600514b6a4ae18c4b44e883b049c314ebd.tar.xz | |
cmd/internal/obj/arm64: reject incorrect form of LDP/STP
"LDP (R0), (F0, F1)" and "STP (F1, F2), (R0)" are
silently accepted by the arm64 assembler without
any error message. And this CL fixes that bug.
fixes #26556.
Change-Id: Ib6fae81956deb39a4ffd95e9409acc8dad3ab2d2
Reviewed-on: https://go-review.googlesource.com/125637
Run-TryBot: Ben Shi <powerman1st@163.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'src/cmd/asm')
| -rw-r--r-- | src/cmd/asm/internal/asm/testdata/arm64error.s | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/cmd/asm/internal/asm/testdata/arm64error.s b/src/cmd/asm/internal/asm/testdata/arm64error.s index be2251e442..01d23eb527 100644 --- a/src/cmd/asm/internal/asm/testdata/arm64error.s +++ b/src/cmd/asm/internal/asm/testdata/arm64error.s @@ -89,4 +89,6 @@ TEXT errors(SB),$0 CSEL LT, R1, R2 // ERROR "illegal combination" AND $0x22220000, R2, RSP // ERROR "illegal combination" ANDS $0x22220000, R2, RSP // ERROR "illegal combination" + LDP (R0), (F0, F1) // ERROR "invalid register pair" + STP (F2, F3), (R0) // ERROR "invalid register pair" RET |
