]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: intrinsify TrailingZeros16, OnesCount{8,16} for ppc64x
authorCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>
Tue, 2 Oct 2018 02:37:00 +0000 (23:37 -0300)
committerLynn Boger <laboger@linux.vnet.ibm.com>
Thu, 11 Oct 2018 13:21:50 +0000 (13:21 +0000)
commit23578f9d00bb0d6e92f18d7d6ea961d7c6c52260
tree071ecd3c10064f1a8f6f9c68070c7863cc3f936f
parentc96c2a39bb09da48b3af63de58f65fdc82865746
cmd/compile: intrinsify TrailingZeros16, OnesCount{8,16} for ppc64x

This change implements TrailingZeros16, OnesCount8 and OnesCount16
as intrinsics for ppc64x.

benchmark                       old ns/op     new ns/op     delta
BenchmarkTrailingZeros16-40     2.16          1.61          -25.46%

benchmark                   old ns/op     new ns/op     delta
BenchmarkOnesCount-40       0.71          0.71          +0.00%
BenchmarkOnesCount8-40      0.93          0.69          -25.81%
BenchmarkOnesCount16-40     1.54          0.75          -51.30%
BenchmarkOnesCount32-40     0.75          0.74          -1.33%
BenchmarkOnesCount64-40     0.71          0.71          +0.00%

Change-Id: I010fa9c0ef596a09362870d81193c633e70da637
Reviewed-on: https://go-review.googlesource.com/c/139137
Run-TryBot: Lynn Boger <laboger@linux.vnet.ibm.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Lynn Boger <laboger@linux.vnet.ibm.com>
src/cmd/compile/internal/gc/ssa.go
src/cmd/compile/internal/ssa/gen/PPC64.rules
src/cmd/compile/internal/ssa/rewritePPC64.go