aboutsummaryrefslogtreecommitdiff
path: root/test/codegen
diff options
context:
space:
mode:
authorAlberto Donizetti <alb.donizetti@gmail.com>2018-03-06 12:55:41 +0100
committerAlberto Donizetti <alb.donizetti@gmail.com>2018-03-06 17:53:00 +0000
commit18ae5eca3b12a64a81ecc994f4e79b1c3dbbecbc (patch)
tree1bb88c314134e7e4bbbe29b587b8ba63b55494b0 /test/codegen
parentf62444547317764f9d77b4e4ce730a8414607c6b (diff)
downloadgo-18ae5eca3b12a64a81ecc994f4e79b1c3dbbecbc.tar.xz
test/codegen: port math/bits.OnesCount tests to codegen
And remove them from ssa_test. Change-Id: I3efac5fea529bb0efa2dae32124530482ba5058e Reviewed-on: https://go-review.googlesource.com/98815 Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'test/codegen')
-rw-r--r--test/codegen/mathbits.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/test/codegen/mathbits.go b/test/codegen/mathbits.go
index f930046a3b..a95c13caa9 100644
--- a/test/codegen/mathbits.go
+++ b/test/codegen/mathbits.go
@@ -96,6 +96,34 @@ func Len8(n uint8) int {
return bits.Len8(n)
}
+// -------------------- //
+// bits.OnesCount //
+// -------------------- //
+
+func OnesCount(n uint) int {
+ //amd64:"POPCNTQ",".*support_popcnt"
+ //arm64:"VCNT","VUADDLV"
+ return bits.OnesCount(n)
+}
+
+func OnesCount64(n uint64) int {
+ //amd64:"POPCNTQ",".*support_popcnt"
+ //arm64:"VCNT","VUADDLV"
+ return bits.OnesCount64(n)
+}
+
+func OnesCount32(n uint32) int {
+ //amd64:"POPCNTL",".*support_popcnt"
+ //arm64:"VCNT","VUADDLV"
+ return bits.OnesCount32(n)
+}
+
+func OnesCount16(n uint16) int {
+ //amd64:"POPCNTL",".*support_popcnt"
+ //arm64:"VCNT","VUADDLV"
+ return bits.OnesCount16(n)
+}
+
// ------------------------ //
// bits.TrailingZeros //
// ------------------------ //