]> Cypherpunks repositories - gostls13.git/commit
cmd/internal/obj/arm: Fix wrong assembly in the arm assembler
authorBen Shi <powerman1st@163.com>
Thu, 2 Mar 2017 05:24:53 +0000 (05:24 +0000)
committerBrad Fitzpatrick <bradfitz@golang.org>
Thu, 23 Mar 2017 05:05:36 +0000 (05:05 +0000)
commitd0ff9ece2b36bd4470b4388602a757d50c4c3607
tree9afe257f019e2590d6ef1e290c6ac857389c59ef
parentc46226a6222eb8bc8b30b40e8ce09ebe00f5dade
cmd/internal/obj/arm: Fix wrong assembly in the arm assembler

As #19357 reported,

TST has 3 different sub forms
TST $imme, Rx
TST Ry << imme, Rx
TST Ry << Rz, Rx

just like CMP/CMN/TEQ has. But current arm assembler assembles all TST
instructions wrongly. This patch fixes it and adds more tests.

Fixes #19357

Change-Id: Iafedccfaab2cbb2631e7acf259837a782e2e8e2f
Reviewed-on: https://go-review.googlesource.com/37662
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/cmd/asm/internal/asm/testdata/arm.s
src/cmd/internal/obj/arm/asm5.go