]> Cypherpunks repositories - gostls13.git/commit
cmd/{asm,compile}: add ANDW, ORW and XORW instructions to s390x
authorMichael Munday <munday@ca.ibm.com>
Tue, 4 Oct 2016 19:35:28 +0000 (15:35 -0400)
committerMichael Munday <munday@ca.ibm.com>
Thu, 6 Oct 2016 02:59:04 +0000 (02:59 +0000)
commitdd1dcf949676a5f091d8f17ad9a64f6336aa371b
treeec506f34c485741a25d0d943bf7c52da9d7b6ade
parent1bddd2ee6aed261830131f824fe32e07de326066
cmd/{asm,compile}: add ANDW, ORW and XORW instructions to s390x

Adds the following instructions and uses them in the SSA backend:

 - ANDW
 - ORW
 - XORW

The instruction encodings for 32-bit operations are typically shorter,
particularly when an immediate is used. For example, XORW $-1, R1
only requires one instruction, whereas XOR requires two.

Also removes some unused instructions (that were emulated):

 - ANDN
 - NAND
 - ORN
 - NOR

Change-Id: Iff2a16f52004ba498720034e354be9771b10cac4
Reviewed-on: https://go-review.googlesource.com/30291
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/asm/internal/asm/testdata/s390x.s
src/cmd/compile/internal/s390x/prog.go
src/cmd/compile/internal/ssa/gen/S390XOps.go
src/cmd/compile/internal/ssa/opGen.go
src/cmd/internal/obj/s390x/a.out.go
src/cmd/internal/obj/s390x/anames.go
src/cmd/internal/obj/s390x/asmz.go