]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/compile/internal/gc: speed up arith const tests
authorJosh Bleecher Snyder <josharian@gmail.com>
Sat, 24 Mar 2018 23:18:07 +0000 (16:18 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Wed, 28 Mar 2018 17:44:28 +0000 (17:44 +0000)
This change reduces the time to run this test on my machine from

real 0m2.491s
user 0m3.020s
sys 0m0.331s

to

real 0m0.237s
user 0m0.180s
sys 0m0.173s

This will make it reasonable to add more constants to the test.
I am also hopeful that it might help a bit with intermittent
cmd/compile/internal/gc test timeouts on the build dashboard
on the slower builders.

The time savings are entirely in compilation time,
by avoiding generating one giant func main.
Instead, generate tables of tests to be run,
which are translated into static data,
and then loop over those tests.

While we're here, do some minor cleanup:

* Remove the _ssa suffix on function names,
  as that was only needed during ssa bootstrapping.
* Clean up error handling during test generation.
* Make functions single-line, to reduce future diff sizes.
  Diffing giant files is slow.

Change-Id: Ic5fccdb71679169bea756c7d33c07d05e4801860
Reviewed-on: https://go-review.googlesource.com/102956
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: David Chase <drchase@google.com>
src/cmd/compile/internal/gc/testdata/arithConst.go
src/cmd/compile/internal/gc/testdata/gen/arithConstGen.go

index ef565bff481789340f294980dd9086ebd3d5026b..887abead155ec5cdc169884975df2b4d82918f71 100644 (file)
 package main
 
 import "fmt"
+import "os"
 
 //go:noinline
-func add_uint64_0_ssa(a uint64) uint64 {
-       return a + 0
-}
+func add_uint64_0(a uint64) uint64 { return a + 0 }
 
 //go:noinline
-func add_0_uint64_ssa(a uint64) uint64 {
-       return 0 + a
-}
+func add_0_uint64(a uint64) uint64 { return 0 + a }
 
 //go:noinline
-func add_uint64_1_ssa(a uint64) uint64 {
-       return a + 1
-}
+func add_uint64_1(a uint64) uint64 { return a + 1 }
 
 //go:noinline
-func add_1_uint64_ssa(a uint64) uint64 {
-       return 1 + a
-}
+func add_1_uint64(a uint64) uint64 { return 1 + a }
 
 //go:noinline
-func add_uint64_4294967296_ssa(a uint64) uint64 {
-       return a + 4294967296
-}
+func add_uint64_4294967296(a uint64) uint64 { return a + 4294967296 }
 
 //go:noinline
-func add_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 + a
-}
+func add_4294967296_uint64(a uint64) uint64 { return 4294967296 + a }
 
 //go:noinline
-func add_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a + 9223372036854775808
-}
+func add_uint64_9223372036854775808(a uint64) uint64 { return a + 9223372036854775808 }
 
 //go:noinline
-func add_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 + a
-}
+func add_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 + a }
 
 //go:noinline
-func add_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a + 18446744073709551615
-}
+func add_uint64_18446744073709551615(a uint64) uint64 { return a + 18446744073709551615 }
 
 //go:noinline
-func add_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 + a
-}
+func add_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 + a }
 
 //go:noinline
-func sub_uint64_0_ssa(a uint64) uint64 {
-       return a - 0
-}
+func sub_uint64_0(a uint64) uint64 { return a - 0 }
 
 //go:noinline
-func sub_0_uint64_ssa(a uint64) uint64 {
-       return 0 - a
-}
+func sub_0_uint64(a uint64) uint64 { return 0 - a }
 
 //go:noinline
-func sub_uint64_1_ssa(a uint64) uint64 {
-       return a - 1
-}
+func sub_uint64_1(a uint64) uint64 { return a - 1 }
 
 //go:noinline
-func sub_1_uint64_ssa(a uint64) uint64 {
-       return 1 - a
-}
+func sub_1_uint64(a uint64) uint64 { return 1 - a }
 
 //go:noinline
-func sub_uint64_4294967296_ssa(a uint64) uint64 {
-       return a - 4294967296
-}
+func sub_uint64_4294967296(a uint64) uint64 { return a - 4294967296 }
 
 //go:noinline
-func sub_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 - a
-}
+func sub_4294967296_uint64(a uint64) uint64 { return 4294967296 - a }
 
 //go:noinline
-func sub_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a - 9223372036854775808
-}
+func sub_uint64_9223372036854775808(a uint64) uint64 { return a - 9223372036854775808 }
 
 //go:noinline
-func sub_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 - a
-}
+func sub_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 - a }
 
 //go:noinline
-func sub_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a - 18446744073709551615
-}
+func sub_uint64_18446744073709551615(a uint64) uint64 { return a - 18446744073709551615 }
 
 //go:noinline
-func sub_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 - a
-}
+func sub_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 - a }
 
 //go:noinline
-func div_0_uint64_ssa(a uint64) uint64 {
-       return 0 / a
-}
+func div_0_uint64(a uint64) uint64 { return 0 / a }
 
 //go:noinline
-func div_uint64_1_ssa(a uint64) uint64 {
-       return a / 1
-}
+func div_uint64_1(a uint64) uint64 { return a / 1 }
 
 //go:noinline
-func div_1_uint64_ssa(a uint64) uint64 {
-       return 1 / a
-}
+func div_1_uint64(a uint64) uint64 { return 1 / a }
 
 //go:noinline
-func div_uint64_4294967296_ssa(a uint64) uint64 {
-       return a / 4294967296
-}
+func div_uint64_4294967296(a uint64) uint64 { return a / 4294967296 }
 
 //go:noinline
-func div_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 / a
-}
+func div_4294967296_uint64(a uint64) uint64 { return 4294967296 / a }
 
 //go:noinline
-func div_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a / 9223372036854775808
-}
+func div_uint64_9223372036854775808(a uint64) uint64 { return a / 9223372036854775808 }
 
 //go:noinline
-func div_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 / a
-}
+func div_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 / a }
 
 //go:noinline
-func div_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a / 18446744073709551615
-}
+func div_uint64_18446744073709551615(a uint64) uint64 { return a / 18446744073709551615 }
 
 //go:noinline
-func div_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 / a
-}
+func div_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 / a }
 
 //go:noinline
-func mul_uint64_0_ssa(a uint64) uint64 {
-       return a * 0
-}
+func mul_uint64_0(a uint64) uint64 { return a * 0 }
 
 //go:noinline
-func mul_0_uint64_ssa(a uint64) uint64 {
-       return 0 * a
-}
+func mul_0_uint64(a uint64) uint64 { return 0 * a }
 
 //go:noinline
-func mul_uint64_1_ssa(a uint64) uint64 {
-       return a * 1
-}
+func mul_uint64_1(a uint64) uint64 { return a * 1 }
 
 //go:noinline
-func mul_1_uint64_ssa(a uint64) uint64 {
-       return 1 * a
-}
+func mul_1_uint64(a uint64) uint64 { return 1 * a }
 
 //go:noinline
-func mul_uint64_4294967296_ssa(a uint64) uint64 {
-       return a * 4294967296
-}
+func mul_uint64_4294967296(a uint64) uint64 { return a * 4294967296 }
 
 //go:noinline
-func mul_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 * a
-}
+func mul_4294967296_uint64(a uint64) uint64 { return 4294967296 * a }
 
 //go:noinline
-func mul_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a * 9223372036854775808
-}
+func mul_uint64_9223372036854775808(a uint64) uint64 { return a * 9223372036854775808 }
 
 //go:noinline
-func mul_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 * a
-}
+func mul_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 * a }
 
 //go:noinline
-func mul_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a * 18446744073709551615
-}
+func mul_uint64_18446744073709551615(a uint64) uint64 { return a * 18446744073709551615 }
 
 //go:noinline
-func mul_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 * a
-}
+func mul_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 * a }
 
 //go:noinline
-func lsh_uint64_0_ssa(a uint64) uint64 {
-       return a << 0
-}
+func lsh_uint64_0(a uint64) uint64 { return a << 0 }
 
 //go:noinline
-func lsh_0_uint64_ssa(a uint64) uint64 {
-       return 0 << a
-}
+func lsh_0_uint64(a uint64) uint64 { return 0 << a }
 
 //go:noinline
-func lsh_uint64_1_ssa(a uint64) uint64 {
-       return a << 1
-}
+func lsh_uint64_1(a uint64) uint64 { return a << 1 }
 
 //go:noinline
-func lsh_1_uint64_ssa(a uint64) uint64 {
-       return 1 << a
-}
+func lsh_1_uint64(a uint64) uint64 { return 1 << a }
 
 //go:noinline
-func lsh_uint64_4294967296_ssa(a uint64) uint64 {
-       return a << uint64(4294967296)
-}
+func lsh_uint64_4294967296(a uint64) uint64 { return a << uint64(4294967296) }
 
 //go:noinline
-func lsh_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 << a
-}
+func lsh_4294967296_uint64(a uint64) uint64 { return 4294967296 << a }
 
 //go:noinline
-func lsh_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a << uint64(9223372036854775808)
-}
+func lsh_uint64_9223372036854775808(a uint64) uint64 { return a << uint64(9223372036854775808) }
 
 //go:noinline
-func lsh_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 << a
-}
+func lsh_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 << a }
 
 //go:noinline
-func lsh_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a << uint64(18446744073709551615)
-}
+func lsh_uint64_18446744073709551615(a uint64) uint64 { return a << uint64(18446744073709551615) }
 
 //go:noinline
-func lsh_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 << a
-}
+func lsh_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 << a }
 
 //go:noinline
-func rsh_uint64_0_ssa(a uint64) uint64 {
-       return a >> 0
-}
+func rsh_uint64_0(a uint64) uint64 { return a >> 0 }
 
 //go:noinline
-func rsh_0_uint64_ssa(a uint64) uint64 {
-       return 0 >> a
-}
+func rsh_0_uint64(a uint64) uint64 { return 0 >> a }
 
 //go:noinline
-func rsh_uint64_1_ssa(a uint64) uint64 {
-       return a >> 1
-}
+func rsh_uint64_1(a uint64) uint64 { return a >> 1 }
 
 //go:noinline
-func rsh_1_uint64_ssa(a uint64) uint64 {
-       return 1 >> a
-}
+func rsh_1_uint64(a uint64) uint64 { return 1 >> a }
 
 //go:noinline
-func rsh_uint64_4294967296_ssa(a uint64) uint64 {
-       return a >> uint64(4294967296)
-}
+func rsh_uint64_4294967296(a uint64) uint64 { return a >> uint64(4294967296) }
 
 //go:noinline
-func rsh_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 >> a
-}
+func rsh_4294967296_uint64(a uint64) uint64 { return 4294967296 >> a }
 
 //go:noinline
-func rsh_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a >> uint64(9223372036854775808)
-}
+func rsh_uint64_9223372036854775808(a uint64) uint64 { return a >> uint64(9223372036854775808) }
 
 //go:noinline
-func rsh_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 >> a
-}
+func rsh_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 >> a }
 
 //go:noinline
-func rsh_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a >> uint64(18446744073709551615)
-}
+func rsh_uint64_18446744073709551615(a uint64) uint64 { return a >> uint64(18446744073709551615) }
 
 //go:noinline
-func rsh_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 >> a
-}
+func rsh_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 >> a }
 
 //go:noinline
-func mod_0_uint64_ssa(a uint64) uint64 {
-       return 0 % a
-}
+func mod_0_uint64(a uint64) uint64 { return 0 % a }
 
 //go:noinline
-func mod_uint64_1_ssa(a uint64) uint64 {
-       return a % 1
-}
+func mod_uint64_1(a uint64) uint64 { return a % 1 }
 
 //go:noinline
-func mod_1_uint64_ssa(a uint64) uint64 {
-       return 1 % a
-}
+func mod_1_uint64(a uint64) uint64 { return 1 % a }
 
 //go:noinline
-func mod_uint64_4294967296_ssa(a uint64) uint64 {
-       return a % 4294967296
-}
+func mod_uint64_4294967296(a uint64) uint64 { return a % 4294967296 }
 
 //go:noinline
-func mod_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 % a
-}
+func mod_4294967296_uint64(a uint64) uint64 { return 4294967296 % a }
 
 //go:noinline
-func mod_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a % 9223372036854775808
-}
+func mod_uint64_9223372036854775808(a uint64) uint64 { return a % 9223372036854775808 }
 
 //go:noinline
-func mod_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 % a
-}
+func mod_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 % a }
 
 //go:noinline
-func mod_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a % 18446744073709551615
-}
+func mod_uint64_18446744073709551615(a uint64) uint64 { return a % 18446744073709551615 }
 
 //go:noinline
-func mod_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 % a
-}
+func mod_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 % a }
 
 //go:noinline
-func and_uint64_0_ssa(a uint64) uint64 {
-       return a & 0
-}
+func and_uint64_0(a uint64) uint64 { return a & 0 }
 
 //go:noinline
-func and_0_uint64_ssa(a uint64) uint64 {
-       return 0 & a
-}
+func and_0_uint64(a uint64) uint64 { return 0 & a }
 
 //go:noinline
-func and_uint64_1_ssa(a uint64) uint64 {
-       return a & 1
-}
+func and_uint64_1(a uint64) uint64 { return a & 1 }
 
 //go:noinline
-func and_1_uint64_ssa(a uint64) uint64 {
-       return 1 & a
-}
+func and_1_uint64(a uint64) uint64 { return 1 & a }
 
 //go:noinline
-func and_uint64_4294967296_ssa(a uint64) uint64 {
-       return a & 4294967296
-}
+func and_uint64_4294967296(a uint64) uint64 { return a & 4294967296 }
 
 //go:noinline
-func and_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 & a
-}
+func and_4294967296_uint64(a uint64) uint64 { return 4294967296 & a }
 
 //go:noinline
-func and_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a & 9223372036854775808
-}
+func and_uint64_9223372036854775808(a uint64) uint64 { return a & 9223372036854775808 }
 
 //go:noinline
-func and_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 & a
-}
+func and_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 & a }
 
 //go:noinline
-func and_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a & 18446744073709551615
-}
+func and_uint64_18446744073709551615(a uint64) uint64 { return a & 18446744073709551615 }
 
 //go:noinline
-func and_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 & a
-}
+func and_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 & a }
 
 //go:noinline
-func or_uint64_0_ssa(a uint64) uint64 {
-       return a | 0
-}
+func or_uint64_0(a uint64) uint64 { return a | 0 }
 
 //go:noinline
-func or_0_uint64_ssa(a uint64) uint64 {
-       return 0 | a
-}
+func or_0_uint64(a uint64) uint64 { return 0 | a }
 
 //go:noinline
-func or_uint64_1_ssa(a uint64) uint64 {
-       return a | 1
-}
+func or_uint64_1(a uint64) uint64 { return a | 1 }
 
 //go:noinline
-func or_1_uint64_ssa(a uint64) uint64 {
-       return 1 | a
-}
+func or_1_uint64(a uint64) uint64 { return 1 | a }
 
 //go:noinline
-func or_uint64_4294967296_ssa(a uint64) uint64 {
-       return a | 4294967296
-}
+func or_uint64_4294967296(a uint64) uint64 { return a | 4294967296 }
 
 //go:noinline
-func or_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 | a
-}
+func or_4294967296_uint64(a uint64) uint64 { return 4294967296 | a }
 
 //go:noinline
-func or_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a | 9223372036854775808
-}
+func or_uint64_9223372036854775808(a uint64) uint64 { return a | 9223372036854775808 }
 
 //go:noinline
-func or_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 | a
-}
+func or_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 | a }
 
 //go:noinline
-func or_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a | 18446744073709551615
-}
+func or_uint64_18446744073709551615(a uint64) uint64 { return a | 18446744073709551615 }
 
 //go:noinline
-func or_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 | a
-}
+func or_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 | a }
 
 //go:noinline
-func xor_uint64_0_ssa(a uint64) uint64 {
-       return a ^ 0
-}
+func xor_uint64_0(a uint64) uint64 { return a ^ 0 }
 
 //go:noinline
-func xor_0_uint64_ssa(a uint64) uint64 {
-       return 0 ^ a
-}
+func xor_0_uint64(a uint64) uint64 { return 0 ^ a }
 
 //go:noinline
-func xor_uint64_1_ssa(a uint64) uint64 {
-       return a ^ 1
-}
+func xor_uint64_1(a uint64) uint64 { return a ^ 1 }
 
 //go:noinline
-func xor_1_uint64_ssa(a uint64) uint64 {
-       return 1 ^ a
-}
+func xor_1_uint64(a uint64) uint64 { return 1 ^ a }
 
 //go:noinline
-func xor_uint64_4294967296_ssa(a uint64) uint64 {
-       return a ^ 4294967296
-}
+func xor_uint64_4294967296(a uint64) uint64 { return a ^ 4294967296 }
 
 //go:noinline
-func xor_4294967296_uint64_ssa(a uint64) uint64 {
-       return 4294967296 ^ a
-}
+func xor_4294967296_uint64(a uint64) uint64 { return 4294967296 ^ a }
 
 //go:noinline
-func xor_uint64_9223372036854775808_ssa(a uint64) uint64 {
-       return a ^ 9223372036854775808
-}
+func xor_uint64_9223372036854775808(a uint64) uint64 { return a ^ 9223372036854775808 }
 
 //go:noinline
-func xor_9223372036854775808_uint64_ssa(a uint64) uint64 {
-       return 9223372036854775808 ^ a
-}
+func xor_9223372036854775808_uint64(a uint64) uint64 { return 9223372036854775808 ^ a }
 
 //go:noinline
-func xor_uint64_18446744073709551615_ssa(a uint64) uint64 {
-       return a ^ 18446744073709551615
-}
+func xor_uint64_18446744073709551615(a uint64) uint64 { return a ^ 18446744073709551615 }
 
 //go:noinline
-func xor_18446744073709551615_uint64_ssa(a uint64) uint64 {
-       return 18446744073709551615 ^ a
-}
+func xor_18446744073709551615_uint64(a uint64) uint64 { return 18446744073709551615 ^ a }
 
 //go:noinline
-func add_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a + -9223372036854775808
-}
+func add_int64_Neg9223372036854775808(a int64) int64 { return a + -9223372036854775808 }
 
 //go:noinline
-func add_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 + a
-}
+func add_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 + a }
 
 //go:noinline
-func add_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a + -9223372036854775807
-}
+func add_int64_Neg9223372036854775807(a int64) int64 { return a + -9223372036854775807 }
 
 //go:noinline
-func add_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 + a
-}
+func add_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 + a }
 
 //go:noinline
-func add_int64_Neg4294967296_ssa(a int64) int64 {
-       return a + -4294967296
-}
+func add_int64_Neg4294967296(a int64) int64 { return a + -4294967296 }
 
 //go:noinline
-func add_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 + a
-}
+func add_Neg4294967296_int64(a int64) int64 { return -4294967296 + a }
 
 //go:noinline
-func add_int64_Neg1_ssa(a int64) int64 {
-       return a + -1
-}
+func add_int64_Neg1(a int64) int64 { return a + -1 }
 
 //go:noinline
-func add_Neg1_int64_ssa(a int64) int64 {
-       return -1 + a
-}
+func add_Neg1_int64(a int64) int64 { return -1 + a }
 
 //go:noinline
-func add_int64_0_ssa(a int64) int64 {
-       return a + 0
-}
+func add_int64_0(a int64) int64 { return a + 0 }
 
 //go:noinline
-func add_0_int64_ssa(a int64) int64 {
-       return 0 + a
-}
+func add_0_int64(a int64) int64 { return 0 + a }
 
 //go:noinline
-func add_int64_1_ssa(a int64) int64 {
-       return a + 1
-}
+func add_int64_1(a int64) int64 { return a + 1 }
 
 //go:noinline
-func add_1_int64_ssa(a int64) int64 {
-       return 1 + a
-}
+func add_1_int64(a int64) int64 { return 1 + a }
 
 //go:noinline
-func add_int64_4294967296_ssa(a int64) int64 {
-       return a + 4294967296
-}
+func add_int64_4294967296(a int64) int64 { return a + 4294967296 }
 
 //go:noinline
-func add_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 + a
-}
+func add_4294967296_int64(a int64) int64 { return 4294967296 + a }
 
 //go:noinline
-func add_int64_9223372036854775806_ssa(a int64) int64 {
-       return a + 9223372036854775806
-}
+func add_int64_9223372036854775806(a int64) int64 { return a + 9223372036854775806 }
 
 //go:noinline
-func add_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 + a
-}
+func add_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 + a }
 
 //go:noinline
-func add_int64_9223372036854775807_ssa(a int64) int64 {
-       return a + 9223372036854775807
-}
+func add_int64_9223372036854775807(a int64) int64 { return a + 9223372036854775807 }
 
 //go:noinline
-func add_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 + a
-}
+func add_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 + a }
 
 //go:noinline
-func sub_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a - -9223372036854775808
-}
+func sub_int64_Neg9223372036854775808(a int64) int64 { return a - -9223372036854775808 }
 
 //go:noinline
-func sub_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 - a
-}
+func sub_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 - a }
 
 //go:noinline
-func sub_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a - -9223372036854775807
-}
+func sub_int64_Neg9223372036854775807(a int64) int64 { return a - -9223372036854775807 }
 
 //go:noinline
-func sub_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 - a
-}
+func sub_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 - a }
 
 //go:noinline
-func sub_int64_Neg4294967296_ssa(a int64) int64 {
-       return a - -4294967296
-}
+func sub_int64_Neg4294967296(a int64) int64 { return a - -4294967296 }
 
 //go:noinline
-func sub_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 - a
-}
+func sub_Neg4294967296_int64(a int64) int64 { return -4294967296 - a }
 
 //go:noinline
-func sub_int64_Neg1_ssa(a int64) int64 {
-       return a - -1
-}
+func sub_int64_Neg1(a int64) int64 { return a - -1 }
 
 //go:noinline
-func sub_Neg1_int64_ssa(a int64) int64 {
-       return -1 - a
-}
+func sub_Neg1_int64(a int64) int64 { return -1 - a }
 
 //go:noinline
-func sub_int64_0_ssa(a int64) int64 {
-       return a - 0
-}
+func sub_int64_0(a int64) int64 { return a - 0 }
 
 //go:noinline
-func sub_0_int64_ssa(a int64) int64 {
-       return 0 - a
-}
+func sub_0_int64(a int64) int64 { return 0 - a }
 
 //go:noinline
-func sub_int64_1_ssa(a int64) int64 {
-       return a - 1
-}
+func sub_int64_1(a int64) int64 { return a - 1 }
 
 //go:noinline
-func sub_1_int64_ssa(a int64) int64 {
-       return 1 - a
-}
+func sub_1_int64(a int64) int64 { return 1 - a }
 
 //go:noinline
-func sub_int64_4294967296_ssa(a int64) int64 {
-       return a - 4294967296
-}
+func sub_int64_4294967296(a int64) int64 { return a - 4294967296 }
 
 //go:noinline
-func sub_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 - a
-}
+func sub_4294967296_int64(a int64) int64 { return 4294967296 - a }
 
 //go:noinline
-func sub_int64_9223372036854775806_ssa(a int64) int64 {
-       return a - 9223372036854775806
-}
+func sub_int64_9223372036854775806(a int64) int64 { return a - 9223372036854775806 }
 
 //go:noinline
-func sub_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 - a
-}
+func sub_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 - a }
 
 //go:noinline
-func sub_int64_9223372036854775807_ssa(a int64) int64 {
-       return a - 9223372036854775807
-}
+func sub_int64_9223372036854775807(a int64) int64 { return a - 9223372036854775807 }
 
 //go:noinline
-func sub_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 - a
-}
+func sub_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 - a }
 
 //go:noinline
-func div_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a / -9223372036854775808
-}
+func div_int64_Neg9223372036854775808(a int64) int64 { return a / -9223372036854775808 }
 
 //go:noinline
-func div_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 / a
-}
+func div_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 / a }
 
 //go:noinline
-func div_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a / -9223372036854775807
-}
+func div_int64_Neg9223372036854775807(a int64) int64 { return a / -9223372036854775807 }
 
 //go:noinline
-func div_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 / a
-}
+func div_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 / a }
 
 //go:noinline
-func div_int64_Neg4294967296_ssa(a int64) int64 {
-       return a / -4294967296
-}
+func div_int64_Neg4294967296(a int64) int64 { return a / -4294967296 }
 
 //go:noinline
-func div_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 / a
-}
+func div_Neg4294967296_int64(a int64) int64 { return -4294967296 / a }
 
 //go:noinline
-func div_int64_Neg1_ssa(a int64) int64 {
-       return a / -1
-}
+func div_int64_Neg1(a int64) int64 { return a / -1 }
 
 //go:noinline
-func div_Neg1_int64_ssa(a int64) int64 {
-       return -1 / a
-}
+func div_Neg1_int64(a int64) int64 { return -1 / a }
 
 //go:noinline
-func div_0_int64_ssa(a int64) int64 {
-       return 0 / a
-}
+func div_0_int64(a int64) int64 { return 0 / a }
 
 //go:noinline
-func div_int64_1_ssa(a int64) int64 {
-       return a / 1
-}
+func div_int64_1(a int64) int64 { return a / 1 }
 
 //go:noinline
-func div_1_int64_ssa(a int64) int64 {
-       return 1 / a
-}
+func div_1_int64(a int64) int64 { return 1 / a }
 
 //go:noinline
-func div_int64_4294967296_ssa(a int64) int64 {
-       return a / 4294967296
-}
+func div_int64_4294967296(a int64) int64 { return a / 4294967296 }
 
 //go:noinline
-func div_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 / a
-}
+func div_4294967296_int64(a int64) int64 { return 4294967296 / a }
 
 //go:noinline
-func div_int64_9223372036854775806_ssa(a int64) int64 {
-       return a / 9223372036854775806
-}
+func div_int64_9223372036854775806(a int64) int64 { return a / 9223372036854775806 }
 
 //go:noinline
-func div_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 / a
-}
+func div_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 / a }
 
 //go:noinline
-func div_int64_9223372036854775807_ssa(a int64) int64 {
-       return a / 9223372036854775807
-}
+func div_int64_9223372036854775807(a int64) int64 { return a / 9223372036854775807 }
 
 //go:noinline
-func div_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 / a
-}
+func div_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 / a }
 
 //go:noinline
-func mul_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a * -9223372036854775808
-}
+func mul_int64_Neg9223372036854775808(a int64) int64 { return a * -9223372036854775808 }
 
 //go:noinline
-func mul_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 * a
-}
+func mul_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 * a }
 
 //go:noinline
-func mul_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a * -9223372036854775807
-}
+func mul_int64_Neg9223372036854775807(a int64) int64 { return a * -9223372036854775807 }
 
 //go:noinline
-func mul_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 * a
-}
+func mul_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 * a }
 
 //go:noinline
-func mul_int64_Neg4294967296_ssa(a int64) int64 {
-       return a * -4294967296
-}
+func mul_int64_Neg4294967296(a int64) int64 { return a * -4294967296 }
 
 //go:noinline
-func mul_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 * a
-}
+func mul_Neg4294967296_int64(a int64) int64 { return -4294967296 * a }
 
 //go:noinline
-func mul_int64_Neg1_ssa(a int64) int64 {
-       return a * -1
-}
+func mul_int64_Neg1(a int64) int64 { return a * -1 }
 
 //go:noinline
-func mul_Neg1_int64_ssa(a int64) int64 {
-       return -1 * a
-}
+func mul_Neg1_int64(a int64) int64 { return -1 * a }
 
 //go:noinline
-func mul_int64_0_ssa(a int64) int64 {
-       return a * 0
-}
+func mul_int64_0(a int64) int64 { return a * 0 }
 
 //go:noinline
-func mul_0_int64_ssa(a int64) int64 {
-       return 0 * a
-}
+func mul_0_int64(a int64) int64 { return 0 * a }
 
 //go:noinline
-func mul_int64_1_ssa(a int64) int64 {
-       return a * 1
-}
+func mul_int64_1(a int64) int64 { return a * 1 }
 
 //go:noinline
-func mul_1_int64_ssa(a int64) int64 {
-       return 1 * a
-}
+func mul_1_int64(a int64) int64 { return 1 * a }
 
 //go:noinline
-func mul_int64_4294967296_ssa(a int64) int64 {
-       return a * 4294967296
-}
+func mul_int64_4294967296(a int64) int64 { return a * 4294967296 }
 
 //go:noinline
-func mul_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 * a
-}
+func mul_4294967296_int64(a int64) int64 { return 4294967296 * a }
 
 //go:noinline
-func mul_int64_9223372036854775806_ssa(a int64) int64 {
-       return a * 9223372036854775806
-}
+func mul_int64_9223372036854775806(a int64) int64 { return a * 9223372036854775806 }
 
 //go:noinline
-func mul_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 * a
-}
+func mul_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 * a }
 
 //go:noinline
-func mul_int64_9223372036854775807_ssa(a int64) int64 {
-       return a * 9223372036854775807
-}
+func mul_int64_9223372036854775807(a int64) int64 { return a * 9223372036854775807 }
 
 //go:noinline
-func mul_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 * a
-}
+func mul_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 * a }
 
 //go:noinline
-func mod_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a % -9223372036854775808
-}
+func mod_int64_Neg9223372036854775808(a int64) int64 { return a % -9223372036854775808 }
 
 //go:noinline
-func mod_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 % a
-}
+func mod_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 % a }
 
 //go:noinline
-func mod_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a % -9223372036854775807
-}
+func mod_int64_Neg9223372036854775807(a int64) int64 { return a % -9223372036854775807 }
 
 //go:noinline
-func mod_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 % a
-}
+func mod_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 % a }
 
 //go:noinline
-func mod_int64_Neg4294967296_ssa(a int64) int64 {
-       return a % -4294967296
-}
+func mod_int64_Neg4294967296(a int64) int64 { return a % -4294967296 }
 
 //go:noinline
-func mod_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 % a
-}
+func mod_Neg4294967296_int64(a int64) int64 { return -4294967296 % a }
 
 //go:noinline
-func mod_int64_Neg1_ssa(a int64) int64 {
-       return a % -1
-}
+func mod_int64_Neg1(a int64) int64 { return a % -1 }
 
 //go:noinline
-func mod_Neg1_int64_ssa(a int64) int64 {
-       return -1 % a
-}
+func mod_Neg1_int64(a int64) int64 { return -1 % a }
 
 //go:noinline
-func mod_0_int64_ssa(a int64) int64 {
-       return 0 % a
-}
+func mod_0_int64(a int64) int64 { return 0 % a }
 
 //go:noinline
-func mod_int64_1_ssa(a int64) int64 {
-       return a % 1
-}
+func mod_int64_1(a int64) int64 { return a % 1 }
 
 //go:noinline
-func mod_1_int64_ssa(a int64) int64 {
-       return 1 % a
-}
+func mod_1_int64(a int64) int64 { return 1 % a }
 
 //go:noinline
-func mod_int64_4294967296_ssa(a int64) int64 {
-       return a % 4294967296
-}
+func mod_int64_4294967296(a int64) int64 { return a % 4294967296 }
 
 //go:noinline
-func mod_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 % a
-}
+func mod_4294967296_int64(a int64) int64 { return 4294967296 % a }
 
 //go:noinline
-func mod_int64_9223372036854775806_ssa(a int64) int64 {
-       return a % 9223372036854775806
-}
+func mod_int64_9223372036854775806(a int64) int64 { return a % 9223372036854775806 }
 
 //go:noinline
-func mod_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 % a
-}
+func mod_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 % a }
 
 //go:noinline
-func mod_int64_9223372036854775807_ssa(a int64) int64 {
-       return a % 9223372036854775807
-}
+func mod_int64_9223372036854775807(a int64) int64 { return a % 9223372036854775807 }
 
 //go:noinline
-func mod_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 % a
-}
+func mod_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 % a }
 
 //go:noinline
-func and_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a & -9223372036854775808
-}
+func and_int64_Neg9223372036854775808(a int64) int64 { return a & -9223372036854775808 }
 
 //go:noinline
-func and_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 & a
-}
+func and_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 & a }
 
 //go:noinline
-func and_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a & -9223372036854775807
-}
+func and_int64_Neg9223372036854775807(a int64) int64 { return a & -9223372036854775807 }
 
 //go:noinline
-func and_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 & a
-}
+func and_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 & a }
 
 //go:noinline
-func and_int64_Neg4294967296_ssa(a int64) int64 {
-       return a & -4294967296
-}
+func and_int64_Neg4294967296(a int64) int64 { return a & -4294967296 }
 
 //go:noinline
-func and_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 & a
-}
+func and_Neg4294967296_int64(a int64) int64 { return -4294967296 & a }
 
 //go:noinline
-func and_int64_Neg1_ssa(a int64) int64 {
-       return a & -1
-}
+func and_int64_Neg1(a int64) int64 { return a & -1 }
 
 //go:noinline
-func and_Neg1_int64_ssa(a int64) int64 {
-       return -1 & a
-}
+func and_Neg1_int64(a int64) int64 { return -1 & a }
 
 //go:noinline
-func and_int64_0_ssa(a int64) int64 {
-       return a & 0
-}
+func and_int64_0(a int64) int64 { return a & 0 }
 
 //go:noinline
-func and_0_int64_ssa(a int64) int64 {
-       return 0 & a
-}
+func and_0_int64(a int64) int64 { return 0 & a }
 
 //go:noinline
-func and_int64_1_ssa(a int64) int64 {
-       return a & 1
-}
+func and_int64_1(a int64) int64 { return a & 1 }
 
 //go:noinline
-func and_1_int64_ssa(a int64) int64 {
-       return 1 & a
-}
+func and_1_int64(a int64) int64 { return 1 & a }
 
 //go:noinline
-func and_int64_4294967296_ssa(a int64) int64 {
-       return a & 4294967296
-}
+func and_int64_4294967296(a int64) int64 { return a & 4294967296 }
 
 //go:noinline
-func and_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 & a
-}
+func and_4294967296_int64(a int64) int64 { return 4294967296 & a }
 
 //go:noinline
-func and_int64_9223372036854775806_ssa(a int64) int64 {
-       return a & 9223372036854775806
-}
+func and_int64_9223372036854775806(a int64) int64 { return a & 9223372036854775806 }
 
 //go:noinline
-func and_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 & a
-}
+func and_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 & a }
 
 //go:noinline
-func and_int64_9223372036854775807_ssa(a int64) int64 {
-       return a & 9223372036854775807
-}
+func and_int64_9223372036854775807(a int64) int64 { return a & 9223372036854775807 }
 
 //go:noinline
-func and_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 & a
-}
+func and_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 & a }
 
 //go:noinline
-func or_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a | -9223372036854775808
-}
+func or_int64_Neg9223372036854775808(a int64) int64 { return a | -9223372036854775808 }
 
 //go:noinline
-func or_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 | a
-}
+func or_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 | a }
 
 //go:noinline
-func or_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a | -9223372036854775807
-}
+func or_int64_Neg9223372036854775807(a int64) int64 { return a | -9223372036854775807 }
 
 //go:noinline
-func or_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 | a
-}
+func or_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 | a }
 
 //go:noinline
-func or_int64_Neg4294967296_ssa(a int64) int64 {
-       return a | -4294967296
-}
+func or_int64_Neg4294967296(a int64) int64 { return a | -4294967296 }
 
 //go:noinline
-func or_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 | a
-}
+func or_Neg4294967296_int64(a int64) int64 { return -4294967296 | a }
 
 //go:noinline
-func or_int64_Neg1_ssa(a int64) int64 {
-       return a | -1
-}
+func or_int64_Neg1(a int64) int64 { return a | -1 }
 
 //go:noinline
-func or_Neg1_int64_ssa(a int64) int64 {
-       return -1 | a
-}
+func or_Neg1_int64(a int64) int64 { return -1 | a }
 
 //go:noinline
-func or_int64_0_ssa(a int64) int64 {
-       return a | 0
-}
+func or_int64_0(a int64) int64 { return a | 0 }
 
 //go:noinline
-func or_0_int64_ssa(a int64) int64 {
-       return 0 | a
-}
+func or_0_int64(a int64) int64 { return 0 | a }
 
 //go:noinline
-func or_int64_1_ssa(a int64) int64 {
-       return a | 1
-}
+func or_int64_1(a int64) int64 { return a | 1 }
 
 //go:noinline
-func or_1_int64_ssa(a int64) int64 {
-       return 1 | a
-}
+func or_1_int64(a int64) int64 { return 1 | a }
 
 //go:noinline
-func or_int64_4294967296_ssa(a int64) int64 {
-       return a | 4294967296
-}
+func or_int64_4294967296(a int64) int64 { return a | 4294967296 }
 
 //go:noinline
-func or_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 | a
-}
+func or_4294967296_int64(a int64) int64 { return 4294967296 | a }
 
 //go:noinline
-func or_int64_9223372036854775806_ssa(a int64) int64 {
-       return a | 9223372036854775806
-}
+func or_int64_9223372036854775806(a int64) int64 { return a | 9223372036854775806 }
 
 //go:noinline
-func or_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 | a
-}
+func or_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 | a }
 
 //go:noinline
-func or_int64_9223372036854775807_ssa(a int64) int64 {
-       return a | 9223372036854775807
-}
+func or_int64_9223372036854775807(a int64) int64 { return a | 9223372036854775807 }
 
 //go:noinline
-func or_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 | a
-}
+func or_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 | a }
 
 //go:noinline
-func xor_int64_Neg9223372036854775808_ssa(a int64) int64 {
-       return a ^ -9223372036854775808
-}
+func xor_int64_Neg9223372036854775808(a int64) int64 { return a ^ -9223372036854775808 }
 
 //go:noinline
-func xor_Neg9223372036854775808_int64_ssa(a int64) int64 {
-       return -9223372036854775808 ^ a
-}
+func xor_Neg9223372036854775808_int64(a int64) int64 { return -9223372036854775808 ^ a }
 
 //go:noinline
-func xor_int64_Neg9223372036854775807_ssa(a int64) int64 {
-       return a ^ -9223372036854775807
-}
+func xor_int64_Neg9223372036854775807(a int64) int64 { return a ^ -9223372036854775807 }
 
 //go:noinline
-func xor_Neg9223372036854775807_int64_ssa(a int64) int64 {
-       return -9223372036854775807 ^ a
-}
+func xor_Neg9223372036854775807_int64(a int64) int64 { return -9223372036854775807 ^ a }
 
 //go:noinline
-func xor_int64_Neg4294967296_ssa(a int64) int64 {
-       return a ^ -4294967296
-}
+func xor_int64_Neg4294967296(a int64) int64 { return a ^ -4294967296 }
 
 //go:noinline
-func xor_Neg4294967296_int64_ssa(a int64) int64 {
-       return -4294967296 ^ a
-}
+func xor_Neg4294967296_int64(a int64) int64 { return -4294967296 ^ a }
 
 //go:noinline
-func xor_int64_Neg1_ssa(a int64) int64 {
-       return a ^ -1
-}
+func xor_int64_Neg1(a int64) int64 { return a ^ -1 }
 
 //go:noinline
-func xor_Neg1_int64_ssa(a int64) int64 {
-       return -1 ^ a
-}
+func xor_Neg1_int64(a int64) int64 { return -1 ^ a }
 
 //go:noinline
-func xor_int64_0_ssa(a int64) int64 {
-       return a ^ 0
-}
+func xor_int64_0(a int64) int64 { return a ^ 0 }
 
 //go:noinline
-func xor_0_int64_ssa(a int64) int64 {
-       return 0 ^ a
-}
+func xor_0_int64(a int64) int64 { return 0 ^ a }
 
 //go:noinline
-func xor_int64_1_ssa(a int64) int64 {
-       return a ^ 1
-}
+func xor_int64_1(a int64) int64 { return a ^ 1 }
 
 //go:noinline
-func xor_1_int64_ssa(a int64) int64 {
-       return 1 ^ a
-}
+func xor_1_int64(a int64) int64 { return 1 ^ a }
 
 //go:noinline
-func xor_int64_4294967296_ssa(a int64) int64 {
-       return a ^ 4294967296
-}
+func xor_int64_4294967296(a int64) int64 { return a ^ 4294967296 }
 
 //go:noinline
-func xor_4294967296_int64_ssa(a int64) int64 {
-       return 4294967296 ^ a
-}
+func xor_4294967296_int64(a int64) int64 { return 4294967296 ^ a }
 
 //go:noinline
-func xor_int64_9223372036854775806_ssa(a int64) int64 {
-       return a ^ 9223372036854775806
-}
+func xor_int64_9223372036854775806(a int64) int64 { return a ^ 9223372036854775806 }
 
 //go:noinline
-func xor_9223372036854775806_int64_ssa(a int64) int64 {
-       return 9223372036854775806 ^ a
-}
+func xor_9223372036854775806_int64(a int64) int64 { return 9223372036854775806 ^ a }
 
 //go:noinline
-func xor_int64_9223372036854775807_ssa(a int64) int64 {
-       return a ^ 9223372036854775807
-}
+func xor_int64_9223372036854775807(a int64) int64 { return a ^ 9223372036854775807 }
 
 //go:noinline
-func xor_9223372036854775807_int64_ssa(a int64) int64 {
-       return 9223372036854775807 ^ a
-}
+func xor_9223372036854775807_int64(a int64) int64 { return 9223372036854775807 ^ a }
 
 //go:noinline
-func add_uint32_0_ssa(a uint32) uint32 {
-       return a + 0
-}
+func add_uint32_0(a uint32) uint32 { return a + 0 }
 
 //go:noinline
-func add_0_uint32_ssa(a uint32) uint32 {
-       return 0 + a
-}
+func add_0_uint32(a uint32) uint32 { return 0 + a }
 
 //go:noinline
-func add_uint32_1_ssa(a uint32) uint32 {
-       return a + 1
-}
+func add_uint32_1(a uint32) uint32 { return a + 1 }
 
 //go:noinline
-func add_1_uint32_ssa(a uint32) uint32 {
-       return 1 + a
-}
+func add_1_uint32(a uint32) uint32 { return 1 + a }
 
 //go:noinline
-func add_uint32_4294967295_ssa(a uint32) uint32 {
-       return a + 4294967295
-}
+func add_uint32_4294967295(a uint32) uint32 { return a + 4294967295 }
 
 //go:noinline
-func add_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 + a
-}
+func add_4294967295_uint32(a uint32) uint32 { return 4294967295 + a }
 
 //go:noinline
-func sub_uint32_0_ssa(a uint32) uint32 {
-       return a - 0
-}
+func sub_uint32_0(a uint32) uint32 { return a - 0 }
 
 //go:noinline
-func sub_0_uint32_ssa(a uint32) uint32 {
-       return 0 - a
-}
+func sub_0_uint32(a uint32) uint32 { return 0 - a }
 
 //go:noinline
-func sub_uint32_1_ssa(a uint32) uint32 {
-       return a - 1
-}
+func sub_uint32_1(a uint32) uint32 { return a - 1 }
 
 //go:noinline
-func sub_1_uint32_ssa(a uint32) uint32 {
-       return 1 - a
-}
+func sub_1_uint32(a uint32) uint32 { return 1 - a }
 
 //go:noinline
-func sub_uint32_4294967295_ssa(a uint32) uint32 {
-       return a - 4294967295
-}
+func sub_uint32_4294967295(a uint32) uint32 { return a - 4294967295 }
 
 //go:noinline
-func sub_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 - a
-}
+func sub_4294967295_uint32(a uint32) uint32 { return 4294967295 - a }
 
 //go:noinline
-func div_0_uint32_ssa(a uint32) uint32 {
-       return 0 / a
-}
+func div_0_uint32(a uint32) uint32 { return 0 / a }
 
 //go:noinline
-func div_uint32_1_ssa(a uint32) uint32 {
-       return a / 1
-}
+func div_uint32_1(a uint32) uint32 { return a / 1 }
 
 //go:noinline
-func div_1_uint32_ssa(a uint32) uint32 {
-       return 1 / a
-}
+func div_1_uint32(a uint32) uint32 { return 1 / a }
 
 //go:noinline
-func div_uint32_4294967295_ssa(a uint32) uint32 {
-       return a / 4294967295
-}
+func div_uint32_4294967295(a uint32) uint32 { return a / 4294967295 }
 
 //go:noinline
-func div_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 / a
-}
+func div_4294967295_uint32(a uint32) uint32 { return 4294967295 / a }
 
 //go:noinline
-func mul_uint32_0_ssa(a uint32) uint32 {
-       return a * 0
-}
+func mul_uint32_0(a uint32) uint32 { return a * 0 }
 
 //go:noinline
-func mul_0_uint32_ssa(a uint32) uint32 {
-       return 0 * a
-}
+func mul_0_uint32(a uint32) uint32 { return 0 * a }
 
 //go:noinline
-func mul_uint32_1_ssa(a uint32) uint32 {
-       return a * 1
-}
+func mul_uint32_1(a uint32) uint32 { return a * 1 }
 
 //go:noinline
-func mul_1_uint32_ssa(a uint32) uint32 {
-       return 1 * a
-}
+func mul_1_uint32(a uint32) uint32 { return 1 * a }
 
 //go:noinline
-func mul_uint32_4294967295_ssa(a uint32) uint32 {
-       return a * 4294967295
-}
+func mul_uint32_4294967295(a uint32) uint32 { return a * 4294967295 }
 
 //go:noinline
-func mul_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 * a
-}
+func mul_4294967295_uint32(a uint32) uint32 { return 4294967295 * a }
 
 //go:noinline
-func lsh_uint32_0_ssa(a uint32) uint32 {
-       return a << 0
-}
+func lsh_uint32_0(a uint32) uint32 { return a << 0 }
 
 //go:noinline
-func lsh_0_uint32_ssa(a uint32) uint32 {
-       return 0 << a
-}
+func lsh_0_uint32(a uint32) uint32 { return 0 << a }
 
 //go:noinline
-func lsh_uint32_1_ssa(a uint32) uint32 {
-       return a << 1
-}
+func lsh_uint32_1(a uint32) uint32 { return a << 1 }
 
 //go:noinline
-func lsh_1_uint32_ssa(a uint32) uint32 {
-       return 1 << a
-}
+func lsh_1_uint32(a uint32) uint32 { return 1 << a }
 
 //go:noinline
-func lsh_uint32_4294967295_ssa(a uint32) uint32 {
-       return a << 4294967295
-}
+func lsh_uint32_4294967295(a uint32) uint32 { return a << 4294967295 }
 
 //go:noinline
-func lsh_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 << a
-}
+func lsh_4294967295_uint32(a uint32) uint32 { return 4294967295 << a }
 
 //go:noinline
-func rsh_uint32_0_ssa(a uint32) uint32 {
-       return a >> 0
-}
+func rsh_uint32_0(a uint32) uint32 { return a >> 0 }
 
 //go:noinline
-func rsh_0_uint32_ssa(a uint32) uint32 {
-       return 0 >> a
-}
+func rsh_0_uint32(a uint32) uint32 { return 0 >> a }
 
 //go:noinline
-func rsh_uint32_1_ssa(a uint32) uint32 {
-       return a >> 1
-}
+func rsh_uint32_1(a uint32) uint32 { return a >> 1 }
 
 //go:noinline
-func rsh_1_uint32_ssa(a uint32) uint32 {
-       return 1 >> a
-}
+func rsh_1_uint32(a uint32) uint32 { return 1 >> a }
 
 //go:noinline
-func rsh_uint32_4294967295_ssa(a uint32) uint32 {
-       return a >> 4294967295
-}
+func rsh_uint32_4294967295(a uint32) uint32 { return a >> 4294967295 }
 
 //go:noinline
-func rsh_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 >> a
-}
+func rsh_4294967295_uint32(a uint32) uint32 { return 4294967295 >> a }
 
 //go:noinline
-func mod_0_uint32_ssa(a uint32) uint32 {
-       return 0 % a
-}
+func mod_0_uint32(a uint32) uint32 { return 0 % a }
 
 //go:noinline
-func mod_uint32_1_ssa(a uint32) uint32 {
-       return a % 1
-}
+func mod_uint32_1(a uint32) uint32 { return a % 1 }
 
 //go:noinline
-func mod_1_uint32_ssa(a uint32) uint32 {
-       return 1 % a
-}
+func mod_1_uint32(a uint32) uint32 { return 1 % a }
 
 //go:noinline
-func mod_uint32_4294967295_ssa(a uint32) uint32 {
-       return a % 4294967295
-}
+func mod_uint32_4294967295(a uint32) uint32 { return a % 4294967295 }
 
 //go:noinline
-func mod_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 % a
-}
+func mod_4294967295_uint32(a uint32) uint32 { return 4294967295 % a }
 
 //go:noinline
-func and_uint32_0_ssa(a uint32) uint32 {
-       return a & 0
-}
+func and_uint32_0(a uint32) uint32 { return a & 0 }
 
 //go:noinline
-func and_0_uint32_ssa(a uint32) uint32 {
-       return 0 & a
-}
+func and_0_uint32(a uint32) uint32 { return 0 & a }
 
 //go:noinline
-func and_uint32_1_ssa(a uint32) uint32 {
-       return a & 1
-}
+func and_uint32_1(a uint32) uint32 { return a & 1 }
 
 //go:noinline
-func and_1_uint32_ssa(a uint32) uint32 {
-       return 1 & a
-}
+func and_1_uint32(a uint32) uint32 { return 1 & a }
 
 //go:noinline
-func and_uint32_4294967295_ssa(a uint32) uint32 {
-       return a & 4294967295
-}
+func and_uint32_4294967295(a uint32) uint32 { return a & 4294967295 }
 
 //go:noinline
-func and_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 & a
-}
+func and_4294967295_uint32(a uint32) uint32 { return 4294967295 & a }
 
 //go:noinline
-func or_uint32_0_ssa(a uint32) uint32 {
-       return a | 0
-}
+func or_uint32_0(a uint32) uint32 { return a | 0 }
 
 //go:noinline
-func or_0_uint32_ssa(a uint32) uint32 {
-       return 0 | a
-}
+func or_0_uint32(a uint32) uint32 { return 0 | a }
 
 //go:noinline
-func or_uint32_1_ssa(a uint32) uint32 {
-       return a | 1
-}
+func or_uint32_1(a uint32) uint32 { return a | 1 }
 
 //go:noinline
-func or_1_uint32_ssa(a uint32) uint32 {
-       return 1 | a
-}
+func or_1_uint32(a uint32) uint32 { return 1 | a }
 
 //go:noinline
-func or_uint32_4294967295_ssa(a uint32) uint32 {
-       return a | 4294967295
-}
+func or_uint32_4294967295(a uint32) uint32 { return a | 4294967295 }
 
 //go:noinline
-func or_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 | a
-}
+func or_4294967295_uint32(a uint32) uint32 { return 4294967295 | a }
 
 //go:noinline
-func xor_uint32_0_ssa(a uint32) uint32 {
-       return a ^ 0
-}
+func xor_uint32_0(a uint32) uint32 { return a ^ 0 }
 
 //go:noinline
-func xor_0_uint32_ssa(a uint32) uint32 {
-       return 0 ^ a
-}
+func xor_0_uint32(a uint32) uint32 { return 0 ^ a }
 
 //go:noinline
-func xor_uint32_1_ssa(a uint32) uint32 {
-       return a ^ 1
-}
+func xor_uint32_1(a uint32) uint32 { return a ^ 1 }
 
 //go:noinline
-func xor_1_uint32_ssa(a uint32) uint32 {
-       return 1 ^ a
-}
+func xor_1_uint32(a uint32) uint32 { return 1 ^ a }
 
 //go:noinline
-func xor_uint32_4294967295_ssa(a uint32) uint32 {
-       return a ^ 4294967295
-}
+func xor_uint32_4294967295(a uint32) uint32 { return a ^ 4294967295 }
 
 //go:noinline
-func xor_4294967295_uint32_ssa(a uint32) uint32 {
-       return 4294967295 ^ a
-}
+func xor_4294967295_uint32(a uint32) uint32 { return 4294967295 ^ a }
 
 //go:noinline
-func add_int32_Neg2147483648_ssa(a int32) int32 {
-       return a + -2147483648
-}
+func add_int32_Neg2147483648(a int32) int32 { return a + -2147483648 }
 
 //go:noinline
-func add_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 + a
-}
+func add_Neg2147483648_int32(a int32) int32 { return -2147483648 + a }
 
 //go:noinline
-func add_int32_Neg2147483647_ssa(a int32) int32 {
-       return a + -2147483647
-}
+func add_int32_Neg2147483647(a int32) int32 { return a + -2147483647 }
 
 //go:noinline
-func add_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 + a
-}
+func add_Neg2147483647_int32(a int32) int32 { return -2147483647 + a }
 
 //go:noinline
-func add_int32_Neg1_ssa(a int32) int32 {
-       return a + -1
-}
+func add_int32_Neg1(a int32) int32 { return a + -1 }
 
 //go:noinline
-func add_Neg1_int32_ssa(a int32) int32 {
-       return -1 + a
-}
+func add_Neg1_int32(a int32) int32 { return -1 + a }
 
 //go:noinline
-func add_int32_0_ssa(a int32) int32 {
-       return a + 0
-}
+func add_int32_0(a int32) int32 { return a + 0 }
 
 //go:noinline
-func add_0_int32_ssa(a int32) int32 {
-       return 0 + a
-}
+func add_0_int32(a int32) int32 { return 0 + a }
 
 //go:noinline
-func add_int32_1_ssa(a int32) int32 {
-       return a + 1
-}
+func add_int32_1(a int32) int32 { return a + 1 }
 
 //go:noinline
-func add_1_int32_ssa(a int32) int32 {
-       return 1 + a
-}
+func add_1_int32(a int32) int32 { return 1 + a }
 
 //go:noinline
-func add_int32_2147483647_ssa(a int32) int32 {
-       return a + 2147483647
-}
+func add_int32_2147483647(a int32) int32 { return a + 2147483647 }
 
 //go:noinline
-func add_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 + a
-}
+func add_2147483647_int32(a int32) int32 { return 2147483647 + a }
 
 //go:noinline
-func sub_int32_Neg2147483648_ssa(a int32) int32 {
-       return a - -2147483648
-}
+func sub_int32_Neg2147483648(a int32) int32 { return a - -2147483648 }
 
 //go:noinline
-func sub_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 - a
-}
+func sub_Neg2147483648_int32(a int32) int32 { return -2147483648 - a }
 
 //go:noinline
-func sub_int32_Neg2147483647_ssa(a int32) int32 {
-       return a - -2147483647
-}
+func sub_int32_Neg2147483647(a int32) int32 { return a - -2147483647 }
 
 //go:noinline
-func sub_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 - a
-}
+func sub_Neg2147483647_int32(a int32) int32 { return -2147483647 - a }
 
 //go:noinline
-func sub_int32_Neg1_ssa(a int32) int32 {
-       return a - -1
-}
+func sub_int32_Neg1(a int32) int32 { return a - -1 }
 
 //go:noinline
-func sub_Neg1_int32_ssa(a int32) int32 {
-       return -1 - a
-}
+func sub_Neg1_int32(a int32) int32 { return -1 - a }
 
 //go:noinline
-func sub_int32_0_ssa(a int32) int32 {
-       return a - 0
-}
+func sub_int32_0(a int32) int32 { return a - 0 }
 
 //go:noinline
-func sub_0_int32_ssa(a int32) int32 {
-       return 0 - a
-}
+func sub_0_int32(a int32) int32 { return 0 - a }
 
 //go:noinline
-func sub_int32_1_ssa(a int32) int32 {
-       return a - 1
-}
+func sub_int32_1(a int32) int32 { return a - 1 }
 
 //go:noinline
-func sub_1_int32_ssa(a int32) int32 {
-       return 1 - a
-}
+func sub_1_int32(a int32) int32 { return 1 - a }
 
 //go:noinline
-func sub_int32_2147483647_ssa(a int32) int32 {
-       return a - 2147483647
-}
+func sub_int32_2147483647(a int32) int32 { return a - 2147483647 }
 
 //go:noinline
-func sub_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 - a
-}
+func sub_2147483647_int32(a int32) int32 { return 2147483647 - a }
 
 //go:noinline
-func div_int32_Neg2147483648_ssa(a int32) int32 {
-       return a / -2147483648
-}
+func div_int32_Neg2147483648(a int32) int32 { return a / -2147483648 }
 
 //go:noinline
-func div_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 / a
-}
+func div_Neg2147483648_int32(a int32) int32 { return -2147483648 / a }
 
 //go:noinline
-func div_int32_Neg2147483647_ssa(a int32) int32 {
-       return a / -2147483647
-}
+func div_int32_Neg2147483647(a int32) int32 { return a / -2147483647 }
 
 //go:noinline
-func div_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 / a
-}
+func div_Neg2147483647_int32(a int32) int32 { return -2147483647 / a }
 
 //go:noinline
-func div_int32_Neg1_ssa(a int32) int32 {
-       return a / -1
-}
+func div_int32_Neg1(a int32) int32 { return a / -1 }
 
 //go:noinline
-func div_Neg1_int32_ssa(a int32) int32 {
-       return -1 / a
-}
+func div_Neg1_int32(a int32) int32 { return -1 / a }
 
 //go:noinline
-func div_0_int32_ssa(a int32) int32 {
-       return 0 / a
-}
+func div_0_int32(a int32) int32 { return 0 / a }
 
 //go:noinline
-func div_int32_1_ssa(a int32) int32 {
-       return a / 1
-}
+func div_int32_1(a int32) int32 { return a / 1 }
 
 //go:noinline
-func div_1_int32_ssa(a int32) int32 {
-       return 1 / a
-}
+func div_1_int32(a int32) int32 { return 1 / a }
 
 //go:noinline
-func div_int32_2147483647_ssa(a int32) int32 {
-       return a / 2147483647
-}
+func div_int32_2147483647(a int32) int32 { return a / 2147483647 }
 
 //go:noinline
-func div_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 / a
-}
+func div_2147483647_int32(a int32) int32 { return 2147483647 / a }
 
 //go:noinline
-func mul_int32_Neg2147483648_ssa(a int32) int32 {
-       return a * -2147483648
-}
+func mul_int32_Neg2147483648(a int32) int32 { return a * -2147483648 }
 
 //go:noinline
-func mul_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 * a
-}
+func mul_Neg2147483648_int32(a int32) int32 { return -2147483648 * a }
 
 //go:noinline
-func mul_int32_Neg2147483647_ssa(a int32) int32 {
-       return a * -2147483647
-}
+func mul_int32_Neg2147483647(a int32) int32 { return a * -2147483647 }
 
 //go:noinline
-func mul_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 * a
-}
+func mul_Neg2147483647_int32(a int32) int32 { return -2147483647 * a }
 
 //go:noinline
-func mul_int32_Neg1_ssa(a int32) int32 {
-       return a * -1
-}
+func mul_int32_Neg1(a int32) int32 { return a * -1 }
 
 //go:noinline
-func mul_Neg1_int32_ssa(a int32) int32 {
-       return -1 * a
-}
+func mul_Neg1_int32(a int32) int32 { return -1 * a }
 
 //go:noinline
-func mul_int32_0_ssa(a int32) int32 {
-       return a * 0
-}
+func mul_int32_0(a int32) int32 { return a * 0 }
 
 //go:noinline
-func mul_0_int32_ssa(a int32) int32 {
-       return 0 * a
-}
+func mul_0_int32(a int32) int32 { return 0 * a }
 
 //go:noinline
-func mul_int32_1_ssa(a int32) int32 {
-       return a * 1
-}
+func mul_int32_1(a int32) int32 { return a * 1 }
 
 //go:noinline
-func mul_1_int32_ssa(a int32) int32 {
-       return 1 * a
-}
+func mul_1_int32(a int32) int32 { return 1 * a }
 
 //go:noinline
-func mul_int32_2147483647_ssa(a int32) int32 {
-       return a * 2147483647
-}
+func mul_int32_2147483647(a int32) int32 { return a * 2147483647 }
 
 //go:noinline
-func mul_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 * a
-}
+func mul_2147483647_int32(a int32) int32 { return 2147483647 * a }
 
 //go:noinline
-func mod_int32_Neg2147483648_ssa(a int32) int32 {
-       return a % -2147483648
-}
+func mod_int32_Neg2147483648(a int32) int32 { return a % -2147483648 }
 
 //go:noinline
-func mod_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 % a
-}
+func mod_Neg2147483648_int32(a int32) int32 { return -2147483648 % a }
 
 //go:noinline
-func mod_int32_Neg2147483647_ssa(a int32) int32 {
-       return a % -2147483647
-}
+func mod_int32_Neg2147483647(a int32) int32 { return a % -2147483647 }
 
 //go:noinline
-func mod_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 % a
-}
+func mod_Neg2147483647_int32(a int32) int32 { return -2147483647 % a }
 
 //go:noinline
-func mod_int32_Neg1_ssa(a int32) int32 {
-       return a % -1
-}
+func mod_int32_Neg1(a int32) int32 { return a % -1 }
 
 //go:noinline
-func mod_Neg1_int32_ssa(a int32) int32 {
-       return -1 % a
-}
+func mod_Neg1_int32(a int32) int32 { return -1 % a }
 
 //go:noinline
-func mod_0_int32_ssa(a int32) int32 {
-       return 0 % a
-}
+func mod_0_int32(a int32) int32 { return 0 % a }
 
 //go:noinline
-func mod_int32_1_ssa(a int32) int32 {
-       return a % 1
-}
+func mod_int32_1(a int32) int32 { return a % 1 }
 
 //go:noinline
-func mod_1_int32_ssa(a int32) int32 {
-       return 1 % a
-}
+func mod_1_int32(a int32) int32 { return 1 % a }
 
 //go:noinline
-func mod_int32_2147483647_ssa(a int32) int32 {
-       return a % 2147483647
-}
+func mod_int32_2147483647(a int32) int32 { return a % 2147483647 }
 
 //go:noinline
-func mod_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 % a
-}
+func mod_2147483647_int32(a int32) int32 { return 2147483647 % a }
 
 //go:noinline
-func and_int32_Neg2147483648_ssa(a int32) int32 {
-       return a & -2147483648
-}
+func and_int32_Neg2147483648(a int32) int32 { return a & -2147483648 }
 
 //go:noinline
-func and_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 & a
-}
+func and_Neg2147483648_int32(a int32) int32 { return -2147483648 & a }
 
 //go:noinline
-func and_int32_Neg2147483647_ssa(a int32) int32 {
-       return a & -2147483647
-}
+func and_int32_Neg2147483647(a int32) int32 { return a & -2147483647 }
 
 //go:noinline
-func and_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 & a
-}
+func and_Neg2147483647_int32(a int32) int32 { return -2147483647 & a }
 
 //go:noinline
-func and_int32_Neg1_ssa(a int32) int32 {
-       return a & -1
-}
+func and_int32_Neg1(a int32) int32 { return a & -1 }
 
 //go:noinline
-func and_Neg1_int32_ssa(a int32) int32 {
-       return -1 & a
-}
+func and_Neg1_int32(a int32) int32 { return -1 & a }
 
 //go:noinline
-func and_int32_0_ssa(a int32) int32 {
-       return a & 0
-}
+func and_int32_0(a int32) int32 { return a & 0 }
 
 //go:noinline
-func and_0_int32_ssa(a int32) int32 {
-       return 0 & a
-}
+func and_0_int32(a int32) int32 { return 0 & a }
 
 //go:noinline
-func and_int32_1_ssa(a int32) int32 {
-       return a & 1
-}
+func and_int32_1(a int32) int32 { return a & 1 }
 
 //go:noinline
-func and_1_int32_ssa(a int32) int32 {
-       return 1 & a
-}
+func and_1_int32(a int32) int32 { return 1 & a }
 
 //go:noinline
-func and_int32_2147483647_ssa(a int32) int32 {
-       return a & 2147483647
-}
+func and_int32_2147483647(a int32) int32 { return a & 2147483647 }
 
 //go:noinline
-func and_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 & a
-}
+func and_2147483647_int32(a int32) int32 { return 2147483647 & a }
 
 //go:noinline
-func or_int32_Neg2147483648_ssa(a int32) int32 {
-       return a | -2147483648
-}
+func or_int32_Neg2147483648(a int32) int32 { return a | -2147483648 }
 
 //go:noinline
-func or_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 | a
-}
+func or_Neg2147483648_int32(a int32) int32 { return -2147483648 | a }
 
 //go:noinline
-func or_int32_Neg2147483647_ssa(a int32) int32 {
-       return a | -2147483647
-}
+func or_int32_Neg2147483647(a int32) int32 { return a | -2147483647 }
 
 //go:noinline
-func or_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 | a
-}
+func or_Neg2147483647_int32(a int32) int32 { return -2147483647 | a }
 
 //go:noinline
-func or_int32_Neg1_ssa(a int32) int32 {
-       return a | -1
-}
+func or_int32_Neg1(a int32) int32 { return a | -1 }
 
 //go:noinline
-func or_Neg1_int32_ssa(a int32) int32 {
-       return -1 | a
-}
+func or_Neg1_int32(a int32) int32 { return -1 | a }
 
 //go:noinline
-func or_int32_0_ssa(a int32) int32 {
-       return a | 0
-}
+func or_int32_0(a int32) int32 { return a | 0 }
 
 //go:noinline
-func or_0_int32_ssa(a int32) int32 {
-       return 0 | a
-}
+func or_0_int32(a int32) int32 { return 0 | a }
 
 //go:noinline
-func or_int32_1_ssa(a int32) int32 {
-       return a | 1
-}
+func or_int32_1(a int32) int32 { return a | 1 }
 
 //go:noinline
-func or_1_int32_ssa(a int32) int32 {
-       return 1 | a
-}
+func or_1_int32(a int32) int32 { return 1 | a }
 
 //go:noinline
-func or_int32_2147483647_ssa(a int32) int32 {
-       return a | 2147483647
-}
+func or_int32_2147483647(a int32) int32 { return a | 2147483647 }
 
 //go:noinline
-func or_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 | a
-}
+func or_2147483647_int32(a int32) int32 { return 2147483647 | a }
 
 //go:noinline
-func xor_int32_Neg2147483648_ssa(a int32) int32 {
-       return a ^ -2147483648
-}
+func xor_int32_Neg2147483648(a int32) int32 { return a ^ -2147483648 }
 
 //go:noinline
-func xor_Neg2147483648_int32_ssa(a int32) int32 {
-       return -2147483648 ^ a
-}
+func xor_Neg2147483648_int32(a int32) int32 { return -2147483648 ^ a }
 
 //go:noinline
-func xor_int32_Neg2147483647_ssa(a int32) int32 {
-       return a ^ -2147483647
-}
+func xor_int32_Neg2147483647(a int32) int32 { return a ^ -2147483647 }
 
 //go:noinline
-func xor_Neg2147483647_int32_ssa(a int32) int32 {
-       return -2147483647 ^ a
-}
+func xor_Neg2147483647_int32(a int32) int32 { return -2147483647 ^ a }
 
 //go:noinline
-func xor_int32_Neg1_ssa(a int32) int32 {
-       return a ^ -1
-}
+func xor_int32_Neg1(a int32) int32 { return a ^ -1 }
 
 //go:noinline
-func xor_Neg1_int32_ssa(a int32) int32 {
-       return -1 ^ a
-}
+func xor_Neg1_int32(a int32) int32 { return -1 ^ a }
 
 //go:noinline
-func xor_int32_0_ssa(a int32) int32 {
-       return a ^ 0
-}
+func xor_int32_0(a int32) int32 { return a ^ 0 }
 
 //go:noinline
-func xor_0_int32_ssa(a int32) int32 {
-       return 0 ^ a
-}
+func xor_0_int32(a int32) int32 { return 0 ^ a }
 
 //go:noinline
-func xor_int32_1_ssa(a int32) int32 {
-       return a ^ 1
-}
+func xor_int32_1(a int32) int32 { return a ^ 1 }
 
 //go:noinline
-func xor_1_int32_ssa(a int32) int32 {
-       return 1 ^ a
-}
+func xor_1_int32(a int32) int32 { return 1 ^ a }
 
 //go:noinline
-func xor_int32_2147483647_ssa(a int32) int32 {
-       return a ^ 2147483647
-}
+func xor_int32_2147483647(a int32) int32 { return a ^ 2147483647 }
 
 //go:noinline
-func xor_2147483647_int32_ssa(a int32) int32 {
-       return 2147483647 ^ a
-}
+func xor_2147483647_int32(a int32) int32 { return 2147483647 ^ a }
 
 //go:noinline
-func add_uint16_0_ssa(a uint16) uint16 {
-       return a + 0
-}
+func add_uint16_0(a uint16) uint16 { return a + 0 }
 
 //go:noinline
-func add_0_uint16_ssa(a uint16) uint16 {
-       return 0 + a
-}
+func add_0_uint16(a uint16) uint16 { return 0 + a }
 
 //go:noinline
-func add_uint16_1_ssa(a uint16) uint16 {
-       return a + 1
-}
+func add_uint16_1(a uint16) uint16 { return a + 1 }
 
 //go:noinline
-func add_1_uint16_ssa(a uint16) uint16 {
-       return 1 + a
-}
+func add_1_uint16(a uint16) uint16 { return 1 + a }
 
 //go:noinline
-func add_uint16_65535_ssa(a uint16) uint16 {
-       return a + 65535
-}
+func add_uint16_65535(a uint16) uint16 { return a + 65535 }
 
 //go:noinline
-func add_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 + a
-}
+func add_65535_uint16(a uint16) uint16 { return 65535 + a }
 
 //go:noinline
-func sub_uint16_0_ssa(a uint16) uint16 {
-       return a - 0
-}
+func sub_uint16_0(a uint16) uint16 { return a - 0 }
 
 //go:noinline
-func sub_0_uint16_ssa(a uint16) uint16 {
-       return 0 - a
-}
+func sub_0_uint16(a uint16) uint16 { return 0 - a }
 
 //go:noinline
-func sub_uint16_1_ssa(a uint16) uint16 {
-       return a - 1
-}
+func sub_uint16_1(a uint16) uint16 { return a - 1 }
 
 //go:noinline
-func sub_1_uint16_ssa(a uint16) uint16 {
-       return 1 - a
-}
+func sub_1_uint16(a uint16) uint16 { return 1 - a }
 
 //go:noinline
-func sub_uint16_65535_ssa(a uint16) uint16 {
-       return a - 65535
-}
+func sub_uint16_65535(a uint16) uint16 { return a - 65535 }
 
 //go:noinline
-func sub_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 - a
-}
+func sub_65535_uint16(a uint16) uint16 { return 65535 - a }
 
 //go:noinline
-func div_0_uint16_ssa(a uint16) uint16 {
-       return 0 / a
-}
+func div_0_uint16(a uint16) uint16 { return 0 / a }
 
 //go:noinline
-func div_uint16_1_ssa(a uint16) uint16 {
-       return a / 1
-}
+func div_uint16_1(a uint16) uint16 { return a / 1 }
 
 //go:noinline
-func div_1_uint16_ssa(a uint16) uint16 {
-       return 1 / a
-}
+func div_1_uint16(a uint16) uint16 { return 1 / a }
 
 //go:noinline
-func div_uint16_65535_ssa(a uint16) uint16 {
-       return a / 65535
-}
+func div_uint16_65535(a uint16) uint16 { return a / 65535 }
 
 //go:noinline
-func div_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 / a
-}
+func div_65535_uint16(a uint16) uint16 { return 65535 / a }
 
 //go:noinline
-func mul_uint16_0_ssa(a uint16) uint16 {
-       return a * 0
-}
+func mul_uint16_0(a uint16) uint16 { return a * 0 }
 
 //go:noinline
-func mul_0_uint16_ssa(a uint16) uint16 {
-       return 0 * a
-}
+func mul_0_uint16(a uint16) uint16 { return 0 * a }
 
 //go:noinline
-func mul_uint16_1_ssa(a uint16) uint16 {
-       return a * 1
-}
+func mul_uint16_1(a uint16) uint16 { return a * 1 }
 
 //go:noinline
-func mul_1_uint16_ssa(a uint16) uint16 {
-       return 1 * a
-}
+func mul_1_uint16(a uint16) uint16 { return 1 * a }
 
 //go:noinline
-func mul_uint16_65535_ssa(a uint16) uint16 {
-       return a * 65535
-}
+func mul_uint16_65535(a uint16) uint16 { return a * 65535 }
 
 //go:noinline
-func mul_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 * a
-}
+func mul_65535_uint16(a uint16) uint16 { return 65535 * a }
 
 //go:noinline
-func lsh_uint16_0_ssa(a uint16) uint16 {
-       return a << 0
-}
+func lsh_uint16_0(a uint16) uint16 { return a << 0 }
 
 //go:noinline
-func lsh_0_uint16_ssa(a uint16) uint16 {
-       return 0 << a
-}
+func lsh_0_uint16(a uint16) uint16 { return 0 << a }
 
 //go:noinline
-func lsh_uint16_1_ssa(a uint16) uint16 {
-       return a << 1
-}
+func lsh_uint16_1(a uint16) uint16 { return a << 1 }
 
 //go:noinline
-func lsh_1_uint16_ssa(a uint16) uint16 {
-       return 1 << a
-}
+func lsh_1_uint16(a uint16) uint16 { return 1 << a }
 
 //go:noinline
-func lsh_uint16_65535_ssa(a uint16) uint16 {
-       return a << 65535
-}
+func lsh_uint16_65535(a uint16) uint16 { return a << 65535 }
 
 //go:noinline
-func lsh_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 << a
-}
+func lsh_65535_uint16(a uint16) uint16 { return 65535 << a }
 
 //go:noinline
-func rsh_uint16_0_ssa(a uint16) uint16 {
-       return a >> 0
-}
+func rsh_uint16_0(a uint16) uint16 { return a >> 0 }
 
 //go:noinline
-func rsh_0_uint16_ssa(a uint16) uint16 {
-       return 0 >> a
-}
+func rsh_0_uint16(a uint16) uint16 { return 0 >> a }
 
 //go:noinline
-func rsh_uint16_1_ssa(a uint16) uint16 {
-       return a >> 1
-}
+func rsh_uint16_1(a uint16) uint16 { return a >> 1 }
 
 //go:noinline
-func rsh_1_uint16_ssa(a uint16) uint16 {
-       return 1 >> a
-}
+func rsh_1_uint16(a uint16) uint16 { return 1 >> a }
 
 //go:noinline
-func rsh_uint16_65535_ssa(a uint16) uint16 {
-       return a >> 65535
-}
+func rsh_uint16_65535(a uint16) uint16 { return a >> 65535 }
 
 //go:noinline
-func rsh_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 >> a
-}
+func rsh_65535_uint16(a uint16) uint16 { return 65535 >> a }
 
 //go:noinline
-func mod_0_uint16_ssa(a uint16) uint16 {
-       return 0 % a
-}
+func mod_0_uint16(a uint16) uint16 { return 0 % a }
 
 //go:noinline
-func mod_uint16_1_ssa(a uint16) uint16 {
-       return a % 1
-}
+func mod_uint16_1(a uint16) uint16 { return a % 1 }
 
 //go:noinline
-func mod_1_uint16_ssa(a uint16) uint16 {
-       return 1 % a
-}
+func mod_1_uint16(a uint16) uint16 { return 1 % a }
 
 //go:noinline
-func mod_uint16_65535_ssa(a uint16) uint16 {
-       return a % 65535
-}
+func mod_uint16_65535(a uint16) uint16 { return a % 65535 }
 
 //go:noinline
-func mod_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 % a
-}
+func mod_65535_uint16(a uint16) uint16 { return 65535 % a }
 
 //go:noinline
-func and_uint16_0_ssa(a uint16) uint16 {
-       return a & 0
-}
+func and_uint16_0(a uint16) uint16 { return a & 0 }
 
 //go:noinline
-func and_0_uint16_ssa(a uint16) uint16 {
-       return 0 & a
-}
+func and_0_uint16(a uint16) uint16 { return 0 & a }
 
 //go:noinline
-func and_uint16_1_ssa(a uint16) uint16 {
-       return a & 1
-}
+func and_uint16_1(a uint16) uint16 { return a & 1 }
 
 //go:noinline
-func and_1_uint16_ssa(a uint16) uint16 {
-       return 1 & a
-}
+func and_1_uint16(a uint16) uint16 { return 1 & a }
 
 //go:noinline
-func and_uint16_65535_ssa(a uint16) uint16 {
-       return a & 65535
-}
+func and_uint16_65535(a uint16) uint16 { return a & 65535 }
 
 //go:noinline
-func and_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 & a
-}
+func and_65535_uint16(a uint16) uint16 { return 65535 & a }
 
 //go:noinline
-func or_uint16_0_ssa(a uint16) uint16 {
-       return a | 0
-}
+func or_uint16_0(a uint16) uint16 { return a | 0 }
 
 //go:noinline
-func or_0_uint16_ssa(a uint16) uint16 {
-       return 0 | a
-}
+func or_0_uint16(a uint16) uint16 { return 0 | a }
 
 //go:noinline
-func or_uint16_1_ssa(a uint16) uint16 {
-       return a | 1
-}
+func or_uint16_1(a uint16) uint16 { return a | 1 }
 
 //go:noinline
-func or_1_uint16_ssa(a uint16) uint16 {
-       return 1 | a
-}
+func or_1_uint16(a uint16) uint16 { return 1 | a }
 
 //go:noinline
-func or_uint16_65535_ssa(a uint16) uint16 {
-       return a | 65535
-}
+func or_uint16_65535(a uint16) uint16 { return a | 65535 }
 
 //go:noinline
-func or_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 | a
-}
+func or_65535_uint16(a uint16) uint16 { return 65535 | a }
 
 //go:noinline
-func xor_uint16_0_ssa(a uint16) uint16 {
-       return a ^ 0
-}
+func xor_uint16_0(a uint16) uint16 { return a ^ 0 }
 
 //go:noinline
-func xor_0_uint16_ssa(a uint16) uint16 {
-       return 0 ^ a
-}
+func xor_0_uint16(a uint16) uint16 { return 0 ^ a }
 
 //go:noinline
-func xor_uint16_1_ssa(a uint16) uint16 {
-       return a ^ 1
-}
+func xor_uint16_1(a uint16) uint16 { return a ^ 1 }
 
 //go:noinline
-func xor_1_uint16_ssa(a uint16) uint16 {
-       return 1 ^ a
-}
+func xor_1_uint16(a uint16) uint16 { return 1 ^ a }
 
 //go:noinline
-func xor_uint16_65535_ssa(a uint16) uint16 {
-       return a ^ 65535
-}
+func xor_uint16_65535(a uint16) uint16 { return a ^ 65535 }
 
 //go:noinline
-func xor_65535_uint16_ssa(a uint16) uint16 {
-       return 65535 ^ a
-}
+func xor_65535_uint16(a uint16) uint16 { return 65535 ^ a }
 
 //go:noinline
-func add_int16_Neg32768_ssa(a int16) int16 {
-       return a + -32768
-}
+func add_int16_Neg32768(a int16) int16 { return a + -32768 }
 
 //go:noinline
-func add_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 + a
-}
+func add_Neg32768_int16(a int16) int16 { return -32768 + a }
 
 //go:noinline
-func add_int16_Neg32767_ssa(a int16) int16 {
-       return a + -32767
-}
+func add_int16_Neg32767(a int16) int16 { return a + -32767 }
 
 //go:noinline
-func add_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 + a
-}
+func add_Neg32767_int16(a int16) int16 { return -32767 + a }
 
 //go:noinline
-func add_int16_Neg1_ssa(a int16) int16 {
-       return a + -1
-}
+func add_int16_Neg1(a int16) int16 { return a + -1 }
 
 //go:noinline
-func add_Neg1_int16_ssa(a int16) int16 {
-       return -1 + a
-}
+func add_Neg1_int16(a int16) int16 { return -1 + a }
 
 //go:noinline
-func add_int16_0_ssa(a int16) int16 {
-       return a + 0
-}
+func add_int16_0(a int16) int16 { return a + 0 }
 
 //go:noinline
-func add_0_int16_ssa(a int16) int16 {
-       return 0 + a
-}
+func add_0_int16(a int16) int16 { return 0 + a }
 
 //go:noinline
-func add_int16_1_ssa(a int16) int16 {
-       return a + 1
-}
+func add_int16_1(a int16) int16 { return a + 1 }
 
 //go:noinline
-func add_1_int16_ssa(a int16) int16 {
-       return 1 + a
-}
+func add_1_int16(a int16) int16 { return 1 + a }
 
 //go:noinline
-func add_int16_32766_ssa(a int16) int16 {
-       return a + 32766
-}
+func add_int16_32766(a int16) int16 { return a + 32766 }
 
 //go:noinline
-func add_32766_int16_ssa(a int16) int16 {
-       return 32766 + a
-}
+func add_32766_int16(a int16) int16 { return 32766 + a }
 
 //go:noinline
-func add_int16_32767_ssa(a int16) int16 {
-       return a + 32767
-}
+func add_int16_32767(a int16) int16 { return a + 32767 }
 
 //go:noinline
-func add_32767_int16_ssa(a int16) int16 {
-       return 32767 + a
-}
+func add_32767_int16(a int16) int16 { return 32767 + a }
 
 //go:noinline
-func sub_int16_Neg32768_ssa(a int16) int16 {
-       return a - -32768
-}
+func sub_int16_Neg32768(a int16) int16 { return a - -32768 }
 
 //go:noinline
-func sub_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 - a
-}
+func sub_Neg32768_int16(a int16) int16 { return -32768 - a }
 
 //go:noinline
-func sub_int16_Neg32767_ssa(a int16) int16 {
-       return a - -32767
-}
+func sub_int16_Neg32767(a int16) int16 { return a - -32767 }
 
 //go:noinline
-func sub_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 - a
-}
+func sub_Neg32767_int16(a int16) int16 { return -32767 - a }
 
 //go:noinline
-func sub_int16_Neg1_ssa(a int16) int16 {
-       return a - -1
-}
+func sub_int16_Neg1(a int16) int16 { return a - -1 }
 
 //go:noinline
-func sub_Neg1_int16_ssa(a int16) int16 {
-       return -1 - a
-}
+func sub_Neg1_int16(a int16) int16 { return -1 - a }
 
 //go:noinline
-func sub_int16_0_ssa(a int16) int16 {
-       return a - 0
-}
+func sub_int16_0(a int16) int16 { return a - 0 }
 
 //go:noinline
-func sub_0_int16_ssa(a int16) int16 {
-       return 0 - a
-}
+func sub_0_int16(a int16) int16 { return 0 - a }
 
 //go:noinline
-func sub_int16_1_ssa(a int16) int16 {
-       return a - 1
-}
+func sub_int16_1(a int16) int16 { return a - 1 }
 
 //go:noinline
-func sub_1_int16_ssa(a int16) int16 {
-       return 1 - a
-}
+func sub_1_int16(a int16) int16 { return 1 - a }
 
 //go:noinline
-func sub_int16_32766_ssa(a int16) int16 {
-       return a - 32766
-}
+func sub_int16_32766(a int16) int16 { return a - 32766 }
 
 //go:noinline
-func sub_32766_int16_ssa(a int16) int16 {
-       return 32766 - a
-}
+func sub_32766_int16(a int16) int16 { return 32766 - a }
 
 //go:noinline
-func sub_int16_32767_ssa(a int16) int16 {
-       return a - 32767
-}
+func sub_int16_32767(a int16) int16 { return a - 32767 }
 
 //go:noinline
-func sub_32767_int16_ssa(a int16) int16 {
-       return 32767 - a
-}
+func sub_32767_int16(a int16) int16 { return 32767 - a }
 
 //go:noinline
-func div_int16_Neg32768_ssa(a int16) int16 {
-       return a / -32768
-}
+func div_int16_Neg32768(a int16) int16 { return a / -32768 }
 
 //go:noinline
-func div_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 / a
-}
+func div_Neg32768_int16(a int16) int16 { return -32768 / a }
 
 //go:noinline
-func div_int16_Neg32767_ssa(a int16) int16 {
-       return a / -32767
-}
+func div_int16_Neg32767(a int16) int16 { return a / -32767 }
 
 //go:noinline
-func div_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 / a
-}
+func div_Neg32767_int16(a int16) int16 { return -32767 / a }
 
 //go:noinline
-func div_int16_Neg1_ssa(a int16) int16 {
-       return a / -1
-}
+func div_int16_Neg1(a int16) int16 { return a / -1 }
 
 //go:noinline
-func div_Neg1_int16_ssa(a int16) int16 {
-       return -1 / a
-}
+func div_Neg1_int16(a int16) int16 { return -1 / a }
 
 //go:noinline
-func div_0_int16_ssa(a int16) int16 {
-       return 0 / a
-}
+func div_0_int16(a int16) int16 { return 0 / a }
 
 //go:noinline
-func div_int16_1_ssa(a int16) int16 {
-       return a / 1
-}
+func div_int16_1(a int16) int16 { return a / 1 }
 
 //go:noinline
-func div_1_int16_ssa(a int16) int16 {
-       return 1 / a
-}
+func div_1_int16(a int16) int16 { return 1 / a }
 
 //go:noinline
-func div_int16_32766_ssa(a int16) int16 {
-       return a / 32766
-}
+func div_int16_32766(a int16) int16 { return a / 32766 }
 
 //go:noinline
-func div_32766_int16_ssa(a int16) int16 {
-       return 32766 / a
-}
+func div_32766_int16(a int16) int16 { return 32766 / a }
 
 //go:noinline
-func div_int16_32767_ssa(a int16) int16 {
-       return a / 32767
-}
+func div_int16_32767(a int16) int16 { return a / 32767 }
 
 //go:noinline
-func div_32767_int16_ssa(a int16) int16 {
-       return 32767 / a
-}
+func div_32767_int16(a int16) int16 { return 32767 / a }
 
 //go:noinline
-func mul_int16_Neg32768_ssa(a int16) int16 {
-       return a * -32768
-}
+func mul_int16_Neg32768(a int16) int16 { return a * -32768 }
 
 //go:noinline
-func mul_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 * a
-}
+func mul_Neg32768_int16(a int16) int16 { return -32768 * a }
 
 //go:noinline
-func mul_int16_Neg32767_ssa(a int16) int16 {
-       return a * -32767
-}
+func mul_int16_Neg32767(a int16) int16 { return a * -32767 }
 
 //go:noinline
-func mul_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 * a
-}
+func mul_Neg32767_int16(a int16) int16 { return -32767 * a }
 
 //go:noinline
-func mul_int16_Neg1_ssa(a int16) int16 {
-       return a * -1
-}
+func mul_int16_Neg1(a int16) int16 { return a * -1 }
 
 //go:noinline
-func mul_Neg1_int16_ssa(a int16) int16 {
-       return -1 * a
-}
+func mul_Neg1_int16(a int16) int16 { return -1 * a }
 
 //go:noinline
-func mul_int16_0_ssa(a int16) int16 {
-       return a * 0
-}
+func mul_int16_0(a int16) int16 { return a * 0 }
 
 //go:noinline
-func mul_0_int16_ssa(a int16) int16 {
-       return 0 * a
-}
+func mul_0_int16(a int16) int16 { return 0 * a }
 
 //go:noinline
-func mul_int16_1_ssa(a int16) int16 {
-       return a * 1
-}
+func mul_int16_1(a int16) int16 { return a * 1 }
 
 //go:noinline
-func mul_1_int16_ssa(a int16) int16 {
-       return 1 * a
-}
+func mul_1_int16(a int16) int16 { return 1 * a }
 
 //go:noinline
-func mul_int16_32766_ssa(a int16) int16 {
-       return a * 32766
-}
+func mul_int16_32766(a int16) int16 { return a * 32766 }
 
 //go:noinline
-func mul_32766_int16_ssa(a int16) int16 {
-       return 32766 * a
-}
+func mul_32766_int16(a int16) int16 { return 32766 * a }
 
 //go:noinline
-func mul_int16_32767_ssa(a int16) int16 {
-       return a * 32767
-}
+func mul_int16_32767(a int16) int16 { return a * 32767 }
 
 //go:noinline
-func mul_32767_int16_ssa(a int16) int16 {
-       return 32767 * a
-}
+func mul_32767_int16(a int16) int16 { return 32767 * a }
 
 //go:noinline
-func mod_int16_Neg32768_ssa(a int16) int16 {
-       return a % -32768
-}
+func mod_int16_Neg32768(a int16) int16 { return a % -32768 }
 
 //go:noinline
-func mod_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 % a
-}
+func mod_Neg32768_int16(a int16) int16 { return -32768 % a }
 
 //go:noinline
-func mod_int16_Neg32767_ssa(a int16) int16 {
-       return a % -32767
-}
+func mod_int16_Neg32767(a int16) int16 { return a % -32767 }
 
 //go:noinline
-func mod_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 % a
-}
+func mod_Neg32767_int16(a int16) int16 { return -32767 % a }
 
 //go:noinline
-func mod_int16_Neg1_ssa(a int16) int16 {
-       return a % -1
-}
+func mod_int16_Neg1(a int16) int16 { return a % -1 }
 
 //go:noinline
-func mod_Neg1_int16_ssa(a int16) int16 {
-       return -1 % a
-}
+func mod_Neg1_int16(a int16) int16 { return -1 % a }
 
 //go:noinline
-func mod_0_int16_ssa(a int16) int16 {
-       return 0 % a
-}
+func mod_0_int16(a int16) int16 { return 0 % a }
 
 //go:noinline
-func mod_int16_1_ssa(a int16) int16 {
-       return a % 1
-}
+func mod_int16_1(a int16) int16 { return a % 1 }
 
 //go:noinline
-func mod_1_int16_ssa(a int16) int16 {
-       return 1 % a
-}
+func mod_1_int16(a int16) int16 { return 1 % a }
 
 //go:noinline
-func mod_int16_32766_ssa(a int16) int16 {
-       return a % 32766
-}
+func mod_int16_32766(a int16) int16 { return a % 32766 }
 
 //go:noinline
-func mod_32766_int16_ssa(a int16) int16 {
-       return 32766 % a
-}
+func mod_32766_int16(a int16) int16 { return 32766 % a }
 
 //go:noinline
-func mod_int16_32767_ssa(a int16) int16 {
-       return a % 32767
-}
+func mod_int16_32767(a int16) int16 { return a % 32767 }
 
 //go:noinline
-func mod_32767_int16_ssa(a int16) int16 {
-       return 32767 % a
-}
+func mod_32767_int16(a int16) int16 { return 32767 % a }
 
 //go:noinline
-func and_int16_Neg32768_ssa(a int16) int16 {
-       return a & -32768
-}
+func and_int16_Neg32768(a int16) int16 { return a & -32768 }
 
 //go:noinline
-func and_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 & a
-}
+func and_Neg32768_int16(a int16) int16 { return -32768 & a }
 
 //go:noinline
-func and_int16_Neg32767_ssa(a int16) int16 {
-       return a & -32767
-}
+func and_int16_Neg32767(a int16) int16 { return a & -32767 }
 
 //go:noinline
-func and_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 & a
-}
+func and_Neg32767_int16(a int16) int16 { return -32767 & a }
 
 //go:noinline
-func and_int16_Neg1_ssa(a int16) int16 {
-       return a & -1
-}
+func and_int16_Neg1(a int16) int16 { return a & -1 }
 
 //go:noinline
-func and_Neg1_int16_ssa(a int16) int16 {
-       return -1 & a
-}
+func and_Neg1_int16(a int16) int16 { return -1 & a }
 
 //go:noinline
-func and_int16_0_ssa(a int16) int16 {
-       return a & 0
-}
+func and_int16_0(a int16) int16 { return a & 0 }
 
 //go:noinline
-func and_0_int16_ssa(a int16) int16 {
-       return 0 & a
-}
+func and_0_int16(a int16) int16 { return 0 & a }
 
 //go:noinline
-func and_int16_1_ssa(a int16) int16 {
-       return a & 1
-}
+func and_int16_1(a int16) int16 { return a & 1 }
 
 //go:noinline
-func and_1_int16_ssa(a int16) int16 {
-       return 1 & a
-}
+func and_1_int16(a int16) int16 { return 1 & a }
 
 //go:noinline
-func and_int16_32766_ssa(a int16) int16 {
-       return a & 32766
-}
+func and_int16_32766(a int16) int16 { return a & 32766 }
 
 //go:noinline
-func and_32766_int16_ssa(a int16) int16 {
-       return 32766 & a
-}
+func and_32766_int16(a int16) int16 { return 32766 & a }
 
 //go:noinline
-func and_int16_32767_ssa(a int16) int16 {
-       return a & 32767
-}
+func and_int16_32767(a int16) int16 { return a & 32767 }
 
 //go:noinline
-func and_32767_int16_ssa(a int16) int16 {
-       return 32767 & a
-}
+func and_32767_int16(a int16) int16 { return 32767 & a }
 
 //go:noinline
-func or_int16_Neg32768_ssa(a int16) int16 {
-       return a | -32768
-}
+func or_int16_Neg32768(a int16) int16 { return a | -32768 }
 
 //go:noinline
-func or_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 | a
-}
+func or_Neg32768_int16(a int16) int16 { return -32768 | a }
 
 //go:noinline
-func or_int16_Neg32767_ssa(a int16) int16 {
-       return a | -32767
-}
+func or_int16_Neg32767(a int16) int16 { return a | -32767 }
 
 //go:noinline
-func or_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 | a
-}
+func or_Neg32767_int16(a int16) int16 { return -32767 | a }
 
 //go:noinline
-func or_int16_Neg1_ssa(a int16) int16 {
-       return a | -1
-}
+func or_int16_Neg1(a int16) int16 { return a | -1 }
 
 //go:noinline
-func or_Neg1_int16_ssa(a int16) int16 {
-       return -1 | a
-}
+func or_Neg1_int16(a int16) int16 { return -1 | a }
 
 //go:noinline
-func or_int16_0_ssa(a int16) int16 {
-       return a | 0
-}
+func or_int16_0(a int16) int16 { return a | 0 }
 
 //go:noinline
-func or_0_int16_ssa(a int16) int16 {
-       return 0 | a
-}
+func or_0_int16(a int16) int16 { return 0 | a }
 
 //go:noinline
-func or_int16_1_ssa(a int16) int16 {
-       return a | 1
-}
+func or_int16_1(a int16) int16 { return a | 1 }
 
 //go:noinline
-func or_1_int16_ssa(a int16) int16 {
-       return 1 | a
-}
+func or_1_int16(a int16) int16 { return 1 | a }
 
 //go:noinline
-func or_int16_32766_ssa(a int16) int16 {
-       return a | 32766
-}
+func or_int16_32766(a int16) int16 { return a | 32766 }
 
 //go:noinline
-func or_32766_int16_ssa(a int16) int16 {
-       return 32766 | a
-}
+func or_32766_int16(a int16) int16 { return 32766 | a }
 
 //go:noinline
-func or_int16_32767_ssa(a int16) int16 {
-       return a | 32767
-}
+func or_int16_32767(a int16) int16 { return a | 32767 }
 
 //go:noinline
-func or_32767_int16_ssa(a int16) int16 {
-       return 32767 | a
-}
+func or_32767_int16(a int16) int16 { return 32767 | a }
 
 //go:noinline
-func xor_int16_Neg32768_ssa(a int16) int16 {
-       return a ^ -32768
-}
+func xor_int16_Neg32768(a int16) int16 { return a ^ -32768 }
 
 //go:noinline
-func xor_Neg32768_int16_ssa(a int16) int16 {
-       return -32768 ^ a
-}
+func xor_Neg32768_int16(a int16) int16 { return -32768 ^ a }
 
 //go:noinline
-func xor_int16_Neg32767_ssa(a int16) int16 {
-       return a ^ -32767
-}
+func xor_int16_Neg32767(a int16) int16 { return a ^ -32767 }
 
 //go:noinline
-func xor_Neg32767_int16_ssa(a int16) int16 {
-       return -32767 ^ a
-}
+func xor_Neg32767_int16(a int16) int16 { return -32767 ^ a }
 
 //go:noinline
-func xor_int16_Neg1_ssa(a int16) int16 {
-       return a ^ -1
-}
+func xor_int16_Neg1(a int16) int16 { return a ^ -1 }
 
 //go:noinline
-func xor_Neg1_int16_ssa(a int16) int16 {
-       return -1 ^ a
-}
+func xor_Neg1_int16(a int16) int16 { return -1 ^ a }
 
 //go:noinline
-func xor_int16_0_ssa(a int16) int16 {
-       return a ^ 0
-}
+func xor_int16_0(a int16) int16 { return a ^ 0 }
 
 //go:noinline
-func xor_0_int16_ssa(a int16) int16 {
-       return 0 ^ a
-}
+func xor_0_int16(a int16) int16 { return 0 ^ a }
 
 //go:noinline
-func xor_int16_1_ssa(a int16) int16 {
-       return a ^ 1
-}
+func xor_int16_1(a int16) int16 { return a ^ 1 }
 
 //go:noinline
-func xor_1_int16_ssa(a int16) int16 {
-       return 1 ^ a
-}
+func xor_1_int16(a int16) int16 { return 1 ^ a }
 
 //go:noinline
-func xor_int16_32766_ssa(a int16) int16 {
-       return a ^ 32766
-}
+func xor_int16_32766(a int16) int16 { return a ^ 32766 }
 
 //go:noinline
-func xor_32766_int16_ssa(a int16) int16 {
-       return 32766 ^ a
-}
+func xor_32766_int16(a int16) int16 { return 32766 ^ a }
 
 //go:noinline
-func xor_int16_32767_ssa(a int16) int16 {
-       return a ^ 32767
-}
+func xor_int16_32767(a int16) int16 { return a ^ 32767 }
 
 //go:noinline
-func xor_32767_int16_ssa(a int16) int16 {
-       return 32767 ^ a
-}
+func xor_32767_int16(a int16) int16 { return 32767 ^ a }
 
 //go:noinline
-func add_uint8_0_ssa(a uint8) uint8 {
-       return a + 0
-}
+func add_uint8_0(a uint8) uint8 { return a + 0 }
 
 //go:noinline
-func add_0_uint8_ssa(a uint8) uint8 {
-       return 0 + a
-}
+func add_0_uint8(a uint8) uint8 { return 0 + a }
 
 //go:noinline
-func add_uint8_1_ssa(a uint8) uint8 {
-       return a + 1
-}
+func add_uint8_1(a uint8) uint8 { return a + 1 }
 
 //go:noinline
-func add_1_uint8_ssa(a uint8) uint8 {
-       return 1 + a
-}
+func add_1_uint8(a uint8) uint8 { return 1 + a }
 
 //go:noinline
-func add_uint8_255_ssa(a uint8) uint8 {
-       return a + 255
-}
+func add_uint8_255(a uint8) uint8 { return a + 255 }
 
 //go:noinline
-func add_255_uint8_ssa(a uint8) uint8 {
-       return 255 + a
-}
+func add_255_uint8(a uint8) uint8 { return 255 + a }
 
 //go:noinline
-func sub_uint8_0_ssa(a uint8) uint8 {
-       return a - 0
-}
+func sub_uint8_0(a uint8) uint8 { return a - 0 }
 
 //go:noinline
-func sub_0_uint8_ssa(a uint8) uint8 {
-       return 0 - a
-}
+func sub_0_uint8(a uint8) uint8 { return 0 - a }
 
 //go:noinline
-func sub_uint8_1_ssa(a uint8) uint8 {
-       return a - 1
-}
+func sub_uint8_1(a uint8) uint8 { return a - 1 }
 
 //go:noinline
-func sub_1_uint8_ssa(a uint8) uint8 {
-       return 1 - a
-}
+func sub_1_uint8(a uint8) uint8 { return 1 - a }
 
 //go:noinline
-func sub_uint8_255_ssa(a uint8) uint8 {
-       return a - 255
-}
+func sub_uint8_255(a uint8) uint8 { return a - 255 }
 
 //go:noinline
-func sub_255_uint8_ssa(a uint8) uint8 {
-       return 255 - a
-}
+func sub_255_uint8(a uint8) uint8 { return 255 - a }
 
 //go:noinline
-func div_0_uint8_ssa(a uint8) uint8 {
-       return 0 / a
-}
+func div_0_uint8(a uint8) uint8 { return 0 / a }
 
 //go:noinline
-func div_uint8_1_ssa(a uint8) uint8 {
-       return a / 1
-}
+func div_uint8_1(a uint8) uint8 { return a / 1 }
 
 //go:noinline
-func div_1_uint8_ssa(a uint8) uint8 {
-       return 1 / a
-}
+func div_1_uint8(a uint8) uint8 { return 1 / a }
 
 //go:noinline
-func div_uint8_255_ssa(a uint8) uint8 {
-       return a / 255
-}
+func div_uint8_255(a uint8) uint8 { return a / 255 }
 
 //go:noinline
-func div_255_uint8_ssa(a uint8) uint8 {
-       return 255 / a
-}
+func div_255_uint8(a uint8) uint8 { return 255 / a }
 
 //go:noinline
-func mul_uint8_0_ssa(a uint8) uint8 {
-       return a * 0
-}
+func mul_uint8_0(a uint8) uint8 { return a * 0 }
 
 //go:noinline
-func mul_0_uint8_ssa(a uint8) uint8 {
-       return 0 * a
-}
+func mul_0_uint8(a uint8) uint8 { return 0 * a }
 
 //go:noinline
-func mul_uint8_1_ssa(a uint8) uint8 {
-       return a * 1
-}
+func mul_uint8_1(a uint8) uint8 { return a * 1 }
 
 //go:noinline
-func mul_1_uint8_ssa(a uint8) uint8 {
-       return 1 * a
-}
+func mul_1_uint8(a uint8) uint8 { return 1 * a }
 
 //go:noinline
-func mul_uint8_255_ssa(a uint8) uint8 {
-       return a * 255
-}
+func mul_uint8_255(a uint8) uint8 { return a * 255 }
 
 //go:noinline
-func mul_255_uint8_ssa(a uint8) uint8 {
-       return 255 * a
-}
+func mul_255_uint8(a uint8) uint8 { return 255 * a }
 
 //go:noinline
-func lsh_uint8_0_ssa(a uint8) uint8 {
-       return a << 0
-}
+func lsh_uint8_0(a uint8) uint8 { return a << 0 }
 
 //go:noinline
-func lsh_0_uint8_ssa(a uint8) uint8 {
-       return 0 << a
-}
+func lsh_0_uint8(a uint8) uint8 { return 0 << a }
 
 //go:noinline
-func lsh_uint8_1_ssa(a uint8) uint8 {
-       return a << 1
-}
+func lsh_uint8_1(a uint8) uint8 { return a << 1 }
 
 //go:noinline
-func lsh_1_uint8_ssa(a uint8) uint8 {
-       return 1 << a
-}
+func lsh_1_uint8(a uint8) uint8 { return 1 << a }
 
 //go:noinline
-func lsh_uint8_255_ssa(a uint8) uint8 {
-       return a << 255
-}
+func lsh_uint8_255(a uint8) uint8 { return a << 255 }
 
 //go:noinline
-func lsh_255_uint8_ssa(a uint8) uint8 {
-       return 255 << a
-}
+func lsh_255_uint8(a uint8) uint8 { return 255 << a }
 
 //go:noinline
-func rsh_uint8_0_ssa(a uint8) uint8 {
-       return a >> 0
-}
+func rsh_uint8_0(a uint8) uint8 { return a >> 0 }
 
 //go:noinline
-func rsh_0_uint8_ssa(a uint8) uint8 {
-       return 0 >> a
-}
+func rsh_0_uint8(a uint8) uint8 { return 0 >> a }
 
 //go:noinline
-func rsh_uint8_1_ssa(a uint8) uint8 {
-       return a >> 1
-}
+func rsh_uint8_1(a uint8) uint8 { return a >> 1 }
 
 //go:noinline
-func rsh_1_uint8_ssa(a uint8) uint8 {
-       return 1 >> a
-}
+func rsh_1_uint8(a uint8) uint8 { return 1 >> a }
 
 //go:noinline
-func rsh_uint8_255_ssa(a uint8) uint8 {
-       return a >> 255
-}
+func rsh_uint8_255(a uint8) uint8 { return a >> 255 }
 
 //go:noinline
-func rsh_255_uint8_ssa(a uint8) uint8 {
-       return 255 >> a
-}
+func rsh_255_uint8(a uint8) uint8 { return 255 >> a }
 
 //go:noinline
-func mod_0_uint8_ssa(a uint8) uint8 {
-       return 0 % a
-}
+func mod_0_uint8(a uint8) uint8 { return 0 % a }
 
 //go:noinline
-func mod_uint8_1_ssa(a uint8) uint8 {
-       return a % 1
-}
+func mod_uint8_1(a uint8) uint8 { return a % 1 }
 
 //go:noinline
-func mod_1_uint8_ssa(a uint8) uint8 {
-       return 1 % a
-}
+func mod_1_uint8(a uint8) uint8 { return 1 % a }
 
 //go:noinline
-func mod_uint8_255_ssa(a uint8) uint8 {
-       return a % 255
-}
+func mod_uint8_255(a uint8) uint8 { return a % 255 }
 
 //go:noinline
-func mod_255_uint8_ssa(a uint8) uint8 {
-       return 255 % a
-}
+func mod_255_uint8(a uint8) uint8 { return 255 % a }
 
 //go:noinline
-func and_uint8_0_ssa(a uint8) uint8 {
-       return a & 0
-}
+func and_uint8_0(a uint8) uint8 { return a & 0 }
 
 //go:noinline
-func and_0_uint8_ssa(a uint8) uint8 {
-       return 0 & a
-}
+func and_0_uint8(a uint8) uint8 { return 0 & a }
 
 //go:noinline
-func and_uint8_1_ssa(a uint8) uint8 {
-       return a & 1
-}
+func and_uint8_1(a uint8) uint8 { return a & 1 }
 
 //go:noinline
-func and_1_uint8_ssa(a uint8) uint8 {
-       return 1 & a
-}
+func and_1_uint8(a uint8) uint8 { return 1 & a }
 
 //go:noinline
-func and_uint8_255_ssa(a uint8) uint8 {
-       return a & 255
-}
+func and_uint8_255(a uint8) uint8 { return a & 255 }
 
 //go:noinline
-func and_255_uint8_ssa(a uint8) uint8 {
-       return 255 & a
-}
+func and_255_uint8(a uint8) uint8 { return 255 & a }
 
 //go:noinline
-func or_uint8_0_ssa(a uint8) uint8 {
-       return a | 0
-}
+func or_uint8_0(a uint8) uint8 { return a | 0 }
 
 //go:noinline
-func or_0_uint8_ssa(a uint8) uint8 {
-       return 0 | a
-}
+func or_0_uint8(a uint8) uint8 { return 0 | a }
 
 //go:noinline
-func or_uint8_1_ssa(a uint8) uint8 {
-       return a | 1
-}
+func or_uint8_1(a uint8) uint8 { return a | 1 }
 
 //go:noinline
-func or_1_uint8_ssa(a uint8) uint8 {
-       return 1 | a
-}
+func or_1_uint8(a uint8) uint8 { return 1 | a }
 
 //go:noinline
-func or_uint8_255_ssa(a uint8) uint8 {
-       return a | 255
-}
+func or_uint8_255(a uint8) uint8 { return a | 255 }
 
 //go:noinline
-func or_255_uint8_ssa(a uint8) uint8 {
-       return 255 | a
-}
+func or_255_uint8(a uint8) uint8 { return 255 | a }
 
 //go:noinline
-func xor_uint8_0_ssa(a uint8) uint8 {
-       return a ^ 0
-}
+func xor_uint8_0(a uint8) uint8 { return a ^ 0 }
 
 //go:noinline
-func xor_0_uint8_ssa(a uint8) uint8 {
-       return 0 ^ a
-}
+func xor_0_uint8(a uint8) uint8 { return 0 ^ a }
 
 //go:noinline
-func xor_uint8_1_ssa(a uint8) uint8 {
-       return a ^ 1
-}
+func xor_uint8_1(a uint8) uint8 { return a ^ 1 }
 
 //go:noinline
-func xor_1_uint8_ssa(a uint8) uint8 {
-       return 1 ^ a
-}
+func xor_1_uint8(a uint8) uint8 { return 1 ^ a }
 
 //go:noinline
-func xor_uint8_255_ssa(a uint8) uint8 {
-       return a ^ 255
-}
+func xor_uint8_255(a uint8) uint8 { return a ^ 255 }
 
 //go:noinline
-func xor_255_uint8_ssa(a uint8) uint8 {
-       return 255 ^ a
-}
+func xor_255_uint8(a uint8) uint8 { return 255 ^ a }
 
 //go:noinline
-func add_int8_Neg128_ssa(a int8) int8 {
-       return a + -128
-}
+func add_int8_Neg128(a int8) int8 { return a + -128 }
 
 //go:noinline
-func add_Neg128_int8_ssa(a int8) int8 {
-       return -128 + a
-}
+func add_Neg128_int8(a int8) int8 { return -128 + a }
 
 //go:noinline
-func add_int8_Neg127_ssa(a int8) int8 {
-       return a + -127
-}
+func add_int8_Neg127(a int8) int8 { return a + -127 }
 
 //go:noinline
-func add_Neg127_int8_ssa(a int8) int8 {
-       return -127 + a
-}
+func add_Neg127_int8(a int8) int8 { return -127 + a }
 
 //go:noinline
-func add_int8_Neg1_ssa(a int8) int8 {
-       return a + -1
-}
+func add_int8_Neg1(a int8) int8 { return a + -1 }
 
 //go:noinline
-func add_Neg1_int8_ssa(a int8) int8 {
-       return -1 + a
-}
+func add_Neg1_int8(a int8) int8 { return -1 + a }
 
 //go:noinline
-func add_int8_0_ssa(a int8) int8 {
-       return a + 0
-}
+func add_int8_0(a int8) int8 { return a + 0 }
 
 //go:noinline
-func add_0_int8_ssa(a int8) int8 {
-       return 0 + a
-}
+func add_0_int8(a int8) int8 { return 0 + a }
 
 //go:noinline
-func add_int8_1_ssa(a int8) int8 {
-       return a + 1
-}
+func add_int8_1(a int8) int8 { return a + 1 }
 
 //go:noinline
-func add_1_int8_ssa(a int8) int8 {
-       return 1 + a
-}
+func add_1_int8(a int8) int8 { return 1 + a }
 
 //go:noinline
-func add_int8_126_ssa(a int8) int8 {
-       return a + 126
-}
+func add_int8_126(a int8) int8 { return a + 126 }
 
 //go:noinline
-func add_126_int8_ssa(a int8) int8 {
-       return 126 + a
-}
+func add_126_int8(a int8) int8 { return 126 + a }
 
 //go:noinline
-func add_int8_127_ssa(a int8) int8 {
-       return a + 127
-}
+func add_int8_127(a int8) int8 { return a + 127 }
 
 //go:noinline
-func add_127_int8_ssa(a int8) int8 {
-       return 127 + a
-}
+func add_127_int8(a int8) int8 { return 127 + a }
 
 //go:noinline
-func sub_int8_Neg128_ssa(a int8) int8 {
-       return a - -128
-}
+func sub_int8_Neg128(a int8) int8 { return a - -128 }
 
 //go:noinline
-func sub_Neg128_int8_ssa(a int8) int8 {
-       return -128 - a
-}
+func sub_Neg128_int8(a int8) int8 { return -128 - a }
 
 //go:noinline
-func sub_int8_Neg127_ssa(a int8) int8 {
-       return a - -127
-}
+func sub_int8_Neg127(a int8) int8 { return a - -127 }
 
 //go:noinline
-func sub_Neg127_int8_ssa(a int8) int8 {
-       return -127 - a
-}
+func sub_Neg127_int8(a int8) int8 { return -127 - a }
 
 //go:noinline
-func sub_int8_Neg1_ssa(a int8) int8 {
-       return a - -1
-}
+func sub_int8_Neg1(a int8) int8 { return a - -1 }
 
 //go:noinline
-func sub_Neg1_int8_ssa(a int8) int8 {
-       return -1 - a
-}
+func sub_Neg1_int8(a int8) int8 { return -1 - a }
 
 //go:noinline
-func sub_int8_0_ssa(a int8) int8 {
-       return a - 0
-}
+func sub_int8_0(a int8) int8 { return a - 0 }
 
 //go:noinline
-func sub_0_int8_ssa(a int8) int8 {
-       return 0 - a
-}
+func sub_0_int8(a int8) int8 { return 0 - a }
 
 //go:noinline
-func sub_int8_1_ssa(a int8) int8 {
-       return a - 1
-}
+func sub_int8_1(a int8) int8 { return a - 1 }
 
 //go:noinline
-func sub_1_int8_ssa(a int8) int8 {
-       return 1 - a
-}
+func sub_1_int8(a int8) int8 { return 1 - a }
 
 //go:noinline
-func sub_int8_126_ssa(a int8) int8 {
-       return a - 126
-}
+func sub_int8_126(a int8) int8 { return a - 126 }
 
 //go:noinline
-func sub_126_int8_ssa(a int8) int8 {
-       return 126 - a
-}
+func sub_126_int8(a int8) int8 { return 126 - a }
 
 //go:noinline
-func sub_int8_127_ssa(a int8) int8 {
-       return a - 127
-}
+func sub_int8_127(a int8) int8 { return a - 127 }
 
 //go:noinline
-func sub_127_int8_ssa(a int8) int8 {
-       return 127 - a
-}
+func sub_127_int8(a int8) int8 { return 127 - a }
 
 //go:noinline
-func div_int8_Neg128_ssa(a int8) int8 {
-       return a / -128
-}
+func div_int8_Neg128(a int8) int8 { return a / -128 }
 
 //go:noinline
-func div_Neg128_int8_ssa(a int8) int8 {
-       return -128 / a
-}
+func div_Neg128_int8(a int8) int8 { return -128 / a }
 
 //go:noinline
-func div_int8_Neg127_ssa(a int8) int8 {
-       return a / -127
-}
+func div_int8_Neg127(a int8) int8 { return a / -127 }
 
 //go:noinline
-func div_Neg127_int8_ssa(a int8) int8 {
-       return -127 / a
-}
+func div_Neg127_int8(a int8) int8 { return -127 / a }
 
 //go:noinline
-func div_int8_Neg1_ssa(a int8) int8 {
-       return a / -1
-}
+func div_int8_Neg1(a int8) int8 { return a / -1 }
 
 //go:noinline
-func div_Neg1_int8_ssa(a int8) int8 {
-       return -1 / a
-}
+func div_Neg1_int8(a int8) int8 { return -1 / a }
 
 //go:noinline
-func div_0_int8_ssa(a int8) int8 {
-       return 0 / a
-}
+func div_0_int8(a int8) int8 { return 0 / a }
 
 //go:noinline
-func div_int8_1_ssa(a int8) int8 {
-       return a / 1
-}
+func div_int8_1(a int8) int8 { return a / 1 }
 
 //go:noinline
-func div_1_int8_ssa(a int8) int8 {
-       return 1 / a
-}
+func div_1_int8(a int8) int8 { return 1 / a }
 
 //go:noinline
-func div_int8_126_ssa(a int8) int8 {
-       return a / 126
-}
+func div_int8_126(a int8) int8 { return a / 126 }
 
 //go:noinline
-func div_126_int8_ssa(a int8) int8 {
-       return 126 / a
-}
+func div_126_int8(a int8) int8 { return 126 / a }
 
 //go:noinline
-func div_int8_127_ssa(a int8) int8 {
-       return a / 127
-}
+func div_int8_127(a int8) int8 { return a / 127 }
 
 //go:noinline
-func div_127_int8_ssa(a int8) int8 {
-       return 127 / a
-}
+func div_127_int8(a int8) int8 { return 127 / a }
 
 //go:noinline
-func mul_int8_Neg128_ssa(a int8) int8 {
-       return a * -128
-}
+func mul_int8_Neg128(a int8) int8 { return a * -128 }
 
 //go:noinline
-func mul_Neg128_int8_ssa(a int8) int8 {
-       return -128 * a
-}
+func mul_Neg128_int8(a int8) int8 { return -128 * a }
 
 //go:noinline
-func mul_int8_Neg127_ssa(a int8) int8 {
-       return a * -127
-}
+func mul_int8_Neg127(a int8) int8 { return a * -127 }
 
 //go:noinline
-func mul_Neg127_int8_ssa(a int8) int8 {
-       return -127 * a
-}
+func mul_Neg127_int8(a int8) int8 { return -127 * a }
 
 //go:noinline
-func mul_int8_Neg1_ssa(a int8) int8 {
-       return a * -1
-}
+func mul_int8_Neg1(a int8) int8 { return a * -1 }
 
 //go:noinline
-func mul_Neg1_int8_ssa(a int8) int8 {
-       return -1 * a
-}
+func mul_Neg1_int8(a int8) int8 { return -1 * a }
 
 //go:noinline
-func mul_int8_0_ssa(a int8) int8 {
-       return a * 0
-}
+func mul_int8_0(a int8) int8 { return a * 0 }
 
 //go:noinline
-func mul_0_int8_ssa(a int8) int8 {
-       return 0 * a
-}
+func mul_0_int8(a int8) int8 { return 0 * a }
 
 //go:noinline
-func mul_int8_1_ssa(a int8) int8 {
-       return a * 1
-}
+func mul_int8_1(a int8) int8 { return a * 1 }
 
 //go:noinline
-func mul_1_int8_ssa(a int8) int8 {
-       return 1 * a
-}
+func mul_1_int8(a int8) int8 { return 1 * a }
 
 //go:noinline
-func mul_int8_126_ssa(a int8) int8 {
-       return a * 126
-}
+func mul_int8_126(a int8) int8 { return a * 126 }
 
 //go:noinline
-func mul_126_int8_ssa(a int8) int8 {
-       return 126 * a
-}
+func mul_126_int8(a int8) int8 { return 126 * a }
 
 //go:noinline
-func mul_int8_127_ssa(a int8) int8 {
-       return a * 127
-}
+func mul_int8_127(a int8) int8 { return a * 127 }
 
 //go:noinline
-func mul_127_int8_ssa(a int8) int8 {
-       return 127 * a
-}
+func mul_127_int8(a int8) int8 { return 127 * a }
 
 //go:noinline
-func mod_int8_Neg128_ssa(a int8) int8 {
-       return a % -128
-}
+func mod_int8_Neg128(a int8) int8 { return a % -128 }
 
 //go:noinline
-func mod_Neg128_int8_ssa(a int8) int8 {
-       return -128 % a
-}
+func mod_Neg128_int8(a int8) int8 { return -128 % a }
 
 //go:noinline
-func mod_int8_Neg127_ssa(a int8) int8 {
-       return a % -127
-}
+func mod_int8_Neg127(a int8) int8 { return a % -127 }
 
 //go:noinline
-func mod_Neg127_int8_ssa(a int8) int8 {
-       return -127 % a
-}
+func mod_Neg127_int8(a int8) int8 { return -127 % a }
 
 //go:noinline
-func mod_int8_Neg1_ssa(a int8) int8 {
-       return a % -1
-}
+func mod_int8_Neg1(a int8) int8 { return a % -1 }
 
 //go:noinline
-func mod_Neg1_int8_ssa(a int8) int8 {
-       return -1 % a
-}
+func mod_Neg1_int8(a int8) int8 { return -1 % a }
 
 //go:noinline
-func mod_0_int8_ssa(a int8) int8 {
-       return 0 % a
-}
+func mod_0_int8(a int8) int8 { return 0 % a }
 
 //go:noinline
-func mod_int8_1_ssa(a int8) int8 {
-       return a % 1
-}
+func mod_int8_1(a int8) int8 { return a % 1 }
 
 //go:noinline
-func mod_1_int8_ssa(a int8) int8 {
-       return 1 % a
-}
+func mod_1_int8(a int8) int8 { return 1 % a }
 
 //go:noinline
-func mod_int8_126_ssa(a int8) int8 {
-       return a % 126
-}
+func mod_int8_126(a int8) int8 { return a % 126 }
 
 //go:noinline
-func mod_126_int8_ssa(a int8) int8 {
-       return 126 % a
-}
+func mod_126_int8(a int8) int8 { return 126 % a }
 
 //go:noinline
-func mod_int8_127_ssa(a int8) int8 {
-       return a % 127
-}
+func mod_int8_127(a int8) int8 { return a % 127 }
 
 //go:noinline
-func mod_127_int8_ssa(a int8) int8 {
-       return 127 % a
-}
+func mod_127_int8(a int8) int8 { return 127 % a }
 
 //go:noinline
-func and_int8_Neg128_ssa(a int8) int8 {
-       return a & -128
-}
+func and_int8_Neg128(a int8) int8 { return a & -128 }
 
 //go:noinline
-func and_Neg128_int8_ssa(a int8) int8 {
-       return -128 & a
-}
+func and_Neg128_int8(a int8) int8 { return -128 & a }
 
 //go:noinline
-func and_int8_Neg127_ssa(a int8) int8 {
-       return a & -127
-}
+func and_int8_Neg127(a int8) int8 { return a & -127 }
 
 //go:noinline
-func and_Neg127_int8_ssa(a int8) int8 {
-       return -127 & a
-}
+func and_Neg127_int8(a int8) int8 { return -127 & a }
 
 //go:noinline
-func and_int8_Neg1_ssa(a int8) int8 {
-       return a & -1
-}
+func and_int8_Neg1(a int8) int8 { return a & -1 }
 
 //go:noinline
-func and_Neg1_int8_ssa(a int8) int8 {
-       return -1 & a
-}
+func and_Neg1_int8(a int8) int8 { return -1 & a }
 
 //go:noinline
-func and_int8_0_ssa(a int8) int8 {
-       return a & 0
-}
+func and_int8_0(a int8) int8 { return a & 0 }
 
 //go:noinline
-func and_0_int8_ssa(a int8) int8 {
-       return 0 & a
-}
+func and_0_int8(a int8) int8 { return 0 & a }
 
 //go:noinline
-func and_int8_1_ssa(a int8) int8 {
-       return a & 1
-}
+func and_int8_1(a int8) int8 { return a & 1 }
 
 //go:noinline
-func and_1_int8_ssa(a int8) int8 {
-       return 1 & a
-}
+func and_1_int8(a int8) int8 { return 1 & a }
 
 //go:noinline
-func and_int8_126_ssa(a int8) int8 {
-       return a & 126
-}
+func and_int8_126(a int8) int8 { return a & 126 }
 
 //go:noinline
-func and_126_int8_ssa(a int8) int8 {
-       return 126 & a
-}
+func and_126_int8(a int8) int8 { return 126 & a }
 
 //go:noinline
-func and_int8_127_ssa(a int8) int8 {
-       return a & 127
-}
+func and_int8_127(a int8) int8 { return a & 127 }
 
 //go:noinline
-func and_127_int8_ssa(a int8) int8 {
-       return 127 & a
-}
+func and_127_int8(a int8) int8 { return 127 & a }
 
 //go:noinline
-func or_int8_Neg128_ssa(a int8) int8 {
-       return a | -128
-}
+func or_int8_Neg128(a int8) int8 { return a | -128 }
 
 //go:noinline
-func or_Neg128_int8_ssa(a int8) int8 {
-       return -128 | a
-}
+func or_Neg128_int8(a int8) int8 { return -128 | a }
 
 //go:noinline
-func or_int8_Neg127_ssa(a int8) int8 {
-       return a | -127
-}
+func or_int8_Neg127(a int8) int8 { return a | -127 }
 
 //go:noinline
-func or_Neg127_int8_ssa(a int8) int8 {
-       return -127 | a
-}
+func or_Neg127_int8(a int8) int8 { return -127 | a }
 
 //go:noinline
-func or_int8_Neg1_ssa(a int8) int8 {
-       return a | -1
-}
+func or_int8_Neg1(a int8) int8 { return a | -1 }
 
 //go:noinline
-func or_Neg1_int8_ssa(a int8) int8 {
-       return -1 | a
-}
+func or_Neg1_int8(a int8) int8 { return -1 | a }
 
 //go:noinline
-func or_int8_0_ssa(a int8) int8 {
-       return a | 0
-}
+func or_int8_0(a int8) int8 { return a | 0 }
 
 //go:noinline
-func or_0_int8_ssa(a int8) int8 {
-       return 0 | a
-}
+func or_0_int8(a int8) int8 { return 0 | a }
 
 //go:noinline
-func or_int8_1_ssa(a int8) int8 {
-       return a | 1
-}
+func or_int8_1(a int8) int8 { return a | 1 }
 
 //go:noinline
-func or_1_int8_ssa(a int8) int8 {
-       return 1 | a
-}
+func or_1_int8(a int8) int8 { return 1 | a }
 
 //go:noinline
-func or_int8_126_ssa(a int8) int8 {
-       return a | 126
-}
+func or_int8_126(a int8) int8 { return a | 126 }
 
 //go:noinline
-func or_126_int8_ssa(a int8) int8 {
-       return 126 | a
-}
+func or_126_int8(a int8) int8 { return 126 | a }
 
 //go:noinline
-func or_int8_127_ssa(a int8) int8 {
-       return a | 127
-}
+func or_int8_127(a int8) int8 { return a | 127 }
 
 //go:noinline
-func or_127_int8_ssa(a int8) int8 {
-       return 127 | a
-}
+func or_127_int8(a int8) int8 { return 127 | a }
 
 //go:noinline
-func xor_int8_Neg128_ssa(a int8) int8 {
-       return a ^ -128
-}
+func xor_int8_Neg128(a int8) int8 { return a ^ -128 }
 
 //go:noinline
-func xor_Neg128_int8_ssa(a int8) int8 {
-       return -128 ^ a
-}
+func xor_Neg128_int8(a int8) int8 { return -128 ^ a }
 
 //go:noinline
-func xor_int8_Neg127_ssa(a int8) int8 {
-       return a ^ -127
-}
+func xor_int8_Neg127(a int8) int8 { return a ^ -127 }
 
 //go:noinline
-func xor_Neg127_int8_ssa(a int8) int8 {
-       return -127 ^ a
-}
+func xor_Neg127_int8(a int8) int8 { return -127 ^ a }
 
 //go:noinline
-func xor_int8_Neg1_ssa(a int8) int8 {
-       return a ^ -1
-}
+func xor_int8_Neg1(a int8) int8 { return a ^ -1 }
 
 //go:noinline
-func xor_Neg1_int8_ssa(a int8) int8 {
-       return -1 ^ a
-}
+func xor_Neg1_int8(a int8) int8 { return -1 ^ a }
 
 //go:noinline
-func xor_int8_0_ssa(a int8) int8 {
-       return a ^ 0
-}
+func xor_int8_0(a int8) int8 { return a ^ 0 }
 
 //go:noinline
-func xor_0_int8_ssa(a int8) int8 {
-       return 0 ^ a
-}
+func xor_0_int8(a int8) int8 { return 0 ^ a }
 
 //go:noinline
-func xor_int8_1_ssa(a int8) int8 {
-       return a ^ 1
-}
+func xor_int8_1(a int8) int8 { return a ^ 1 }
 
 //go:noinline
-func xor_1_int8_ssa(a int8) int8 {
-       return 1 ^ a
-}
+func xor_1_int8(a int8) int8 { return 1 ^ a }
 
 //go:noinline
-func xor_int8_126_ssa(a int8) int8 {
-       return a ^ 126
-}
+func xor_int8_126(a int8) int8 { return a ^ 126 }
 
 //go:noinline
-func xor_126_int8_ssa(a int8) int8 {
-       return 126 ^ a
-}
+func xor_126_int8(a int8) int8 { return 126 ^ a }
 
 //go:noinline
-func xor_int8_127_ssa(a int8) int8 {
-       return a ^ 127
-}
+func xor_int8_127(a int8) int8 { return a ^ 127 }
 
 //go:noinline
-func xor_127_int8_ssa(a int8) int8 {
-       return 127 ^ a
-}
-
-var failed bool
-
-func main() {
-
-       if got := add_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("add_uint64 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("add_uint64 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
+func xor_127_int8(a int8) int8 { return 127 ^ a }
 
-       if got := add_0_uint64_ssa(1); got != 1 {
-               fmt.Printf("add_uint64 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_0_ssa(1); got != 1 {
-               fmt.Printf("add_uint64 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("add_uint64 0%s4294967296 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("add_uint64 4294967296%s0 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("add_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_0_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("add_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("add_uint64 0%s18446744073709551615 = %d, wanted 18446744073709551615\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_0_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("add_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint64_ssa(0); got != 1 {
-               fmt.Printf("add_uint64 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_1_ssa(0); got != 1 {
-               fmt.Printf("add_uint64 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint64_ssa(1); got != 2 {
-               fmt.Printf("add_uint64 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_1_ssa(1); got != 2 {
-               fmt.Printf("add_uint64 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint64_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("add_uint64 1%s4294967296 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
+type test_uint64 struct {
+       fn     func(uint64) uint64
+       fnname string
+       in     uint64
+       want   uint64
+}
 
-       if got := add_uint64_1_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("add_uint64 4294967296%s1 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
+var tests_uint64 = []test_uint64{
 
-       if got := add_1_uint64_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("add_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `+`, got)
-               failed = true
-       }
+       test_uint64{fn: add_0_uint64, fnname: "add_0_uint64", in: 0, want: 0},
+       test_uint64{fn: add_uint64_0, fnname: "add_uint64_0", in: 0, want: 0},
+       test_uint64{fn: add_0_uint64, fnname: "add_0_uint64", in: 1, want: 1},
+       test_uint64{fn: add_uint64_0, fnname: "add_uint64_0", in: 1, want: 1},
+       test_uint64{fn: add_0_uint64, fnname: "add_0_uint64", in: 4294967296, want: 4294967296},
+       test_uint64{fn: add_uint64_0, fnname: "add_uint64_0", in: 4294967296, want: 4294967296},
+       test_uint64{fn: add_0_uint64, fnname: "add_0_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: add_uint64_0, fnname: "add_uint64_0", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: add_0_uint64, fnname: "add_0_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: add_uint64_0, fnname: "add_uint64_0", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: add_1_uint64, fnname: "add_1_uint64", in: 0, want: 1},
+       test_uint64{fn: add_uint64_1, fnname: "add_uint64_1", in: 0, want: 1},
+       test_uint64{fn: add_1_uint64, fnname: "add_1_uint64", in: 1, want: 2},
+       test_uint64{fn: add_uint64_1, fnname: "add_uint64_1", in: 1, want: 2},
+       test_uint64{fn: add_1_uint64, fnname: "add_1_uint64", in: 4294967296, want: 4294967297},
+       test_uint64{fn: add_uint64_1, fnname: "add_uint64_1", in: 4294967296, want: 4294967297},
+       test_uint64{fn: add_1_uint64, fnname: "add_1_uint64", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: add_uint64_1, fnname: "add_uint64_1", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: add_1_uint64, fnname: "add_1_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: add_uint64_1, fnname: "add_uint64_1", in: 18446744073709551615, want: 0},
+       test_uint64{fn: add_4294967296_uint64, fnname: "add_4294967296_uint64", in: 0, want: 4294967296},
+       test_uint64{fn: add_uint64_4294967296, fnname: "add_uint64_4294967296", in: 0, want: 4294967296},
+       test_uint64{fn: add_4294967296_uint64, fnname: "add_4294967296_uint64", in: 1, want: 4294967297},
+       test_uint64{fn: add_uint64_4294967296, fnname: "add_uint64_4294967296", in: 1, want: 4294967297},
+       test_uint64{fn: add_4294967296_uint64, fnname: "add_4294967296_uint64", in: 4294967296, want: 8589934592},
+       test_uint64{fn: add_uint64_4294967296, fnname: "add_uint64_4294967296", in: 4294967296, want: 8589934592},
+       test_uint64{fn: add_4294967296_uint64, fnname: "add_4294967296_uint64", in: 9223372036854775808, want: 9223372041149743104},
+       test_uint64{fn: add_uint64_4294967296, fnname: "add_uint64_4294967296", in: 9223372036854775808, want: 9223372041149743104},
+       test_uint64{fn: add_4294967296_uint64, fnname: "add_4294967296_uint64", in: 18446744073709551615, want: 4294967295},
+       test_uint64{fn: add_uint64_4294967296, fnname: "add_uint64_4294967296", in: 18446744073709551615, want: 4294967295},
+       test_uint64{fn: add_9223372036854775808_uint64, fnname: "add_9223372036854775808_uint64", in: 0, want: 9223372036854775808},
+       test_uint64{fn: add_uint64_9223372036854775808, fnname: "add_uint64_9223372036854775808", in: 0, want: 9223372036854775808},
+       test_uint64{fn: add_9223372036854775808_uint64, fnname: "add_9223372036854775808_uint64", in: 1, want: 9223372036854775809},
+       test_uint64{fn: add_uint64_9223372036854775808, fnname: "add_uint64_9223372036854775808", in: 1, want: 9223372036854775809},
+       test_uint64{fn: add_9223372036854775808_uint64, fnname: "add_9223372036854775808_uint64", in: 4294967296, want: 9223372041149743104},
+       test_uint64{fn: add_uint64_9223372036854775808, fnname: "add_uint64_9223372036854775808", in: 4294967296, want: 9223372041149743104},
+       test_uint64{fn: add_9223372036854775808_uint64, fnname: "add_9223372036854775808_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: add_uint64_9223372036854775808, fnname: "add_uint64_9223372036854775808", in: 9223372036854775808, want: 0},
+       test_uint64{fn: add_9223372036854775808_uint64, fnname: "add_9223372036854775808_uint64", in: 18446744073709551615, want: 9223372036854775807},
+       test_uint64{fn: add_uint64_9223372036854775808, fnname: "add_uint64_9223372036854775808", in: 18446744073709551615, want: 9223372036854775807},
+       test_uint64{fn: add_18446744073709551615_uint64, fnname: "add_18446744073709551615_uint64", in: 0, want: 18446744073709551615},
+       test_uint64{fn: add_uint64_18446744073709551615, fnname: "add_uint64_18446744073709551615", in: 0, want: 18446744073709551615},
+       test_uint64{fn: add_18446744073709551615_uint64, fnname: "add_18446744073709551615_uint64", in: 1, want: 0},
+       test_uint64{fn: add_uint64_18446744073709551615, fnname: "add_uint64_18446744073709551615", in: 1, want: 0},
+       test_uint64{fn: add_18446744073709551615_uint64, fnname: "add_18446744073709551615_uint64", in: 4294967296, want: 4294967295},
+       test_uint64{fn: add_uint64_18446744073709551615, fnname: "add_uint64_18446744073709551615", in: 4294967296, want: 4294967295},
+       test_uint64{fn: add_18446744073709551615_uint64, fnname: "add_18446744073709551615_uint64", in: 9223372036854775808, want: 9223372036854775807},
+       test_uint64{fn: add_uint64_18446744073709551615, fnname: "add_uint64_18446744073709551615", in: 9223372036854775808, want: 9223372036854775807},
+       test_uint64{fn: add_18446744073709551615_uint64, fnname: "add_18446744073709551615_uint64", in: 18446744073709551615, want: 18446744073709551614},
+       test_uint64{fn: add_uint64_18446744073709551615, fnname: "add_uint64_18446744073709551615", in: 18446744073709551615, want: 18446744073709551614},
+       test_uint64{fn: sub_0_uint64, fnname: "sub_0_uint64", in: 0, want: 0},
+       test_uint64{fn: sub_uint64_0, fnname: "sub_uint64_0", in: 0, want: 0},
+       test_uint64{fn: sub_0_uint64, fnname: "sub_0_uint64", in: 1, want: 18446744073709551615},
+       test_uint64{fn: sub_uint64_0, fnname: "sub_uint64_0", in: 1, want: 1},
+       test_uint64{fn: sub_0_uint64, fnname: "sub_0_uint64", in: 4294967296, want: 18446744069414584320},
+       test_uint64{fn: sub_uint64_0, fnname: "sub_uint64_0", in: 4294967296, want: 4294967296},
+       test_uint64{fn: sub_0_uint64, fnname: "sub_0_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: sub_uint64_0, fnname: "sub_uint64_0", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: sub_0_uint64, fnname: "sub_0_uint64", in: 18446744073709551615, want: 1},
+       test_uint64{fn: sub_uint64_0, fnname: "sub_uint64_0", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: sub_1_uint64, fnname: "sub_1_uint64", in: 0, want: 1},
+       test_uint64{fn: sub_uint64_1, fnname: "sub_uint64_1", in: 0, want: 18446744073709551615},
+       test_uint64{fn: sub_1_uint64, fnname: "sub_1_uint64", in: 1, want: 0},
+       test_uint64{fn: sub_uint64_1, fnname: "sub_uint64_1", in: 1, want: 0},
+       test_uint64{fn: sub_1_uint64, fnname: "sub_1_uint64", in: 4294967296, want: 18446744069414584321},
+       test_uint64{fn: sub_uint64_1, fnname: "sub_uint64_1", in: 4294967296, want: 4294967295},
+       test_uint64{fn: sub_1_uint64, fnname: "sub_1_uint64", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: sub_uint64_1, fnname: "sub_uint64_1", in: 9223372036854775808, want: 9223372036854775807},
+       test_uint64{fn: sub_1_uint64, fnname: "sub_1_uint64", in: 18446744073709551615, want: 2},
+       test_uint64{fn: sub_uint64_1, fnname: "sub_uint64_1", in: 18446744073709551615, want: 18446744073709551614},
+       test_uint64{fn: sub_4294967296_uint64, fnname: "sub_4294967296_uint64", in: 0, want: 4294967296},
+       test_uint64{fn: sub_uint64_4294967296, fnname: "sub_uint64_4294967296", in: 0, want: 18446744069414584320},
+       test_uint64{fn: sub_4294967296_uint64, fnname: "sub_4294967296_uint64", in: 1, want: 4294967295},
+       test_uint64{fn: sub_uint64_4294967296, fnname: "sub_uint64_4294967296", in: 1, want: 18446744069414584321},
+       test_uint64{fn: sub_4294967296_uint64, fnname: "sub_4294967296_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: sub_uint64_4294967296, fnname: "sub_uint64_4294967296", in: 4294967296, want: 0},
+       test_uint64{fn: sub_4294967296_uint64, fnname: "sub_4294967296_uint64", in: 9223372036854775808, want: 9223372041149743104},
+       test_uint64{fn: sub_uint64_4294967296, fnname: "sub_uint64_4294967296", in: 9223372036854775808, want: 9223372032559808512},
+       test_uint64{fn: sub_4294967296_uint64, fnname: "sub_4294967296_uint64", in: 18446744073709551615, want: 4294967297},
+       test_uint64{fn: sub_uint64_4294967296, fnname: "sub_uint64_4294967296", in: 18446744073709551615, want: 18446744069414584319},
+       test_uint64{fn: sub_9223372036854775808_uint64, fnname: "sub_9223372036854775808_uint64", in: 0, want: 9223372036854775808},
+       test_uint64{fn: sub_uint64_9223372036854775808, fnname: "sub_uint64_9223372036854775808", in: 0, want: 9223372036854775808},
+       test_uint64{fn: sub_9223372036854775808_uint64, fnname: "sub_9223372036854775808_uint64", in: 1, want: 9223372036854775807},
+       test_uint64{fn: sub_uint64_9223372036854775808, fnname: "sub_uint64_9223372036854775808", in: 1, want: 9223372036854775809},
+       test_uint64{fn: sub_9223372036854775808_uint64, fnname: "sub_9223372036854775808_uint64", in: 4294967296, want: 9223372032559808512},
+       test_uint64{fn: sub_uint64_9223372036854775808, fnname: "sub_uint64_9223372036854775808", in: 4294967296, want: 9223372041149743104},
+       test_uint64{fn: sub_9223372036854775808_uint64, fnname: "sub_9223372036854775808_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: sub_uint64_9223372036854775808, fnname: "sub_uint64_9223372036854775808", in: 9223372036854775808, want: 0},
+       test_uint64{fn: sub_9223372036854775808_uint64, fnname: "sub_9223372036854775808_uint64", in: 18446744073709551615, want: 9223372036854775809},
+       test_uint64{fn: sub_uint64_9223372036854775808, fnname: "sub_uint64_9223372036854775808", in: 18446744073709551615, want: 9223372036854775807},
+       test_uint64{fn: sub_18446744073709551615_uint64, fnname: "sub_18446744073709551615_uint64", in: 0, want: 18446744073709551615},
+       test_uint64{fn: sub_uint64_18446744073709551615, fnname: "sub_uint64_18446744073709551615", in: 0, want: 1},
+       test_uint64{fn: sub_18446744073709551615_uint64, fnname: "sub_18446744073709551615_uint64", in: 1, want: 18446744073709551614},
+       test_uint64{fn: sub_uint64_18446744073709551615, fnname: "sub_uint64_18446744073709551615", in: 1, want: 2},
+       test_uint64{fn: sub_18446744073709551615_uint64, fnname: "sub_18446744073709551615_uint64", in: 4294967296, want: 18446744069414584319},
+       test_uint64{fn: sub_uint64_18446744073709551615, fnname: "sub_uint64_18446744073709551615", in: 4294967296, want: 4294967297},
+       test_uint64{fn: sub_18446744073709551615_uint64, fnname: "sub_18446744073709551615_uint64", in: 9223372036854775808, want: 9223372036854775807},
+       test_uint64{fn: sub_uint64_18446744073709551615, fnname: "sub_uint64_18446744073709551615", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: sub_18446744073709551615_uint64, fnname: "sub_18446744073709551615_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: sub_uint64_18446744073709551615, fnname: "sub_uint64_18446744073709551615", in: 18446744073709551615, want: 0},
+       test_uint64{fn: div_0_uint64, fnname: "div_0_uint64", in: 1, want: 0},
+       test_uint64{fn: div_0_uint64, fnname: "div_0_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: div_0_uint64, fnname: "div_0_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: div_0_uint64, fnname: "div_0_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: div_uint64_1, fnname: "div_uint64_1", in: 0, want: 0},
+       test_uint64{fn: div_1_uint64, fnname: "div_1_uint64", in: 1, want: 1},
+       test_uint64{fn: div_uint64_1, fnname: "div_uint64_1", in: 1, want: 1},
+       test_uint64{fn: div_1_uint64, fnname: "div_1_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: div_uint64_1, fnname: "div_uint64_1", in: 4294967296, want: 4294967296},
+       test_uint64{fn: div_1_uint64, fnname: "div_1_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: div_uint64_1, fnname: "div_uint64_1", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: div_1_uint64, fnname: "div_1_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: div_uint64_1, fnname: "div_uint64_1", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: div_uint64_4294967296, fnname: "div_uint64_4294967296", in: 0, want: 0},
+       test_uint64{fn: div_4294967296_uint64, fnname: "div_4294967296_uint64", in: 1, want: 4294967296},
+       test_uint64{fn: div_uint64_4294967296, fnname: "div_uint64_4294967296", in: 1, want: 0},
+       test_uint64{fn: div_4294967296_uint64, fnname: "div_4294967296_uint64", in: 4294967296, want: 1},
+       test_uint64{fn: div_uint64_4294967296, fnname: "div_uint64_4294967296", in: 4294967296, want: 1},
+       test_uint64{fn: div_4294967296_uint64, fnname: "div_4294967296_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: div_uint64_4294967296, fnname: "div_uint64_4294967296", in: 9223372036854775808, want: 2147483648},
+       test_uint64{fn: div_4294967296_uint64, fnname: "div_4294967296_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: div_uint64_4294967296, fnname: "div_uint64_4294967296", in: 18446744073709551615, want: 4294967295},
+       test_uint64{fn: div_uint64_9223372036854775808, fnname: "div_uint64_9223372036854775808", in: 0, want: 0},
+       test_uint64{fn: div_9223372036854775808_uint64, fnname: "div_9223372036854775808_uint64", in: 1, want: 9223372036854775808},
+       test_uint64{fn: div_uint64_9223372036854775808, fnname: "div_uint64_9223372036854775808", in: 1, want: 0},
+       test_uint64{fn: div_9223372036854775808_uint64, fnname: "div_9223372036854775808_uint64", in: 4294967296, want: 2147483648},
+       test_uint64{fn: div_uint64_9223372036854775808, fnname: "div_uint64_9223372036854775808", in: 4294967296, want: 0},
+       test_uint64{fn: div_9223372036854775808_uint64, fnname: "div_9223372036854775808_uint64", in: 9223372036854775808, want: 1},
+       test_uint64{fn: div_uint64_9223372036854775808, fnname: "div_uint64_9223372036854775808", in: 9223372036854775808, want: 1},
+       test_uint64{fn: div_9223372036854775808_uint64, fnname: "div_9223372036854775808_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: div_uint64_9223372036854775808, fnname: "div_uint64_9223372036854775808", in: 18446744073709551615, want: 1},
+       test_uint64{fn: div_uint64_18446744073709551615, fnname: "div_uint64_18446744073709551615", in: 0, want: 0},
+       test_uint64{fn: div_18446744073709551615_uint64, fnname: "div_18446744073709551615_uint64", in: 1, want: 18446744073709551615},
+       test_uint64{fn: div_uint64_18446744073709551615, fnname: "div_uint64_18446744073709551615", in: 1, want: 0},
+       test_uint64{fn: div_18446744073709551615_uint64, fnname: "div_18446744073709551615_uint64", in: 4294967296, want: 4294967295},
+       test_uint64{fn: div_uint64_18446744073709551615, fnname: "div_uint64_18446744073709551615", in: 4294967296, want: 0},
+       test_uint64{fn: div_18446744073709551615_uint64, fnname: "div_18446744073709551615_uint64", in: 9223372036854775808, want: 1},
+       test_uint64{fn: div_uint64_18446744073709551615, fnname: "div_uint64_18446744073709551615", in: 9223372036854775808, want: 0},
+       test_uint64{fn: div_18446744073709551615_uint64, fnname: "div_18446744073709551615_uint64", in: 18446744073709551615, want: 1},
+       test_uint64{fn: div_uint64_18446744073709551615, fnname: "div_uint64_18446744073709551615", in: 18446744073709551615, want: 1},
+       test_uint64{fn: mul_0_uint64, fnname: "mul_0_uint64", in: 0, want: 0},
+       test_uint64{fn: mul_uint64_0, fnname: "mul_uint64_0", in: 0, want: 0},
+       test_uint64{fn: mul_0_uint64, fnname: "mul_0_uint64", in: 1, want: 0},
+       test_uint64{fn: mul_uint64_0, fnname: "mul_uint64_0", in: 1, want: 0},
+       test_uint64{fn: mul_0_uint64, fnname: "mul_0_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: mul_uint64_0, fnname: "mul_uint64_0", in: 4294967296, want: 0},
+       test_uint64{fn: mul_0_uint64, fnname: "mul_0_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mul_uint64_0, fnname: "mul_uint64_0", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mul_0_uint64, fnname: "mul_0_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: mul_uint64_0, fnname: "mul_uint64_0", in: 18446744073709551615, want: 0},
+       test_uint64{fn: mul_1_uint64, fnname: "mul_1_uint64", in: 0, want: 0},
+       test_uint64{fn: mul_uint64_1, fnname: "mul_uint64_1", in: 0, want: 0},
+       test_uint64{fn: mul_1_uint64, fnname: "mul_1_uint64", in: 1, want: 1},
+       test_uint64{fn: mul_uint64_1, fnname: "mul_uint64_1", in: 1, want: 1},
+       test_uint64{fn: mul_1_uint64, fnname: "mul_1_uint64", in: 4294967296, want: 4294967296},
+       test_uint64{fn: mul_uint64_1, fnname: "mul_uint64_1", in: 4294967296, want: 4294967296},
+       test_uint64{fn: mul_1_uint64, fnname: "mul_1_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: mul_uint64_1, fnname: "mul_uint64_1", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: mul_1_uint64, fnname: "mul_1_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: mul_uint64_1, fnname: "mul_uint64_1", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: mul_4294967296_uint64, fnname: "mul_4294967296_uint64", in: 0, want: 0},
+       test_uint64{fn: mul_uint64_4294967296, fnname: "mul_uint64_4294967296", in: 0, want: 0},
+       test_uint64{fn: mul_4294967296_uint64, fnname: "mul_4294967296_uint64", in: 1, want: 4294967296},
+       test_uint64{fn: mul_uint64_4294967296, fnname: "mul_uint64_4294967296", in: 1, want: 4294967296},
+       test_uint64{fn: mul_4294967296_uint64, fnname: "mul_4294967296_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: mul_uint64_4294967296, fnname: "mul_uint64_4294967296", in: 4294967296, want: 0},
+       test_uint64{fn: mul_4294967296_uint64, fnname: "mul_4294967296_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mul_uint64_4294967296, fnname: "mul_uint64_4294967296", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mul_4294967296_uint64, fnname: "mul_4294967296_uint64", in: 18446744073709551615, want: 18446744069414584320},
+       test_uint64{fn: mul_uint64_4294967296, fnname: "mul_uint64_4294967296", in: 18446744073709551615, want: 18446744069414584320},
+       test_uint64{fn: mul_9223372036854775808_uint64, fnname: "mul_9223372036854775808_uint64", in: 0, want: 0},
+       test_uint64{fn: mul_uint64_9223372036854775808, fnname: "mul_uint64_9223372036854775808", in: 0, want: 0},
+       test_uint64{fn: mul_9223372036854775808_uint64, fnname: "mul_9223372036854775808_uint64", in: 1, want: 9223372036854775808},
+       test_uint64{fn: mul_uint64_9223372036854775808, fnname: "mul_uint64_9223372036854775808", in: 1, want: 9223372036854775808},
+       test_uint64{fn: mul_9223372036854775808_uint64, fnname: "mul_9223372036854775808_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: mul_uint64_9223372036854775808, fnname: "mul_uint64_9223372036854775808", in: 4294967296, want: 0},
+       test_uint64{fn: mul_9223372036854775808_uint64, fnname: "mul_9223372036854775808_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mul_uint64_9223372036854775808, fnname: "mul_uint64_9223372036854775808", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mul_9223372036854775808_uint64, fnname: "mul_9223372036854775808_uint64", in: 18446744073709551615, want: 9223372036854775808},
+       test_uint64{fn: mul_uint64_9223372036854775808, fnname: "mul_uint64_9223372036854775808", in: 18446744073709551615, want: 9223372036854775808},
+       test_uint64{fn: mul_18446744073709551615_uint64, fnname: "mul_18446744073709551615_uint64", in: 0, want: 0},
+       test_uint64{fn: mul_uint64_18446744073709551615, fnname: "mul_uint64_18446744073709551615", in: 0, want: 0},
+       test_uint64{fn: mul_18446744073709551615_uint64, fnname: "mul_18446744073709551615_uint64", in: 1, want: 18446744073709551615},
+       test_uint64{fn: mul_uint64_18446744073709551615, fnname: "mul_uint64_18446744073709551615", in: 1, want: 18446744073709551615},
+       test_uint64{fn: mul_18446744073709551615_uint64, fnname: "mul_18446744073709551615_uint64", in: 4294967296, want: 18446744069414584320},
+       test_uint64{fn: mul_uint64_18446744073709551615, fnname: "mul_uint64_18446744073709551615", in: 4294967296, want: 18446744069414584320},
+       test_uint64{fn: mul_18446744073709551615_uint64, fnname: "mul_18446744073709551615_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: mul_uint64_18446744073709551615, fnname: "mul_uint64_18446744073709551615", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: mul_18446744073709551615_uint64, fnname: "mul_18446744073709551615_uint64", in: 18446744073709551615, want: 1},
+       test_uint64{fn: mul_uint64_18446744073709551615, fnname: "mul_uint64_18446744073709551615", in: 18446744073709551615, want: 1},
+       test_uint64{fn: lsh_0_uint64, fnname: "lsh_0_uint64", in: 0, want: 0},
+       test_uint64{fn: lsh_uint64_0, fnname: "lsh_uint64_0", in: 0, want: 0},
+       test_uint64{fn: lsh_0_uint64, fnname: "lsh_0_uint64", in: 1, want: 0},
+       test_uint64{fn: lsh_uint64_0, fnname: "lsh_uint64_0", in: 1, want: 1},
+       test_uint64{fn: lsh_0_uint64, fnname: "lsh_0_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_uint64_0, fnname: "lsh_uint64_0", in: 4294967296, want: 4294967296},
+       test_uint64{fn: lsh_0_uint64, fnname: "lsh_0_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_uint64_0, fnname: "lsh_uint64_0", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: lsh_0_uint64, fnname: "lsh_0_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: lsh_uint64_0, fnname: "lsh_uint64_0", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: lsh_1_uint64, fnname: "lsh_1_uint64", in: 0, want: 1},
+       test_uint64{fn: lsh_uint64_1, fnname: "lsh_uint64_1", in: 0, want: 0},
+       test_uint64{fn: lsh_1_uint64, fnname: "lsh_1_uint64", in: 1, want: 2},
+       test_uint64{fn: lsh_uint64_1, fnname: "lsh_uint64_1", in: 1, want: 2},
+       test_uint64{fn: lsh_1_uint64, fnname: "lsh_1_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_uint64_1, fnname: "lsh_uint64_1", in: 4294967296, want: 8589934592},
+       test_uint64{fn: lsh_1_uint64, fnname: "lsh_1_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_uint64_1, fnname: "lsh_uint64_1", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_1_uint64, fnname: "lsh_1_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: lsh_uint64_1, fnname: "lsh_uint64_1", in: 18446744073709551615, want: 18446744073709551614},
+       test_uint64{fn: lsh_4294967296_uint64, fnname: "lsh_4294967296_uint64", in: 0, want: 4294967296},
+       test_uint64{fn: lsh_uint64_4294967296, fnname: "lsh_uint64_4294967296", in: 0, want: 0},
+       test_uint64{fn: lsh_4294967296_uint64, fnname: "lsh_4294967296_uint64", in: 1, want: 8589934592},
+       test_uint64{fn: lsh_uint64_4294967296, fnname: "lsh_uint64_4294967296", in: 1, want: 0},
+       test_uint64{fn: lsh_4294967296_uint64, fnname: "lsh_4294967296_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_uint64_4294967296, fnname: "lsh_uint64_4294967296", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_4294967296_uint64, fnname: "lsh_4294967296_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_uint64_4294967296, fnname: "lsh_uint64_4294967296", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_4294967296_uint64, fnname: "lsh_4294967296_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: lsh_uint64_4294967296, fnname: "lsh_uint64_4294967296", in: 18446744073709551615, want: 0},
+       test_uint64{fn: lsh_9223372036854775808_uint64, fnname: "lsh_9223372036854775808_uint64", in: 0, want: 9223372036854775808},
+       test_uint64{fn: lsh_uint64_9223372036854775808, fnname: "lsh_uint64_9223372036854775808", in: 0, want: 0},
+       test_uint64{fn: lsh_9223372036854775808_uint64, fnname: "lsh_9223372036854775808_uint64", in: 1, want: 0},
+       test_uint64{fn: lsh_uint64_9223372036854775808, fnname: "lsh_uint64_9223372036854775808", in: 1, want: 0},
+       test_uint64{fn: lsh_9223372036854775808_uint64, fnname: "lsh_9223372036854775808_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_uint64_9223372036854775808, fnname: "lsh_uint64_9223372036854775808", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_9223372036854775808_uint64, fnname: "lsh_9223372036854775808_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_uint64_9223372036854775808, fnname: "lsh_uint64_9223372036854775808", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_9223372036854775808_uint64, fnname: "lsh_9223372036854775808_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: lsh_uint64_9223372036854775808, fnname: "lsh_uint64_9223372036854775808", in: 18446744073709551615, want: 0},
+       test_uint64{fn: lsh_18446744073709551615_uint64, fnname: "lsh_18446744073709551615_uint64", in: 0, want: 18446744073709551615},
+       test_uint64{fn: lsh_uint64_18446744073709551615, fnname: "lsh_uint64_18446744073709551615", in: 0, want: 0},
+       test_uint64{fn: lsh_18446744073709551615_uint64, fnname: "lsh_18446744073709551615_uint64", in: 1, want: 18446744073709551614},
+       test_uint64{fn: lsh_uint64_18446744073709551615, fnname: "lsh_uint64_18446744073709551615", in: 1, want: 0},
+       test_uint64{fn: lsh_18446744073709551615_uint64, fnname: "lsh_18446744073709551615_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_uint64_18446744073709551615, fnname: "lsh_uint64_18446744073709551615", in: 4294967296, want: 0},
+       test_uint64{fn: lsh_18446744073709551615_uint64, fnname: "lsh_18446744073709551615_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_uint64_18446744073709551615, fnname: "lsh_uint64_18446744073709551615", in: 9223372036854775808, want: 0},
+       test_uint64{fn: lsh_18446744073709551615_uint64, fnname: "lsh_18446744073709551615_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: lsh_uint64_18446744073709551615, fnname: "lsh_uint64_18446744073709551615", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_0_uint64, fnname: "rsh_0_uint64", in: 0, want: 0},
+       test_uint64{fn: rsh_uint64_0, fnname: "rsh_uint64_0", in: 0, want: 0},
+       test_uint64{fn: rsh_0_uint64, fnname: "rsh_0_uint64", in: 1, want: 0},
+       test_uint64{fn: rsh_uint64_0, fnname: "rsh_uint64_0", in: 1, want: 1},
+       test_uint64{fn: rsh_0_uint64, fnname: "rsh_0_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_uint64_0, fnname: "rsh_uint64_0", in: 4294967296, want: 4294967296},
+       test_uint64{fn: rsh_0_uint64, fnname: "rsh_0_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_uint64_0, fnname: "rsh_uint64_0", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: rsh_0_uint64, fnname: "rsh_0_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_uint64_0, fnname: "rsh_uint64_0", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: rsh_1_uint64, fnname: "rsh_1_uint64", in: 0, want: 1},
+       test_uint64{fn: rsh_uint64_1, fnname: "rsh_uint64_1", in: 0, want: 0},
+       test_uint64{fn: rsh_1_uint64, fnname: "rsh_1_uint64", in: 1, want: 0},
+       test_uint64{fn: rsh_uint64_1, fnname: "rsh_uint64_1", in: 1, want: 0},
+       test_uint64{fn: rsh_1_uint64, fnname: "rsh_1_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_uint64_1, fnname: "rsh_uint64_1", in: 4294967296, want: 2147483648},
+       test_uint64{fn: rsh_1_uint64, fnname: "rsh_1_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_uint64_1, fnname: "rsh_uint64_1", in: 9223372036854775808, want: 4611686018427387904},
+       test_uint64{fn: rsh_1_uint64, fnname: "rsh_1_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_uint64_1, fnname: "rsh_uint64_1", in: 18446744073709551615, want: 9223372036854775807},
+       test_uint64{fn: rsh_4294967296_uint64, fnname: "rsh_4294967296_uint64", in: 0, want: 4294967296},
+       test_uint64{fn: rsh_uint64_4294967296, fnname: "rsh_uint64_4294967296", in: 0, want: 0},
+       test_uint64{fn: rsh_4294967296_uint64, fnname: "rsh_4294967296_uint64", in: 1, want: 2147483648},
+       test_uint64{fn: rsh_uint64_4294967296, fnname: "rsh_uint64_4294967296", in: 1, want: 0},
+       test_uint64{fn: rsh_4294967296_uint64, fnname: "rsh_4294967296_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_uint64_4294967296, fnname: "rsh_uint64_4294967296", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_4294967296_uint64, fnname: "rsh_4294967296_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_uint64_4294967296, fnname: "rsh_uint64_4294967296", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_4294967296_uint64, fnname: "rsh_4294967296_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_uint64_4294967296, fnname: "rsh_uint64_4294967296", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_9223372036854775808_uint64, fnname: "rsh_9223372036854775808_uint64", in: 0, want: 9223372036854775808},
+       test_uint64{fn: rsh_uint64_9223372036854775808, fnname: "rsh_uint64_9223372036854775808", in: 0, want: 0},
+       test_uint64{fn: rsh_9223372036854775808_uint64, fnname: "rsh_9223372036854775808_uint64", in: 1, want: 4611686018427387904},
+       test_uint64{fn: rsh_uint64_9223372036854775808, fnname: "rsh_uint64_9223372036854775808", in: 1, want: 0},
+       test_uint64{fn: rsh_9223372036854775808_uint64, fnname: "rsh_9223372036854775808_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_uint64_9223372036854775808, fnname: "rsh_uint64_9223372036854775808", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_9223372036854775808_uint64, fnname: "rsh_9223372036854775808_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_uint64_9223372036854775808, fnname: "rsh_uint64_9223372036854775808", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_9223372036854775808_uint64, fnname: "rsh_9223372036854775808_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_uint64_9223372036854775808, fnname: "rsh_uint64_9223372036854775808", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_18446744073709551615_uint64, fnname: "rsh_18446744073709551615_uint64", in: 0, want: 18446744073709551615},
+       test_uint64{fn: rsh_uint64_18446744073709551615, fnname: "rsh_uint64_18446744073709551615", in: 0, want: 0},
+       test_uint64{fn: rsh_18446744073709551615_uint64, fnname: "rsh_18446744073709551615_uint64", in: 1, want: 9223372036854775807},
+       test_uint64{fn: rsh_uint64_18446744073709551615, fnname: "rsh_uint64_18446744073709551615", in: 1, want: 0},
+       test_uint64{fn: rsh_18446744073709551615_uint64, fnname: "rsh_18446744073709551615_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_uint64_18446744073709551615, fnname: "rsh_uint64_18446744073709551615", in: 4294967296, want: 0},
+       test_uint64{fn: rsh_18446744073709551615_uint64, fnname: "rsh_18446744073709551615_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_uint64_18446744073709551615, fnname: "rsh_uint64_18446744073709551615", in: 9223372036854775808, want: 0},
+       test_uint64{fn: rsh_18446744073709551615_uint64, fnname: "rsh_18446744073709551615_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: rsh_uint64_18446744073709551615, fnname: "rsh_uint64_18446744073709551615", in: 18446744073709551615, want: 0},
+       test_uint64{fn: mod_0_uint64, fnname: "mod_0_uint64", in: 1, want: 0},
+       test_uint64{fn: mod_0_uint64, fnname: "mod_0_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: mod_0_uint64, fnname: "mod_0_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mod_0_uint64, fnname: "mod_0_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: mod_uint64_1, fnname: "mod_uint64_1", in: 0, want: 0},
+       test_uint64{fn: mod_1_uint64, fnname: "mod_1_uint64", in: 1, want: 0},
+       test_uint64{fn: mod_uint64_1, fnname: "mod_uint64_1", in: 1, want: 0},
+       test_uint64{fn: mod_1_uint64, fnname: "mod_1_uint64", in: 4294967296, want: 1},
+       test_uint64{fn: mod_uint64_1, fnname: "mod_uint64_1", in: 4294967296, want: 0},
+       test_uint64{fn: mod_1_uint64, fnname: "mod_1_uint64", in: 9223372036854775808, want: 1},
+       test_uint64{fn: mod_uint64_1, fnname: "mod_uint64_1", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mod_1_uint64, fnname: "mod_1_uint64", in: 18446744073709551615, want: 1},
+       test_uint64{fn: mod_uint64_1, fnname: "mod_uint64_1", in: 18446744073709551615, want: 0},
+       test_uint64{fn: mod_uint64_4294967296, fnname: "mod_uint64_4294967296", in: 0, want: 0},
+       test_uint64{fn: mod_4294967296_uint64, fnname: "mod_4294967296_uint64", in: 1, want: 0},
+       test_uint64{fn: mod_uint64_4294967296, fnname: "mod_uint64_4294967296", in: 1, want: 1},
+       test_uint64{fn: mod_4294967296_uint64, fnname: "mod_4294967296_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: mod_uint64_4294967296, fnname: "mod_uint64_4294967296", in: 4294967296, want: 0},
+       test_uint64{fn: mod_4294967296_uint64, fnname: "mod_4294967296_uint64", in: 9223372036854775808, want: 4294967296},
+       test_uint64{fn: mod_uint64_4294967296, fnname: "mod_uint64_4294967296", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mod_4294967296_uint64, fnname: "mod_4294967296_uint64", in: 18446744073709551615, want: 4294967296},
+       test_uint64{fn: mod_uint64_4294967296, fnname: "mod_uint64_4294967296", in: 18446744073709551615, want: 4294967295},
+       test_uint64{fn: mod_uint64_9223372036854775808, fnname: "mod_uint64_9223372036854775808", in: 0, want: 0},
+       test_uint64{fn: mod_9223372036854775808_uint64, fnname: "mod_9223372036854775808_uint64", in: 1, want: 0},
+       test_uint64{fn: mod_uint64_9223372036854775808, fnname: "mod_uint64_9223372036854775808", in: 1, want: 1},
+       test_uint64{fn: mod_9223372036854775808_uint64, fnname: "mod_9223372036854775808_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: mod_uint64_9223372036854775808, fnname: "mod_uint64_9223372036854775808", in: 4294967296, want: 4294967296},
+       test_uint64{fn: mod_9223372036854775808_uint64, fnname: "mod_9223372036854775808_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mod_uint64_9223372036854775808, fnname: "mod_uint64_9223372036854775808", in: 9223372036854775808, want: 0},
+       test_uint64{fn: mod_9223372036854775808_uint64, fnname: "mod_9223372036854775808_uint64", in: 18446744073709551615, want: 9223372036854775808},
+       test_uint64{fn: mod_uint64_9223372036854775808, fnname: "mod_uint64_9223372036854775808", in: 18446744073709551615, want: 9223372036854775807},
+       test_uint64{fn: mod_uint64_18446744073709551615, fnname: "mod_uint64_18446744073709551615", in: 0, want: 0},
+       test_uint64{fn: mod_18446744073709551615_uint64, fnname: "mod_18446744073709551615_uint64", in: 1, want: 0},
+       test_uint64{fn: mod_uint64_18446744073709551615, fnname: "mod_uint64_18446744073709551615", in: 1, want: 1},
+       test_uint64{fn: mod_18446744073709551615_uint64, fnname: "mod_18446744073709551615_uint64", in: 4294967296, want: 4294967295},
+       test_uint64{fn: mod_uint64_18446744073709551615, fnname: "mod_uint64_18446744073709551615", in: 4294967296, want: 4294967296},
+       test_uint64{fn: mod_18446744073709551615_uint64, fnname: "mod_18446744073709551615_uint64", in: 9223372036854775808, want: 9223372036854775807},
+       test_uint64{fn: mod_uint64_18446744073709551615, fnname: "mod_uint64_18446744073709551615", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: mod_18446744073709551615_uint64, fnname: "mod_18446744073709551615_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: mod_uint64_18446744073709551615, fnname: "mod_uint64_18446744073709551615", in: 18446744073709551615, want: 0},
+       test_uint64{fn: and_0_uint64, fnname: "and_0_uint64", in: 0, want: 0},
+       test_uint64{fn: and_uint64_0, fnname: "and_uint64_0", in: 0, want: 0},
+       test_uint64{fn: and_0_uint64, fnname: "and_0_uint64", in: 1, want: 0},
+       test_uint64{fn: and_uint64_0, fnname: "and_uint64_0", in: 1, want: 0},
+       test_uint64{fn: and_0_uint64, fnname: "and_0_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: and_uint64_0, fnname: "and_uint64_0", in: 4294967296, want: 0},
+       test_uint64{fn: and_0_uint64, fnname: "and_0_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: and_uint64_0, fnname: "and_uint64_0", in: 9223372036854775808, want: 0},
+       test_uint64{fn: and_0_uint64, fnname: "and_0_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: and_uint64_0, fnname: "and_uint64_0", in: 18446744073709551615, want: 0},
+       test_uint64{fn: and_1_uint64, fnname: "and_1_uint64", in: 0, want: 0},
+       test_uint64{fn: and_uint64_1, fnname: "and_uint64_1", in: 0, want: 0},
+       test_uint64{fn: and_1_uint64, fnname: "and_1_uint64", in: 1, want: 1},
+       test_uint64{fn: and_uint64_1, fnname: "and_uint64_1", in: 1, want: 1},
+       test_uint64{fn: and_1_uint64, fnname: "and_1_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: and_uint64_1, fnname: "and_uint64_1", in: 4294967296, want: 0},
+       test_uint64{fn: and_1_uint64, fnname: "and_1_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: and_uint64_1, fnname: "and_uint64_1", in: 9223372036854775808, want: 0},
+       test_uint64{fn: and_1_uint64, fnname: "and_1_uint64", in: 18446744073709551615, want: 1},
+       test_uint64{fn: and_uint64_1, fnname: "and_uint64_1", in: 18446744073709551615, want: 1},
+       test_uint64{fn: and_4294967296_uint64, fnname: "and_4294967296_uint64", in: 0, want: 0},
+       test_uint64{fn: and_uint64_4294967296, fnname: "and_uint64_4294967296", in: 0, want: 0},
+       test_uint64{fn: and_4294967296_uint64, fnname: "and_4294967296_uint64", in: 1, want: 0},
+       test_uint64{fn: and_uint64_4294967296, fnname: "and_uint64_4294967296", in: 1, want: 0},
+       test_uint64{fn: and_4294967296_uint64, fnname: "and_4294967296_uint64", in: 4294967296, want: 4294967296},
+       test_uint64{fn: and_uint64_4294967296, fnname: "and_uint64_4294967296", in: 4294967296, want: 4294967296},
+       test_uint64{fn: and_4294967296_uint64, fnname: "and_4294967296_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: and_uint64_4294967296, fnname: "and_uint64_4294967296", in: 9223372036854775808, want: 0},
+       test_uint64{fn: and_4294967296_uint64, fnname: "and_4294967296_uint64", in: 18446744073709551615, want: 4294967296},
+       test_uint64{fn: and_uint64_4294967296, fnname: "and_uint64_4294967296", in: 18446744073709551615, want: 4294967296},
+       test_uint64{fn: and_9223372036854775808_uint64, fnname: "and_9223372036854775808_uint64", in: 0, want: 0},
+       test_uint64{fn: and_uint64_9223372036854775808, fnname: "and_uint64_9223372036854775808", in: 0, want: 0},
+       test_uint64{fn: and_9223372036854775808_uint64, fnname: "and_9223372036854775808_uint64", in: 1, want: 0},
+       test_uint64{fn: and_uint64_9223372036854775808, fnname: "and_uint64_9223372036854775808", in: 1, want: 0},
+       test_uint64{fn: and_9223372036854775808_uint64, fnname: "and_9223372036854775808_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: and_uint64_9223372036854775808, fnname: "and_uint64_9223372036854775808", in: 4294967296, want: 0},
+       test_uint64{fn: and_9223372036854775808_uint64, fnname: "and_9223372036854775808_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: and_uint64_9223372036854775808, fnname: "and_uint64_9223372036854775808", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: and_9223372036854775808_uint64, fnname: "and_9223372036854775808_uint64", in: 18446744073709551615, want: 9223372036854775808},
+       test_uint64{fn: and_uint64_9223372036854775808, fnname: "and_uint64_9223372036854775808", in: 18446744073709551615, want: 9223372036854775808},
+       test_uint64{fn: and_18446744073709551615_uint64, fnname: "and_18446744073709551615_uint64", in: 0, want: 0},
+       test_uint64{fn: and_uint64_18446744073709551615, fnname: "and_uint64_18446744073709551615", in: 0, want: 0},
+       test_uint64{fn: and_18446744073709551615_uint64, fnname: "and_18446744073709551615_uint64", in: 1, want: 1},
+       test_uint64{fn: and_uint64_18446744073709551615, fnname: "and_uint64_18446744073709551615", in: 1, want: 1},
+       test_uint64{fn: and_18446744073709551615_uint64, fnname: "and_18446744073709551615_uint64", in: 4294967296, want: 4294967296},
+       test_uint64{fn: and_uint64_18446744073709551615, fnname: "and_uint64_18446744073709551615", in: 4294967296, want: 4294967296},
+       test_uint64{fn: and_18446744073709551615_uint64, fnname: "and_18446744073709551615_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: and_uint64_18446744073709551615, fnname: "and_uint64_18446744073709551615", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: and_18446744073709551615_uint64, fnname: "and_18446744073709551615_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: and_uint64_18446744073709551615, fnname: "and_uint64_18446744073709551615", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_0_uint64, fnname: "or_0_uint64", in: 0, want: 0},
+       test_uint64{fn: or_uint64_0, fnname: "or_uint64_0", in: 0, want: 0},
+       test_uint64{fn: or_0_uint64, fnname: "or_0_uint64", in: 1, want: 1},
+       test_uint64{fn: or_uint64_0, fnname: "or_uint64_0", in: 1, want: 1},
+       test_uint64{fn: or_0_uint64, fnname: "or_0_uint64", in: 4294967296, want: 4294967296},
+       test_uint64{fn: or_uint64_0, fnname: "or_uint64_0", in: 4294967296, want: 4294967296},
+       test_uint64{fn: or_0_uint64, fnname: "or_0_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: or_uint64_0, fnname: "or_uint64_0", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: or_0_uint64, fnname: "or_0_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_0, fnname: "or_uint64_0", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_1_uint64, fnname: "or_1_uint64", in: 0, want: 1},
+       test_uint64{fn: or_uint64_1, fnname: "or_uint64_1", in: 0, want: 1},
+       test_uint64{fn: or_1_uint64, fnname: "or_1_uint64", in: 1, want: 1},
+       test_uint64{fn: or_uint64_1, fnname: "or_uint64_1", in: 1, want: 1},
+       test_uint64{fn: or_1_uint64, fnname: "or_1_uint64", in: 4294967296, want: 4294967297},
+       test_uint64{fn: or_uint64_1, fnname: "or_uint64_1", in: 4294967296, want: 4294967297},
+       test_uint64{fn: or_1_uint64, fnname: "or_1_uint64", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: or_uint64_1, fnname: "or_uint64_1", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: or_1_uint64, fnname: "or_1_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_1, fnname: "or_uint64_1", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_4294967296_uint64, fnname: "or_4294967296_uint64", in: 0, want: 4294967296},
+       test_uint64{fn: or_uint64_4294967296, fnname: "or_uint64_4294967296", in: 0, want: 4294967296},
+       test_uint64{fn: or_4294967296_uint64, fnname: "or_4294967296_uint64", in: 1, want: 4294967297},
+       test_uint64{fn: or_uint64_4294967296, fnname: "or_uint64_4294967296", in: 1, want: 4294967297},
+       test_uint64{fn: or_4294967296_uint64, fnname: "or_4294967296_uint64", in: 4294967296, want: 4294967296},
+       test_uint64{fn: or_uint64_4294967296, fnname: "or_uint64_4294967296", in: 4294967296, want: 4294967296},
+       test_uint64{fn: or_4294967296_uint64, fnname: "or_4294967296_uint64", in: 9223372036854775808, want: 9223372041149743104},
+       test_uint64{fn: or_uint64_4294967296, fnname: "or_uint64_4294967296", in: 9223372036854775808, want: 9223372041149743104},
+       test_uint64{fn: or_4294967296_uint64, fnname: "or_4294967296_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_4294967296, fnname: "or_uint64_4294967296", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_9223372036854775808_uint64, fnname: "or_9223372036854775808_uint64", in: 0, want: 9223372036854775808},
+       test_uint64{fn: or_uint64_9223372036854775808, fnname: "or_uint64_9223372036854775808", in: 0, want: 9223372036854775808},
+       test_uint64{fn: or_9223372036854775808_uint64, fnname: "or_9223372036854775808_uint64", in: 1, want: 9223372036854775809},
+       test_uint64{fn: or_uint64_9223372036854775808, fnname: "or_uint64_9223372036854775808", in: 1, want: 9223372036854775809},
+       test_uint64{fn: or_9223372036854775808_uint64, fnname: "or_9223372036854775808_uint64", in: 4294967296, want: 9223372041149743104},
+       test_uint64{fn: or_uint64_9223372036854775808, fnname: "or_uint64_9223372036854775808", in: 4294967296, want: 9223372041149743104},
+       test_uint64{fn: or_9223372036854775808_uint64, fnname: "or_9223372036854775808_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: or_uint64_9223372036854775808, fnname: "or_uint64_9223372036854775808", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: or_9223372036854775808_uint64, fnname: "or_9223372036854775808_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_9223372036854775808, fnname: "or_uint64_9223372036854775808", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_18446744073709551615_uint64, fnname: "or_18446744073709551615_uint64", in: 0, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_18446744073709551615, fnname: "or_uint64_18446744073709551615", in: 0, want: 18446744073709551615},
+       test_uint64{fn: or_18446744073709551615_uint64, fnname: "or_18446744073709551615_uint64", in: 1, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_18446744073709551615, fnname: "or_uint64_18446744073709551615", in: 1, want: 18446744073709551615},
+       test_uint64{fn: or_18446744073709551615_uint64, fnname: "or_18446744073709551615_uint64", in: 4294967296, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_18446744073709551615, fnname: "or_uint64_18446744073709551615", in: 4294967296, want: 18446744073709551615},
+       test_uint64{fn: or_18446744073709551615_uint64, fnname: "or_18446744073709551615_uint64", in: 9223372036854775808, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_18446744073709551615, fnname: "or_uint64_18446744073709551615", in: 9223372036854775808, want: 18446744073709551615},
+       test_uint64{fn: or_18446744073709551615_uint64, fnname: "or_18446744073709551615_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: or_uint64_18446744073709551615, fnname: "or_uint64_18446744073709551615", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: xor_0_uint64, fnname: "xor_0_uint64", in: 0, want: 0},
+       test_uint64{fn: xor_uint64_0, fnname: "xor_uint64_0", in: 0, want: 0},
+       test_uint64{fn: xor_0_uint64, fnname: "xor_0_uint64", in: 1, want: 1},
+       test_uint64{fn: xor_uint64_0, fnname: "xor_uint64_0", in: 1, want: 1},
+       test_uint64{fn: xor_0_uint64, fnname: "xor_0_uint64", in: 4294967296, want: 4294967296},
+       test_uint64{fn: xor_uint64_0, fnname: "xor_uint64_0", in: 4294967296, want: 4294967296},
+       test_uint64{fn: xor_0_uint64, fnname: "xor_0_uint64", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: xor_uint64_0, fnname: "xor_uint64_0", in: 9223372036854775808, want: 9223372036854775808},
+       test_uint64{fn: xor_0_uint64, fnname: "xor_0_uint64", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: xor_uint64_0, fnname: "xor_uint64_0", in: 18446744073709551615, want: 18446744073709551615},
+       test_uint64{fn: xor_1_uint64, fnname: "xor_1_uint64", in: 0, want: 1},
+       test_uint64{fn: xor_uint64_1, fnname: "xor_uint64_1", in: 0, want: 1},
+       test_uint64{fn: xor_1_uint64, fnname: "xor_1_uint64", in: 1, want: 0},
+       test_uint64{fn: xor_uint64_1, fnname: "xor_uint64_1", in: 1, want: 0},
+       test_uint64{fn: xor_1_uint64, fnname: "xor_1_uint64", in: 4294967296, want: 4294967297},
+       test_uint64{fn: xor_uint64_1, fnname: "xor_uint64_1", in: 4294967296, want: 4294967297},
+       test_uint64{fn: xor_1_uint64, fnname: "xor_1_uint64", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: xor_uint64_1, fnname: "xor_uint64_1", in: 9223372036854775808, want: 9223372036854775809},
+       test_uint64{fn: xor_1_uint64, fnname: "xor_1_uint64", in: 18446744073709551615, want: 18446744073709551614},
+       test_uint64{fn: xor_uint64_1, fnname: "xor_uint64_1", in: 18446744073709551615, want: 18446744073709551614},
+       test_uint64{fn: xor_4294967296_uint64, fnname: "xor_4294967296_uint64", in: 0, want: 4294967296},
+       test_uint64{fn: xor_uint64_4294967296, fnname: "xor_uint64_4294967296", in: 0, want: 4294967296},
+       test_uint64{fn: xor_4294967296_uint64, fnname: "xor_4294967296_uint64", in: 1, want: 4294967297},
+       test_uint64{fn: xor_uint64_4294967296, fnname: "xor_uint64_4294967296", in: 1, want: 4294967297},
+       test_uint64{fn: xor_4294967296_uint64, fnname: "xor_4294967296_uint64", in: 4294967296, want: 0},
+       test_uint64{fn: xor_uint64_4294967296, fnname: "xor_uint64_4294967296", in: 4294967296, want: 0},
+       test_uint64{fn: xor_4294967296_uint64, fnname: "xor_4294967296_uint64", in: 9223372036854775808, want: 9223372041149743104},
+       test_uint64{fn: xor_uint64_4294967296, fnname: "xor_uint64_4294967296", in: 9223372036854775808, want: 9223372041149743104},
+       test_uint64{fn: xor_4294967296_uint64, fnname: "xor_4294967296_uint64", in: 18446744073709551615, want: 18446744069414584319},
+       test_uint64{fn: xor_uint64_4294967296, fnname: "xor_uint64_4294967296", in: 18446744073709551615, want: 18446744069414584319},
+       test_uint64{fn: xor_9223372036854775808_uint64, fnname: "xor_9223372036854775808_uint64", in: 0, want: 9223372036854775808},
+       test_uint64{fn: xor_uint64_9223372036854775808, fnname: "xor_uint64_9223372036854775808", in: 0, want: 9223372036854775808},
+       test_uint64{fn: xor_9223372036854775808_uint64, fnname: "xor_9223372036854775808_uint64", in: 1, want: 9223372036854775809},
+       test_uint64{fn: xor_uint64_9223372036854775808, fnname: "xor_uint64_9223372036854775808", in: 1, want: 9223372036854775809},
+       test_uint64{fn: xor_9223372036854775808_uint64, fnname: "xor_9223372036854775808_uint64", in: 4294967296, want: 9223372041149743104},
+       test_uint64{fn: xor_uint64_9223372036854775808, fnname: "xor_uint64_9223372036854775808", in: 4294967296, want: 9223372041149743104},
+       test_uint64{fn: xor_9223372036854775808_uint64, fnname: "xor_9223372036854775808_uint64", in: 9223372036854775808, want: 0},
+       test_uint64{fn: xor_uint64_9223372036854775808, fnname: "xor_uint64_9223372036854775808", in: 9223372036854775808, want: 0},
+       test_uint64{fn: xor_9223372036854775808_uint64, fnname: "xor_9223372036854775808_uint64", in: 18446744073709551615, want: 9223372036854775807},
+       test_uint64{fn: xor_uint64_9223372036854775808, fnname: "xor_uint64_9223372036854775808", in: 18446744073709551615, want: 9223372036854775807},
+       test_uint64{fn: xor_18446744073709551615_uint64, fnname: "xor_18446744073709551615_uint64", in: 0, want: 18446744073709551615},
+       test_uint64{fn: xor_uint64_18446744073709551615, fnname: "xor_uint64_18446744073709551615", in: 0, want: 18446744073709551615},
+       test_uint64{fn: xor_18446744073709551615_uint64, fnname: "xor_18446744073709551615_uint64", in: 1, want: 18446744073709551614},
+       test_uint64{fn: xor_uint64_18446744073709551615, fnname: "xor_uint64_18446744073709551615", in: 1, want: 18446744073709551614},
+       test_uint64{fn: xor_18446744073709551615_uint64, fnname: "xor_18446744073709551615_uint64", in: 4294967296, want: 18446744069414584319},
+       test_uint64{fn: xor_uint64_18446744073709551615, fnname: "xor_uint64_18446744073709551615", in: 4294967296, want: 18446744069414584319},
+       test_uint64{fn: xor_18446744073709551615_uint64, fnname: "xor_18446744073709551615_uint64", in: 9223372036854775808, want: 9223372036854775807},
+       test_uint64{fn: xor_uint64_18446744073709551615, fnname: "xor_uint64_18446744073709551615", in: 9223372036854775808, want: 9223372036854775807},
+       test_uint64{fn: xor_18446744073709551615_uint64, fnname: "xor_18446744073709551615_uint64", in: 18446744073709551615, want: 0},
+       test_uint64{fn: xor_uint64_18446744073709551615, fnname: "xor_uint64_18446744073709551615", in: 18446744073709551615, want: 0}}
+
+type test_int64 struct {
+       fn     func(int64) int64
+       fnname string
+       in     int64
+       want   int64
+}
+
+var tests_int64 = []test_int64{
+
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: -9223372036854775808, want: 0},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: -9223372036854775807, want: 1},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: -1, want: 9223372036854775807},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: -1, want: 9223372036854775807},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: 0, want: -9223372036854775808},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: 0, want: -9223372036854775808},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: 1, want: -9223372036854775807},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: 1, want: -9223372036854775807},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: 4294967296, want: -9223372032559808512},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: 4294967296, want: -9223372032559808512},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: 9223372036854775806, want: -2},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: 9223372036854775806, want: -2},
+       test_int64{fn: add_Neg9223372036854775808_int64, fnname: "add_Neg9223372036854775808_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: add_int64_Neg9223372036854775808, fnname: "add_int64_Neg9223372036854775808", in: 9223372036854775807, want: -1},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: -9223372036854775808, want: 1},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: -9223372036854775808, want: 1},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: -9223372036854775807, want: 2},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: -9223372036854775807, want: 2},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: -4294967296, want: 9223372032559808513},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: -4294967296, want: 9223372032559808513},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: -1, want: -9223372036854775808},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: -1, want: -9223372036854775808},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: 0, want: -9223372036854775807},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: 0, want: -9223372036854775807},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: 1, want: -9223372036854775806},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: 1, want: -9223372036854775806},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: 4294967296, want: -9223372032559808511},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: 4294967296, want: -9223372032559808511},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: 9223372036854775806, want: -1},
+       test_int64{fn: add_Neg9223372036854775807_int64, fnname: "add_Neg9223372036854775807_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: add_int64_Neg9223372036854775807, fnname: "add_int64_Neg9223372036854775807", in: 9223372036854775807, want: 0},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: -9223372036854775808, want: 9223372032559808512},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: -9223372036854775808, want: 9223372032559808512},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: -9223372036854775807, want: 9223372032559808513},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: -9223372036854775807, want: 9223372032559808513},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: -4294967296, want: -8589934592},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: -4294967296, want: -8589934592},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: -1, want: -4294967297},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: -1, want: -4294967297},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: 0, want: -4294967296},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: 0, want: -4294967296},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: 1, want: -4294967295},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: 1, want: -4294967295},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: 4294967296, want: 0},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: 4294967296, want: 0},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: 9223372036854775806, want: 9223372032559808510},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: 9223372036854775806, want: 9223372032559808510},
+       test_int64{fn: add_Neg4294967296_int64, fnname: "add_Neg4294967296_int64", in: 9223372036854775807, want: 9223372032559808511},
+       test_int64{fn: add_int64_Neg4294967296, fnname: "add_int64_Neg4294967296", in: 9223372036854775807, want: 9223372032559808511},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: -9223372036854775808, want: 9223372036854775807},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: -9223372036854775808, want: 9223372036854775807},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: -4294967296, want: -4294967297},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: -4294967296, want: -4294967297},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: -1, want: -2},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: -1, want: -2},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: 0, want: -1},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: 0, want: -1},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: 1, want: 0},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: 1, want: 0},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: 4294967296, want: 4294967295},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: 4294967296, want: 4294967295},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: 9223372036854775806, want: 9223372036854775805},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: 9223372036854775806, want: 9223372036854775805},
+       test_int64{fn: add_Neg1_int64, fnname: "add_Neg1_int64", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: add_int64_Neg1, fnname: "add_int64_Neg1", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: -4294967296, want: -4294967296},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: -1, want: -1},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: -1, want: -1},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: 0, want: 0},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: 0, want: 0},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: 1, want: 1},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: 1, want: 1},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: 4294967296, want: 4294967296},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: add_0_int64, fnname: "add_0_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: add_int64_0, fnname: "add_int64_0", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: -9223372036854775807, want: -9223372036854775806},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: -9223372036854775807, want: -9223372036854775806},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: -4294967296, want: -4294967295},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: -4294967296, want: -4294967295},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: -1, want: 0},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: -1, want: 0},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: 0, want: 1},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: 0, want: 1},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: 1, want: 2},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: 1, want: 2},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: 4294967296, want: 4294967297},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: 4294967296, want: 4294967297},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: add_1_int64, fnname: "add_1_int64", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: add_int64_1, fnname: "add_int64_1", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: -9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: -9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: -4294967296, want: 0},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: -4294967296, want: 0},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: -1, want: 4294967295},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: -1, want: 4294967295},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: 0, want: 4294967296},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: 0, want: 4294967296},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: 1, want: 4294967297},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: 1, want: 4294967297},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: 4294967296, want: 8589934592},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: 4294967296, want: 8589934592},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: 9223372036854775806, want: -9223372032559808514},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: 9223372036854775806, want: -9223372032559808514},
+       test_int64{fn: add_4294967296_int64, fnname: "add_4294967296_int64", in: 9223372036854775807, want: -9223372032559808513},
+       test_int64{fn: add_int64_4294967296, fnname: "add_int64_4294967296", in: 9223372036854775807, want: -9223372032559808513},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: -9223372036854775808, want: -2},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: -9223372036854775808, want: -2},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: -9223372036854775807, want: -1},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: -4294967296, want: 9223372032559808510},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: -4294967296, want: 9223372032559808510},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: -1, want: 9223372036854775805},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: -1, want: 9223372036854775805},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: 0, want: 9223372036854775806},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: 0, want: 9223372036854775806},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: 1, want: 9223372036854775807},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: 1, want: 9223372036854775807},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: 4294967296, want: -9223372032559808514},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: 4294967296, want: -9223372032559808514},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: 9223372036854775806, want: -4},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: 9223372036854775806, want: -4},
+       test_int64{fn: add_9223372036854775806_int64, fnname: "add_9223372036854775806_int64", in: 9223372036854775807, want: -3},
+       test_int64{fn: add_int64_9223372036854775806, fnname: "add_int64_9223372036854775806", in: 9223372036854775807, want: -3},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: -9223372036854775808, want: -1},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: -9223372036854775808, want: -1},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: -9223372036854775807, want: 0},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: -4294967296, want: 9223372032559808511},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: -4294967296, want: 9223372032559808511},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: -1, want: 9223372036854775806},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: -1, want: 9223372036854775806},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: 0, want: 9223372036854775807},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: 0, want: 9223372036854775807},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: 1, want: -9223372036854775808},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: 1, want: -9223372036854775808},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: 4294967296, want: -9223372032559808513},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: 4294967296, want: -9223372032559808513},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: 9223372036854775806, want: -3},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: 9223372036854775806, want: -3},
+       test_int64{fn: add_9223372036854775807_int64, fnname: "add_9223372036854775807_int64", in: 9223372036854775807, want: -2},
+       test_int64{fn: add_int64_9223372036854775807, fnname: "add_int64_9223372036854775807", in: 9223372036854775807, want: -2},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: -9223372036854775808, want: 0},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: -9223372036854775807, want: 1},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: -4294967296, want: -9223372032559808512},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: -1, want: -9223372036854775807},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: -1, want: 9223372036854775807},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: 0, want: -9223372036854775808},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: 0, want: -9223372036854775808},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: 1, want: 9223372036854775807},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: 1, want: -9223372036854775807},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: 4294967296, want: 9223372032559808512},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: 4294967296, want: -9223372032559808512},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: 9223372036854775806, want: 2},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: 9223372036854775806, want: -2},
+       test_int64{fn: sub_Neg9223372036854775808_int64, fnname: "sub_Neg9223372036854775808_int64", in: 9223372036854775807, want: 1},
+       test_int64{fn: sub_int64_Neg9223372036854775808, fnname: "sub_int64_Neg9223372036854775808", in: 9223372036854775807, want: -1},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: -9223372036854775808, want: 1},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: -9223372036854775808, want: -1},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: -9223372036854775807, want: 0},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: -4294967296, want: -9223372032559808511},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: -4294967296, want: 9223372032559808511},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: -1, want: -9223372036854775806},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: -1, want: 9223372036854775806},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: 0, want: -9223372036854775807},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: 0, want: 9223372036854775807},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: 1, want: -9223372036854775808},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: 1, want: -9223372036854775808},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: 4294967296, want: 9223372032559808513},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: 4294967296, want: -9223372032559808513},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: 9223372036854775806, want: 3},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: 9223372036854775806, want: -3},
+       test_int64{fn: sub_Neg9223372036854775807_int64, fnname: "sub_Neg9223372036854775807_int64", in: 9223372036854775807, want: 2},
+       test_int64{fn: sub_int64_Neg9223372036854775807, fnname: "sub_int64_Neg9223372036854775807", in: 9223372036854775807, want: -2},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: -9223372036854775808, want: 9223372032559808512},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: -9223372036854775807, want: 9223372032559808511},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: -9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: -4294967296, want: 0},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: -4294967296, want: 0},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: -1, want: -4294967295},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: -1, want: 4294967295},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: 0, want: -4294967296},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: 0, want: 4294967296},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: 1, want: -4294967297},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: 1, want: 4294967297},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: 4294967296, want: -8589934592},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: 4294967296, want: 8589934592},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: 9223372036854775806, want: 9223372032559808514},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: 9223372036854775806, want: -9223372032559808514},
+       test_int64{fn: sub_Neg4294967296_int64, fnname: "sub_Neg4294967296_int64", in: 9223372036854775807, want: 9223372032559808513},
+       test_int64{fn: sub_int64_Neg4294967296, fnname: "sub_int64_Neg4294967296", in: 9223372036854775807, want: -9223372032559808513},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: -9223372036854775808, want: 9223372036854775807},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: -9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: -9223372036854775807, want: -9223372036854775806},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: -4294967296, want: 4294967295},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: -4294967296, want: -4294967295},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: -1, want: 0},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: -1, want: 0},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: 0, want: -1},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: 0, want: 1},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: 1, want: -2},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: 1, want: 2},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: 4294967296, want: -4294967297},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: 4294967296, want: 4294967297},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: 9223372036854775806, want: -9223372036854775807},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: sub_Neg1_int64, fnname: "sub_Neg1_int64", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: sub_int64_Neg1, fnname: "sub_int64_Neg1", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: -9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: -4294967296, want: 4294967296},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: -4294967296, want: -4294967296},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: -1, want: 1},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: -1, want: -1},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: 0, want: 0},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: 0, want: 0},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: 1, want: -1},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: 1, want: 1},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: 4294967296, want: -4294967296},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: 4294967296, want: 4294967296},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: 9223372036854775806, want: -9223372036854775806},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: sub_0_int64, fnname: "sub_0_int64", in: 9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: sub_int64_0, fnname: "sub_int64_0", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: -9223372036854775808, want: 9223372036854775807},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: -4294967296, want: 4294967297},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: -4294967296, want: -4294967297},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: -1, want: 2},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: -1, want: -2},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: 0, want: 1},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: 0, want: -1},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: 1, want: 0},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: 1, want: 0},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: 4294967296, want: -4294967295},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: 4294967296, want: 4294967295},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: 9223372036854775806, want: -9223372036854775805},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: 9223372036854775806, want: 9223372036854775805},
+       test_int64{fn: sub_1_int64, fnname: "sub_1_int64", in: 9223372036854775807, want: -9223372036854775806},
+       test_int64{fn: sub_int64_1, fnname: "sub_int64_1", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: -9223372036854775808, want: 9223372032559808512},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: -9223372036854775807, want: -9223372032559808513},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: -9223372036854775807, want: 9223372032559808513},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: -4294967296, want: 8589934592},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: -4294967296, want: -8589934592},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: -1, want: 4294967297},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: -1, want: -4294967297},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: 0, want: 4294967296},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: 0, want: -4294967296},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: 1, want: 4294967295},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: 1, want: -4294967295},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: 4294967296, want: 0},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: 4294967296, want: 0},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: 9223372036854775806, want: -9223372032559808510},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: 9223372036854775806, want: 9223372032559808510},
+       test_int64{fn: sub_4294967296_int64, fnname: "sub_4294967296_int64", in: 9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: sub_int64_4294967296, fnname: "sub_int64_4294967296", in: 9223372036854775807, want: 9223372032559808511},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: -9223372036854775808, want: -2},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: -9223372036854775808, want: 2},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: -9223372036854775807, want: -3},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: -9223372036854775807, want: 3},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: -4294967296, want: -9223372032559808514},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: -4294967296, want: 9223372032559808514},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: -1, want: 9223372036854775807},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: -1, want: -9223372036854775807},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: 0, want: 9223372036854775806},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: 0, want: -9223372036854775806},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: 1, want: 9223372036854775805},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: 1, want: -9223372036854775805},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: 4294967296, want: 9223372032559808510},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: 4294967296, want: -9223372032559808510},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: 9223372036854775806, want: 0},
+       test_int64{fn: sub_9223372036854775806_int64, fnname: "sub_9223372036854775806_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: sub_int64_9223372036854775806, fnname: "sub_int64_9223372036854775806", in: 9223372036854775807, want: 1},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: -9223372036854775808, want: -1},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: -9223372036854775808, want: 1},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: -9223372036854775807, want: -2},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: -9223372036854775807, want: 2},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: -4294967296, want: -9223372032559808513},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: -4294967296, want: 9223372032559808513},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: -1, want: -9223372036854775808},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: -1, want: -9223372036854775808},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: 0, want: 9223372036854775807},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: 0, want: -9223372036854775807},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: 1, want: 9223372036854775806},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: 1, want: -9223372036854775806},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: 4294967296, want: 9223372032559808511},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: 4294967296, want: -9223372032559808511},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: 9223372036854775806, want: 1},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: 9223372036854775806, want: -1},
+       test_int64{fn: sub_9223372036854775807_int64, fnname: "sub_9223372036854775807_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: sub_int64_9223372036854775807, fnname: "sub_int64_9223372036854775807", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: -9223372036854775808, want: 1},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: -9223372036854775808, want: 1},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: -9223372036854775807, want: 0},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: -4294967296, want: 2147483648},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: -4294967296, want: 0},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: -1, want: -9223372036854775808},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: -1, want: 0},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: 0, want: 0},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: 1, want: -9223372036854775808},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: 1, want: 0},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: 4294967296, want: -2147483648},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: 4294967296, want: 0},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_Neg9223372036854775808_int64, fnname: "div_Neg9223372036854775808_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: div_int64_Neg9223372036854775808, fnname: "div_int64_Neg9223372036854775808", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: -9223372036854775808, want: 1},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: -9223372036854775807, want: 1},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: -4294967296, want: 2147483647},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: -4294967296, want: 0},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: -1, want: 9223372036854775807},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: -1, want: 0},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: 0, want: 0},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: 1, want: -9223372036854775807},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: 1, want: 0},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: 4294967296, want: -2147483647},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: 4294967296, want: 0},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_Neg9223372036854775807_int64, fnname: "div_Neg9223372036854775807_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: div_int64_Neg9223372036854775807, fnname: "div_int64_Neg9223372036854775807", in: 9223372036854775807, want: -1},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: -9223372036854775808, want: 2147483648},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: -9223372036854775807, want: 2147483647},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: -4294967296, want: 1},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: -4294967296, want: 1},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: -1, want: 4294967296},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: -1, want: 0},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: 0, want: 0},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: 1, want: -4294967296},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: 1, want: 0},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: 4294967296, want: -1},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: 4294967296, want: -1},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: 9223372036854775806, want: -2147483647},
+       test_int64{fn: div_Neg4294967296_int64, fnname: "div_Neg4294967296_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_int64_Neg4294967296, fnname: "div_int64_Neg4294967296", in: 9223372036854775807, want: -2147483647},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: -9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: -4294967296, want: 0},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: -4294967296, want: 4294967296},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: -1, want: 1},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: -1, want: 1},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: 0, want: 0},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: 1, want: -1},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: 1, want: -1},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: 4294967296, want: 0},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: 4294967296, want: -4294967296},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: 9223372036854775806, want: -9223372036854775806},
+       test_int64{fn: div_Neg1_int64, fnname: "div_Neg1_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_int64_Neg1, fnname: "div_int64_Neg1", in: 9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: -4294967296, want: 0},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: -1, want: 0},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: 1, want: 0},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: 4294967296, want: 0},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_0_int64, fnname: "div_0_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: -4294967296, want: 0},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: -4294967296, want: -4294967296},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: -1, want: -1},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: -1, want: -1},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: 0, want: 0},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: 1, want: 1},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: 1, want: 1},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: 4294967296, want: 0},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: 4294967296, want: 4294967296},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: div_1_int64, fnname: "div_1_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_int64_1, fnname: "div_int64_1", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: -9223372036854775808, want: -2147483648},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: -9223372036854775807, want: -2147483647},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: -4294967296, want: -1},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: -4294967296, want: -1},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: -1, want: -4294967296},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: -1, want: 0},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: 0, want: 0},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: 1, want: 4294967296},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: 1, want: 0},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: 4294967296, want: 1},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: 4294967296, want: 1},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: 9223372036854775806, want: 2147483647},
+       test_int64{fn: div_4294967296_int64, fnname: "div_4294967296_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_int64_4294967296, fnname: "div_int64_4294967296", in: 9223372036854775807, want: 2147483647},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: -9223372036854775808, want: -1},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: -9223372036854775807, want: -1},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: -4294967296, want: -2147483647},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: -4294967296, want: 0},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: -1, want: -9223372036854775806},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: -1, want: 0},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: 0, want: 0},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: 1, want: 9223372036854775806},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: 1, want: 0},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: 4294967296, want: 2147483647},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: 4294967296, want: 0},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: 9223372036854775806, want: 1},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: 9223372036854775806, want: 1},
+       test_int64{fn: div_9223372036854775806_int64, fnname: "div_9223372036854775806_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: div_int64_9223372036854775806, fnname: "div_int64_9223372036854775806", in: 9223372036854775807, want: 1},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: -9223372036854775808, want: -1},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: -9223372036854775807, want: -1},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: -4294967296, want: -2147483647},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: -4294967296, want: 0},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: -1, want: -9223372036854775807},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: -1, want: 0},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: 0, want: 0},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: 1, want: 9223372036854775807},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: 1, want: 0},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: 4294967296, want: 2147483647},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: 4294967296, want: 0},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: 9223372036854775806, want: 1},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: 9223372036854775806, want: 0},
+       test_int64{fn: div_9223372036854775807_int64, fnname: "div_9223372036854775807_int64", in: 9223372036854775807, want: 1},
+       test_int64{fn: div_int64_9223372036854775807, fnname: "div_int64_9223372036854775807", in: 9223372036854775807, want: 1},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: -4294967296, want: 0},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: -4294967296, want: 0},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: -1, want: -9223372036854775808},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: -1, want: -9223372036854775808},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: 0, want: 0},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: 1, want: -9223372036854775808},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: 1, want: -9223372036854775808},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: 4294967296, want: 0},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: 4294967296, want: 0},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: 9223372036854775806, want: 0},
+       test_int64{fn: mul_Neg9223372036854775808_int64, fnname: "mul_Neg9223372036854775808_int64", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: mul_int64_Neg9223372036854775808, fnname: "mul_int64_Neg9223372036854775808", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: -9223372036854775807, want: 1},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: -4294967296, want: -4294967296},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: -1, want: 9223372036854775807},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: -1, want: 9223372036854775807},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: 0, want: 0},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: 1, want: -9223372036854775807},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: 1, want: -9223372036854775807},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: 4294967296, want: 4294967296},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: mul_Neg9223372036854775807_int64, fnname: "mul_Neg9223372036854775807_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: mul_int64_Neg9223372036854775807, fnname: "mul_int64_Neg9223372036854775807", in: 9223372036854775807, want: -1},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: -9223372036854775807, want: -4294967296},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: -9223372036854775807, want: -4294967296},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: -4294967296, want: 0},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: -4294967296, want: 0},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: -1, want: 4294967296},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: -1, want: 4294967296},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: 0, want: 0},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: 1, want: -4294967296},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: 1, want: -4294967296},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: 4294967296, want: 0},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: 4294967296, want: 0},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: 9223372036854775806, want: 8589934592},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: 9223372036854775806, want: 8589934592},
+       test_int64{fn: mul_Neg4294967296_int64, fnname: "mul_Neg4294967296_int64", in: 9223372036854775807, want: 4294967296},
+       test_int64{fn: mul_int64_Neg4294967296, fnname: "mul_int64_Neg4294967296", in: 9223372036854775807, want: 4294967296},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: -9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: -9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: -4294967296, want: 4294967296},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: -4294967296, want: 4294967296},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: -1, want: 1},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: -1, want: 1},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: 0, want: 0},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: 1, want: -1},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: 1, want: -1},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: 4294967296, want: -4294967296},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: 4294967296, want: -4294967296},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: 9223372036854775806, want: -9223372036854775806},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: 9223372036854775806, want: -9223372036854775806},
+       test_int64{fn: mul_Neg1_int64, fnname: "mul_Neg1_int64", in: 9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: mul_int64_Neg1, fnname: "mul_int64_Neg1", in: 9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: -9223372036854775807, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: -4294967296, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: -4294967296, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: -1, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: -1, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: 0, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: 1, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: 1, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: 4294967296, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: 4294967296, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: 9223372036854775806, want: 0},
+       test_int64{fn: mul_0_int64, fnname: "mul_0_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: mul_int64_0, fnname: "mul_int64_0", in: 9223372036854775807, want: 0},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: -4294967296, want: -4294967296},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: -1, want: -1},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: -1, want: -1},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: 0, want: 0},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: 1, want: 1},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: 1, want: 1},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: 4294967296, want: 4294967296},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: mul_1_int64, fnname: "mul_1_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: mul_int64_1, fnname: "mul_int64_1", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: -9223372036854775807, want: 4294967296},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: -9223372036854775807, want: 4294967296},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: -4294967296, want: 0},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: -4294967296, want: 0},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: -1, want: -4294967296},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: -1, want: -4294967296},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: 0, want: 0},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: 1, want: 4294967296},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: 1, want: 4294967296},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: 4294967296, want: 0},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: 4294967296, want: 0},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: 9223372036854775806, want: -8589934592},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: 9223372036854775806, want: -8589934592},
+       test_int64{fn: mul_4294967296_int64, fnname: "mul_4294967296_int64", in: 9223372036854775807, want: -4294967296},
+       test_int64{fn: mul_int64_4294967296, fnname: "mul_int64_4294967296", in: 9223372036854775807, want: -4294967296},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: -9223372036854775808, want: 0},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: -9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: -9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: -4294967296, want: 8589934592},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: -4294967296, want: 8589934592},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: -1, want: -9223372036854775806},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: -1, want: -9223372036854775806},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: 0, want: 0},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: 1, want: 9223372036854775806},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: 1, want: 9223372036854775806},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: 4294967296, want: -8589934592},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: 4294967296, want: -8589934592},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: 9223372036854775806, want: 4},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: 9223372036854775806, want: 4},
+       test_int64{fn: mul_9223372036854775806_int64, fnname: "mul_9223372036854775806_int64", in: 9223372036854775807, want: -9223372036854775806},
+       test_int64{fn: mul_int64_9223372036854775806, fnname: "mul_int64_9223372036854775806", in: 9223372036854775807, want: -9223372036854775806},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: -9223372036854775807, want: -1},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: -4294967296, want: 4294967296},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: -4294967296, want: 4294967296},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: -1, want: -9223372036854775807},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: -1, want: -9223372036854775807},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: 0, want: 0},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: 0, want: 0},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: 1, want: 9223372036854775807},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: 1, want: 9223372036854775807},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: 4294967296, want: -4294967296},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: 4294967296, want: -4294967296},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: 9223372036854775806, want: -9223372036854775806},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: 9223372036854775806, want: -9223372036854775806},
+       test_int64{fn: mul_9223372036854775807_int64, fnname: "mul_9223372036854775807_int64", in: 9223372036854775807, want: 1},
+       test_int64{fn: mul_int64_9223372036854775807, fnname: "mul_int64_9223372036854775807", in: 9223372036854775807, want: 1},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: -9223372036854775808, want: 0},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: -4294967296, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: -4294967296, want: -4294967296},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: -1, want: -1},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: 0, want: 0},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: 1, want: 1},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: 4294967296, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: 4294967296, want: 4294967296},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: 9223372036854775806, want: -2},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: mod_Neg9223372036854775808_int64, fnname: "mod_Neg9223372036854775808_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: mod_int64_Neg9223372036854775808, fnname: "mod_int64_Neg9223372036854775808", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: -9223372036854775808, want: -1},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: -9223372036854775807, want: 0},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: -4294967296, want: -4294967295},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: -4294967296, want: -4294967296},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: -1, want: -1},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: 0, want: 0},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: 1, want: 1},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: 4294967296, want: -4294967295},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: 4294967296, want: 4294967296},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: mod_Neg9223372036854775807_int64, fnname: "mod_Neg9223372036854775807_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: mod_int64_Neg9223372036854775807, fnname: "mod_int64_Neg9223372036854775807", in: 9223372036854775807, want: 0},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: -9223372036854775808, want: -4294967296},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: -9223372036854775808, want: 0},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: -9223372036854775807, want: -4294967296},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: -9223372036854775807, want: -4294967295},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: -4294967296, want: 0},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: -4294967296, want: 0},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: -1, want: -1},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: 0, want: 0},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: 1, want: 1},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: 4294967296, want: 0},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: 4294967296, want: 0},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: 9223372036854775806, want: -4294967296},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: 9223372036854775806, want: 4294967294},
+       test_int64{fn: mod_Neg4294967296_int64, fnname: "mod_Neg4294967296_int64", in: 9223372036854775807, want: -4294967296},
+       test_int64{fn: mod_int64_Neg4294967296, fnname: "mod_int64_Neg4294967296", in: 9223372036854775807, want: 4294967295},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: -9223372036854775808, want: -1},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: -9223372036854775808, want: 0},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: -9223372036854775807, want: 0},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: -4294967296, want: -1},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: -4294967296, want: 0},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: -1, want: 0},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: 0, want: 0},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: 1, want: 0},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: 4294967296, want: -1},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: 4294967296, want: 0},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: 9223372036854775806, want: 0},
+       test_int64{fn: mod_Neg1_int64, fnname: "mod_Neg1_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: mod_int64_Neg1, fnname: "mod_int64_Neg1", in: 9223372036854775807, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: -4294967296, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: -1, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: 1, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: 4294967296, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: mod_0_int64, fnname: "mod_0_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: -9223372036854775808, want: 1},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: -9223372036854775808, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: -9223372036854775807, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: -4294967296, want: 1},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: -4294967296, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: -1, want: 0},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: 0, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: 1, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: 4294967296, want: 1},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: 4294967296, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: 9223372036854775806, want: 1},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: 9223372036854775806, want: 0},
+       test_int64{fn: mod_1_int64, fnname: "mod_1_int64", in: 9223372036854775807, want: 1},
+       test_int64{fn: mod_int64_1, fnname: "mod_int64_1", in: 9223372036854775807, want: 0},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: -9223372036854775808, want: 4294967296},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: -9223372036854775808, want: 0},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: -9223372036854775807, want: 4294967296},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: -9223372036854775807, want: -4294967295},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: -4294967296, want: 0},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: -4294967296, want: 0},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: -1, want: -1},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: 0, want: 0},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: 1, want: 1},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: 4294967296, want: 0},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: 4294967296, want: 0},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: 9223372036854775806, want: 4294967296},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: 9223372036854775806, want: 4294967294},
+       test_int64{fn: mod_4294967296_int64, fnname: "mod_4294967296_int64", in: 9223372036854775807, want: 4294967296},
+       test_int64{fn: mod_int64_4294967296, fnname: "mod_int64_4294967296", in: 9223372036854775807, want: 4294967295},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: -9223372036854775808, want: 9223372036854775806},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: -9223372036854775808, want: -2},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: -9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: -9223372036854775807, want: -1},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: -4294967296, want: 4294967294},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: -4294967296, want: -4294967296},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: -1, want: -1},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: 0, want: 0},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: 1, want: 1},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: 4294967296, want: 4294967294},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: 4294967296, want: 4294967296},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: 9223372036854775806, want: 0},
+       test_int64{fn: mod_9223372036854775806_int64, fnname: "mod_9223372036854775806_int64", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: mod_int64_9223372036854775806, fnname: "mod_int64_9223372036854775806", in: 9223372036854775807, want: 1},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: -9223372036854775808, want: 9223372036854775807},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: -9223372036854775808, want: -1},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: -9223372036854775807, want: 0},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: -4294967296, want: 4294967295},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: -4294967296, want: -4294967296},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: -1, want: 0},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: -1, want: -1},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: 0, want: 0},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: 1, want: 0},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: 1, want: 1},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: 4294967296, want: 4294967295},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: 4294967296, want: 4294967296},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: 9223372036854775806, want: 1},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: mod_9223372036854775807_int64, fnname: "mod_9223372036854775807_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: mod_int64_9223372036854775807, fnname: "mod_int64_9223372036854775807", in: 9223372036854775807, want: 0},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: -4294967296, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: -4294967296, want: -9223372036854775808},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: -1, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: -1, want: -9223372036854775808},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: 0, want: 0},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: 1, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: 1, want: 0},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: 4294967296, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: 4294967296, want: 0},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_Neg9223372036854775808_int64, fnname: "and_Neg9223372036854775808_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775808, fnname: "and_int64_Neg9223372036854775808", in: 9223372036854775807, want: 0},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: -4294967296, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: -4294967296, want: -9223372036854775808},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: -1, want: -9223372036854775807},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: -1, want: -9223372036854775807},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: 0, want: 0},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: 1, want: 1},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: 1, want: 1},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: 4294967296, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: 4294967296, want: 0},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_Neg9223372036854775807_int64, fnname: "and_Neg9223372036854775807_int64", in: 9223372036854775807, want: 1},
+       test_int64{fn: and_int64_Neg9223372036854775807, fnname: "and_int64_Neg9223372036854775807", in: 9223372036854775807, want: 1},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: -4294967296, want: -4294967296},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: -1, want: -4294967296},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: -1, want: -4294967296},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: 0, want: 0},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: 1, want: 0},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: 1, want: 0},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: 9223372036854775806, want: 9223372032559808512},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: 9223372036854775806, want: 9223372032559808512},
+       test_int64{fn: and_Neg4294967296_int64, fnname: "and_Neg4294967296_int64", in: 9223372036854775807, want: 9223372032559808512},
+       test_int64{fn: and_int64_Neg4294967296, fnname: "and_int64_Neg4294967296", in: 9223372036854775807, want: 9223372032559808512},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: -4294967296, want: -4294967296},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: -1, want: -1},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: -1, want: -1},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: 0, want: 0},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: 1, want: 1},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: 1, want: 1},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: and_Neg1_int64, fnname: "and_Neg1_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: and_int64_Neg1, fnname: "and_int64_Neg1", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: -9223372036854775807, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: -4294967296, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: -4294967296, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: -1, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: -1, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: 0, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: 1, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: 1, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: 4294967296, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: 4294967296, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_0_int64, fnname: "and_0_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: and_int64_0, fnname: "and_int64_0", in: 9223372036854775807, want: 0},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: -9223372036854775807, want: 1},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: -4294967296, want: 0},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: -4294967296, want: 0},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: -1, want: 1},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: -1, want: 1},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: 0, want: 0},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: 1, want: 1},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: 1, want: 1},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: 4294967296, want: 0},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: 4294967296, want: 0},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: 9223372036854775806, want: 0},
+       test_int64{fn: and_1_int64, fnname: "and_1_int64", in: 9223372036854775807, want: 1},
+       test_int64{fn: and_int64_1, fnname: "and_int64_1", in: 9223372036854775807, want: 1},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: -9223372036854775807, want: 0},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: -4294967296, want: 4294967296},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: -4294967296, want: 4294967296},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: -1, want: 4294967296},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: -1, want: 4294967296},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: 0, want: 0},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: 1, want: 0},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: 1, want: 0},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: 9223372036854775806, want: 4294967296},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: 9223372036854775806, want: 4294967296},
+       test_int64{fn: and_4294967296_int64, fnname: "and_4294967296_int64", in: 9223372036854775807, want: 4294967296},
+       test_int64{fn: and_int64_4294967296, fnname: "and_int64_4294967296", in: 9223372036854775807, want: 4294967296},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: -9223372036854775807, want: 0},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: -1, want: 9223372036854775806},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: -1, want: 9223372036854775806},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: 0, want: 0},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: 1, want: 0},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: 1, want: 0},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: and_9223372036854775806_int64, fnname: "and_9223372036854775806_int64", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: and_int64_9223372036854775806, fnname: "and_int64_9223372036854775806", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: -9223372036854775808, want: 0},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: -9223372036854775807, want: 1},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: -1, want: 9223372036854775807},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: -1, want: 9223372036854775807},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: 0, want: 0},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: 0, want: 0},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: 1, want: 1},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: 1, want: 1},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: 4294967296, want: 4294967296},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: and_9223372036854775807_int64, fnname: "and_9223372036854775807_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: and_int64_9223372036854775807, fnname: "and_int64_9223372036854775807", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: -1, want: -1},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: 0, want: -9223372036854775808},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: 0, want: -9223372036854775808},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: 1, want: -9223372036854775807},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: 1, want: -9223372036854775807},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: 4294967296, want: -9223372032559808512},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: 4294967296, want: -9223372032559808512},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: 9223372036854775806, want: -2},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: 9223372036854775806, want: -2},
+       test_int64{fn: or_Neg9223372036854775808_int64, fnname: "or_Neg9223372036854775808_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_int64_Neg9223372036854775808, fnname: "or_int64_Neg9223372036854775808", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: -4294967296, want: -4294967295},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: -4294967296, want: -4294967295},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: -1, want: -1},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: 0, want: -9223372036854775807},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: 0, want: -9223372036854775807},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: 1, want: -9223372036854775807},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: 1, want: -9223372036854775807},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: 4294967296, want: -9223372032559808511},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: 4294967296, want: -9223372032559808511},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: 9223372036854775806, want: -1},
+       test_int64{fn: or_Neg9223372036854775807_int64, fnname: "or_Neg9223372036854775807_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_int64_Neg9223372036854775807, fnname: "or_int64_Neg9223372036854775807", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: -9223372036854775808, want: -4294967296},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: -9223372036854775808, want: -4294967296},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: -9223372036854775807, want: -4294967295},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: -9223372036854775807, want: -4294967295},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: -1, want: -1},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: 0, want: -4294967296},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: 0, want: -4294967296},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: 1, want: -4294967295},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: 1, want: -4294967295},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: 4294967296, want: -4294967296},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: 4294967296, want: -4294967296},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: 9223372036854775806, want: -2},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: 9223372036854775806, want: -2},
+       test_int64{fn: or_Neg4294967296_int64, fnname: "or_Neg4294967296_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_int64_Neg4294967296, fnname: "or_int64_Neg4294967296", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: -9223372036854775808, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: -9223372036854775808, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: -9223372036854775807, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: -4294967296, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: -4294967296, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: -1, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: 0, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: 0, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: 1, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: 1, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: 4294967296, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: 4294967296, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: 9223372036854775806, want: -1},
+       test_int64{fn: or_Neg1_int64, fnname: "or_Neg1_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_int64_Neg1, fnname: "or_int64_Neg1", in: 9223372036854775807, want: -1},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: -1, want: -1},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: 0, want: 0},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: 0, want: 0},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: 1, want: 1},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: 1, want: 1},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: 4294967296, want: 4294967296},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: or_0_int64, fnname: "or_0_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_int64_0, fnname: "or_int64_0", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: -4294967296, want: -4294967295},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: -4294967296, want: -4294967295},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: -1, want: -1},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: 0, want: 1},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: 0, want: 1},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: 1, want: 1},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: 1, want: 1},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: 4294967296, want: 4294967297},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: 4294967296, want: 4294967297},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: or_1_int64, fnname: "or_1_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_int64_1, fnname: "or_int64_1", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: -9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: -9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: -4294967296, want: -4294967296},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: -1, want: -1},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: 0, want: 4294967296},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: 0, want: 4294967296},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: 1, want: 4294967297},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: 1, want: 4294967297},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: 4294967296, want: 4294967296},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: or_4294967296_int64, fnname: "or_4294967296_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_int64_4294967296, fnname: "or_int64_4294967296", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: -9223372036854775808, want: -2},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: -9223372036854775808, want: -2},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: -9223372036854775807, want: -1},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: -4294967296, want: -2},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: -4294967296, want: -2},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: -1, want: -1},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: 0, want: 9223372036854775806},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: 0, want: 9223372036854775806},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: 1, want: 9223372036854775807},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: 1, want: 9223372036854775807},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: 4294967296, want: 9223372036854775806},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: 4294967296, want: 9223372036854775806},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: or_9223372036854775806_int64, fnname: "or_9223372036854775806_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_int64_9223372036854775806, fnname: "or_int64_9223372036854775806", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: -9223372036854775808, want: -1},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: -9223372036854775808, want: -1},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: -9223372036854775807, want: -1},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: -4294967296, want: -1},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: -4294967296, want: -1},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: -1, want: -1},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: -1, want: -1},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: 0, want: 9223372036854775807},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: 0, want: 9223372036854775807},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: 1, want: 9223372036854775807},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: 1, want: 9223372036854775807},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: 4294967296, want: 9223372036854775807},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: 4294967296, want: 9223372036854775807},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: or_9223372036854775807_int64, fnname: "or_9223372036854775807_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: or_int64_9223372036854775807, fnname: "or_int64_9223372036854775807", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: -9223372036854775808, want: 0},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: -9223372036854775808, want: 0},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: -9223372036854775807, want: 1},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: -9223372036854775807, want: 1},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: -4294967296, want: 9223372032559808512},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: -1, want: 9223372036854775807},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: -1, want: 9223372036854775807},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: 0, want: -9223372036854775808},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: 0, want: -9223372036854775808},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: 1, want: -9223372036854775807},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: 1, want: -9223372036854775807},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: 4294967296, want: -9223372032559808512},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: 4294967296, want: -9223372032559808512},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: 9223372036854775806, want: -2},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: 9223372036854775806, want: -2},
+       test_int64{fn: xor_Neg9223372036854775808_int64, fnname: "xor_Neg9223372036854775808_int64", in: 9223372036854775807, want: -1},
+       test_int64{fn: xor_int64_Neg9223372036854775808, fnname: "xor_int64_Neg9223372036854775808", in: 9223372036854775807, want: -1},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: -9223372036854775808, want: 1},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: -9223372036854775808, want: 1},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: -9223372036854775807, want: 0},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: -9223372036854775807, want: 0},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: -4294967296, want: 9223372032559808513},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: -4294967296, want: 9223372032559808513},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: -1, want: 9223372036854775806},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: -1, want: 9223372036854775806},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: 0, want: -9223372036854775807},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: 0, want: -9223372036854775807},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: 1, want: -9223372036854775808},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: 1, want: -9223372036854775808},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: 4294967296, want: -9223372032559808511},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: 4294967296, want: -9223372032559808511},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: 9223372036854775806, want: -1},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: 9223372036854775806, want: -1},
+       test_int64{fn: xor_Neg9223372036854775807_int64, fnname: "xor_Neg9223372036854775807_int64", in: 9223372036854775807, want: -2},
+       test_int64{fn: xor_int64_Neg9223372036854775807, fnname: "xor_int64_Neg9223372036854775807", in: 9223372036854775807, want: -2},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: -9223372036854775808, want: 9223372032559808512},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: -9223372036854775808, want: 9223372032559808512},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: -9223372036854775807, want: 9223372032559808513},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: -9223372036854775807, want: 9223372032559808513},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: -4294967296, want: 0},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: -4294967296, want: 0},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: -1, want: 4294967295},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: -1, want: 4294967295},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: 0, want: -4294967296},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: 0, want: -4294967296},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: 1, want: -4294967295},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: 1, want: -4294967295},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: 4294967296, want: -8589934592},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: 4294967296, want: -8589934592},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: 9223372036854775806, want: -9223372032559808514},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: 9223372036854775806, want: -9223372032559808514},
+       test_int64{fn: xor_Neg4294967296_int64, fnname: "xor_Neg4294967296_int64", in: 9223372036854775807, want: -9223372032559808513},
+       test_int64{fn: xor_int64_Neg4294967296, fnname: "xor_int64_Neg4294967296", in: 9223372036854775807, want: -9223372032559808513},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: -9223372036854775808, want: 9223372036854775807},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: -9223372036854775808, want: 9223372036854775807},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: -9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: -9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: -4294967296, want: 4294967295},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: -4294967296, want: 4294967295},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: -1, want: 0},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: -1, want: 0},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: 0, want: -1},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: 0, want: -1},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: 1, want: -2},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: 1, want: -2},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: 4294967296, want: -4294967297},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: 4294967296, want: -4294967297},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: 9223372036854775806, want: -9223372036854775807},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: 9223372036854775806, want: -9223372036854775807},
+       test_int64{fn: xor_Neg1_int64, fnname: "xor_Neg1_int64", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: xor_int64_Neg1, fnname: "xor_int64_Neg1", in: 9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: -9223372036854775808, want: -9223372036854775808},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: -9223372036854775807, want: -9223372036854775807},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: -4294967296, want: -4294967296},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: -4294967296, want: -4294967296},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: -1, want: -1},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: -1, want: -1},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: 0, want: 0},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: 0, want: 0},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: 1, want: 1},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: 1, want: 1},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: 4294967296, want: 4294967296},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: 4294967296, want: 4294967296},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: 9223372036854775806, want: 9223372036854775806},
+       test_int64{fn: xor_0_int64, fnname: "xor_0_int64", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: xor_int64_0, fnname: "xor_int64_0", in: 9223372036854775807, want: 9223372036854775807},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: -9223372036854775808, want: -9223372036854775807},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: -9223372036854775807, want: -9223372036854775808},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: -4294967296, want: -4294967295},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: -4294967296, want: -4294967295},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: -1, want: -2},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: -1, want: -2},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: 0, want: 1},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: 0, want: 1},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: 1, want: 0},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: 1, want: 0},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: 4294967296, want: 4294967297},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: 4294967296, want: 4294967297},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: 9223372036854775806, want: 9223372036854775807},
+       test_int64{fn: xor_1_int64, fnname: "xor_1_int64", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: xor_int64_1, fnname: "xor_int64_1", in: 9223372036854775807, want: 9223372036854775806},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: -9223372036854775808, want: -9223372032559808512},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: -9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: -9223372036854775807, want: -9223372032559808511},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: -4294967296, want: -8589934592},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: -4294967296, want: -8589934592},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: -1, want: -4294967297},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: -1, want: -4294967297},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: 0, want: 4294967296},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: 0, want: 4294967296},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: 1, want: 4294967297},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: 1, want: 4294967297},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: 4294967296, want: 0},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: 4294967296, want: 0},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: 9223372036854775806, want: 9223372032559808510},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: 9223372036854775806, want: 9223372032559808510},
+       test_int64{fn: xor_4294967296_int64, fnname: "xor_4294967296_int64", in: 9223372036854775807, want: 9223372032559808511},
+       test_int64{fn: xor_int64_4294967296, fnname: "xor_int64_4294967296", in: 9223372036854775807, want: 9223372032559808511},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: -9223372036854775808, want: -2},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: -9223372036854775808, want: -2},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: -9223372036854775807, want: -1},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: -9223372036854775807, want: -1},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: -4294967296, want: -9223372032559808514},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: -4294967296, want: -9223372032559808514},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: -1, want: -9223372036854775807},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: -1, want: -9223372036854775807},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: 0, want: 9223372036854775806},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: 0, want: 9223372036854775806},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: 1, want: 9223372036854775807},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: 1, want: 9223372036854775807},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: 4294967296, want: 9223372032559808510},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: 4294967296, want: 9223372032559808510},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: 9223372036854775806, want: 0},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: 9223372036854775806, want: 0},
+       test_int64{fn: xor_9223372036854775806_int64, fnname: "xor_9223372036854775806_int64", in: 9223372036854775807, want: 1},
+       test_int64{fn: xor_int64_9223372036854775806, fnname: "xor_int64_9223372036854775806", in: 9223372036854775807, want: 1},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: -9223372036854775808, want: -1},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: -9223372036854775808, want: -1},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: -9223372036854775807, want: -2},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: -9223372036854775807, want: -2},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: -4294967296, want: -9223372032559808513},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: -4294967296, want: -9223372032559808513},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: -1, want: -9223372036854775808},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: -1, want: -9223372036854775808},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: 0, want: 9223372036854775807},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: 0, want: 9223372036854775807},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: 1, want: 9223372036854775806},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: 1, want: 9223372036854775806},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: 4294967296, want: 9223372032559808511},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: 4294967296, want: 9223372032559808511},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: 9223372036854775806, want: 1},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: 9223372036854775806, want: 1},
+       test_int64{fn: xor_9223372036854775807_int64, fnname: "xor_9223372036854775807_int64", in: 9223372036854775807, want: 0},
+       test_int64{fn: xor_int64_9223372036854775807, fnname: "xor_int64_9223372036854775807", in: 9223372036854775807, want: 0}}
+
+type test_uint32 struct {
+       fn     func(uint32) uint32
+       fnname string
+       in     uint32
+       want   uint32
+}
+
+var tests_uint32 = []test_uint32{
+
+       test_uint32{fn: add_0_uint32, fnname: "add_0_uint32", in: 0, want: 0},
+       test_uint32{fn: add_uint32_0, fnname: "add_uint32_0", in: 0, want: 0},
+       test_uint32{fn: add_0_uint32, fnname: "add_0_uint32", in: 1, want: 1},
+       test_uint32{fn: add_uint32_0, fnname: "add_uint32_0", in: 1, want: 1},
+       test_uint32{fn: add_0_uint32, fnname: "add_0_uint32", in: 4294967295, want: 4294967295},
+       test_uint32{fn: add_uint32_0, fnname: "add_uint32_0", in: 4294967295, want: 4294967295},
+       test_uint32{fn: add_1_uint32, fnname: "add_1_uint32", in: 0, want: 1},
+       test_uint32{fn: add_uint32_1, fnname: "add_uint32_1", in: 0, want: 1},
+       test_uint32{fn: add_1_uint32, fnname: "add_1_uint32", in: 1, want: 2},
+       test_uint32{fn: add_uint32_1, fnname: "add_uint32_1", in: 1, want: 2},
+       test_uint32{fn: add_1_uint32, fnname: "add_1_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: add_uint32_1, fnname: "add_uint32_1", in: 4294967295, want: 0},
+       test_uint32{fn: add_4294967295_uint32, fnname: "add_4294967295_uint32", in: 0, want: 4294967295},
+       test_uint32{fn: add_uint32_4294967295, fnname: "add_uint32_4294967295", in: 0, want: 4294967295},
+       test_uint32{fn: add_4294967295_uint32, fnname: "add_4294967295_uint32", in: 1, want: 0},
+       test_uint32{fn: add_uint32_4294967295, fnname: "add_uint32_4294967295", in: 1, want: 0},
+       test_uint32{fn: add_4294967295_uint32, fnname: "add_4294967295_uint32", in: 4294967295, want: 4294967294},
+       test_uint32{fn: add_uint32_4294967295, fnname: "add_uint32_4294967295", in: 4294967295, want: 4294967294},
+       test_uint32{fn: sub_0_uint32, fnname: "sub_0_uint32", in: 0, want: 0},
+       test_uint32{fn: sub_uint32_0, fnname: "sub_uint32_0", in: 0, want: 0},
+       test_uint32{fn: sub_0_uint32, fnname: "sub_0_uint32", in: 1, want: 4294967295},
+       test_uint32{fn: sub_uint32_0, fnname: "sub_uint32_0", in: 1, want: 1},
+       test_uint32{fn: sub_0_uint32, fnname: "sub_0_uint32", in: 4294967295, want: 1},
+       test_uint32{fn: sub_uint32_0, fnname: "sub_uint32_0", in: 4294967295, want: 4294967295},
+       test_uint32{fn: sub_1_uint32, fnname: "sub_1_uint32", in: 0, want: 1},
+       test_uint32{fn: sub_uint32_1, fnname: "sub_uint32_1", in: 0, want: 4294967295},
+       test_uint32{fn: sub_1_uint32, fnname: "sub_1_uint32", in: 1, want: 0},
+       test_uint32{fn: sub_uint32_1, fnname: "sub_uint32_1", in: 1, want: 0},
+       test_uint32{fn: sub_1_uint32, fnname: "sub_1_uint32", in: 4294967295, want: 2},
+       test_uint32{fn: sub_uint32_1, fnname: "sub_uint32_1", in: 4294967295, want: 4294967294},
+       test_uint32{fn: sub_4294967295_uint32, fnname: "sub_4294967295_uint32", in: 0, want: 4294967295},
+       test_uint32{fn: sub_uint32_4294967295, fnname: "sub_uint32_4294967295", in: 0, want: 1},
+       test_uint32{fn: sub_4294967295_uint32, fnname: "sub_4294967295_uint32", in: 1, want: 4294967294},
+       test_uint32{fn: sub_uint32_4294967295, fnname: "sub_uint32_4294967295", in: 1, want: 2},
+       test_uint32{fn: sub_4294967295_uint32, fnname: "sub_4294967295_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: sub_uint32_4294967295, fnname: "sub_uint32_4294967295", in: 4294967295, want: 0},
+       test_uint32{fn: div_0_uint32, fnname: "div_0_uint32", in: 1, want: 0},
+       test_uint32{fn: div_0_uint32, fnname: "div_0_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: div_uint32_1, fnname: "div_uint32_1", in: 0, want: 0},
+       test_uint32{fn: div_1_uint32, fnname: "div_1_uint32", in: 1, want: 1},
+       test_uint32{fn: div_uint32_1, fnname: "div_uint32_1", in: 1, want: 1},
+       test_uint32{fn: div_1_uint32, fnname: "div_1_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: div_uint32_1, fnname: "div_uint32_1", in: 4294967295, want: 4294967295},
+       test_uint32{fn: div_uint32_4294967295, fnname: "div_uint32_4294967295", in: 0, want: 0},
+       test_uint32{fn: div_4294967295_uint32, fnname: "div_4294967295_uint32", in: 1, want: 4294967295},
+       test_uint32{fn: div_uint32_4294967295, fnname: "div_uint32_4294967295", in: 1, want: 0},
+       test_uint32{fn: div_4294967295_uint32, fnname: "div_4294967295_uint32", in: 4294967295, want: 1},
+       test_uint32{fn: div_uint32_4294967295, fnname: "div_uint32_4294967295", in: 4294967295, want: 1},
+       test_uint32{fn: mul_0_uint32, fnname: "mul_0_uint32", in: 0, want: 0},
+       test_uint32{fn: mul_uint32_0, fnname: "mul_uint32_0", in: 0, want: 0},
+       test_uint32{fn: mul_0_uint32, fnname: "mul_0_uint32", in: 1, want: 0},
+       test_uint32{fn: mul_uint32_0, fnname: "mul_uint32_0", in: 1, want: 0},
+       test_uint32{fn: mul_0_uint32, fnname: "mul_0_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: mul_uint32_0, fnname: "mul_uint32_0", in: 4294967295, want: 0},
+       test_uint32{fn: mul_1_uint32, fnname: "mul_1_uint32", in: 0, want: 0},
+       test_uint32{fn: mul_uint32_1, fnname: "mul_uint32_1", in: 0, want: 0},
+       test_uint32{fn: mul_1_uint32, fnname: "mul_1_uint32", in: 1, want: 1},
+       test_uint32{fn: mul_uint32_1, fnname: "mul_uint32_1", in: 1, want: 1},
+       test_uint32{fn: mul_1_uint32, fnname: "mul_1_uint32", in: 4294967295, want: 4294967295},
+       test_uint32{fn: mul_uint32_1, fnname: "mul_uint32_1", in: 4294967295, want: 4294967295},
+       test_uint32{fn: mul_4294967295_uint32, fnname: "mul_4294967295_uint32", in: 0, want: 0},
+       test_uint32{fn: mul_uint32_4294967295, fnname: "mul_uint32_4294967295", in: 0, want: 0},
+       test_uint32{fn: mul_4294967295_uint32, fnname: "mul_4294967295_uint32", in: 1, want: 4294967295},
+       test_uint32{fn: mul_uint32_4294967295, fnname: "mul_uint32_4294967295", in: 1, want: 4294967295},
+       test_uint32{fn: mul_4294967295_uint32, fnname: "mul_4294967295_uint32", in: 4294967295, want: 1},
+       test_uint32{fn: mul_uint32_4294967295, fnname: "mul_uint32_4294967295", in: 4294967295, want: 1},
+       test_uint32{fn: lsh_0_uint32, fnname: "lsh_0_uint32", in: 0, want: 0},
+       test_uint32{fn: lsh_uint32_0, fnname: "lsh_uint32_0", in: 0, want: 0},
+       test_uint32{fn: lsh_0_uint32, fnname: "lsh_0_uint32", in: 1, want: 0},
+       test_uint32{fn: lsh_uint32_0, fnname: "lsh_uint32_0", in: 1, want: 1},
+       test_uint32{fn: lsh_0_uint32, fnname: "lsh_0_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: lsh_uint32_0, fnname: "lsh_uint32_0", in: 4294967295, want: 4294967295},
+       test_uint32{fn: lsh_1_uint32, fnname: "lsh_1_uint32", in: 0, want: 1},
+       test_uint32{fn: lsh_uint32_1, fnname: "lsh_uint32_1", in: 0, want: 0},
+       test_uint32{fn: lsh_1_uint32, fnname: "lsh_1_uint32", in: 1, want: 2},
+       test_uint32{fn: lsh_uint32_1, fnname: "lsh_uint32_1", in: 1, want: 2},
+       test_uint32{fn: lsh_1_uint32, fnname: "lsh_1_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: lsh_uint32_1, fnname: "lsh_uint32_1", in: 4294967295, want: 4294967294},
+       test_uint32{fn: lsh_4294967295_uint32, fnname: "lsh_4294967295_uint32", in: 0, want: 4294967295},
+       test_uint32{fn: lsh_uint32_4294967295, fnname: "lsh_uint32_4294967295", in: 0, want: 0},
+       test_uint32{fn: lsh_4294967295_uint32, fnname: "lsh_4294967295_uint32", in: 1, want: 4294967294},
+       test_uint32{fn: lsh_uint32_4294967295, fnname: "lsh_uint32_4294967295", in: 1, want: 0},
+       test_uint32{fn: lsh_4294967295_uint32, fnname: "lsh_4294967295_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: lsh_uint32_4294967295, fnname: "lsh_uint32_4294967295", in: 4294967295, want: 0},
+       test_uint32{fn: rsh_0_uint32, fnname: "rsh_0_uint32", in: 0, want: 0},
+       test_uint32{fn: rsh_uint32_0, fnname: "rsh_uint32_0", in: 0, want: 0},
+       test_uint32{fn: rsh_0_uint32, fnname: "rsh_0_uint32", in: 1, want: 0},
+       test_uint32{fn: rsh_uint32_0, fnname: "rsh_uint32_0", in: 1, want: 1},
+       test_uint32{fn: rsh_0_uint32, fnname: "rsh_0_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: rsh_uint32_0, fnname: "rsh_uint32_0", in: 4294967295, want: 4294967295},
+       test_uint32{fn: rsh_1_uint32, fnname: "rsh_1_uint32", in: 0, want: 1},
+       test_uint32{fn: rsh_uint32_1, fnname: "rsh_uint32_1", in: 0, want: 0},
+       test_uint32{fn: rsh_1_uint32, fnname: "rsh_1_uint32", in: 1, want: 0},
+       test_uint32{fn: rsh_uint32_1, fnname: "rsh_uint32_1", in: 1, want: 0},
+       test_uint32{fn: rsh_1_uint32, fnname: "rsh_1_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: rsh_uint32_1, fnname: "rsh_uint32_1", in: 4294967295, want: 2147483647},
+       test_uint32{fn: rsh_4294967295_uint32, fnname: "rsh_4294967295_uint32", in: 0, want: 4294967295},
+       test_uint32{fn: rsh_uint32_4294967295, fnname: "rsh_uint32_4294967295", in: 0, want: 0},
+       test_uint32{fn: rsh_4294967295_uint32, fnname: "rsh_4294967295_uint32", in: 1, want: 2147483647},
+       test_uint32{fn: rsh_uint32_4294967295, fnname: "rsh_uint32_4294967295", in: 1, want: 0},
+       test_uint32{fn: rsh_4294967295_uint32, fnname: "rsh_4294967295_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: rsh_uint32_4294967295, fnname: "rsh_uint32_4294967295", in: 4294967295, want: 0},
+       test_uint32{fn: mod_0_uint32, fnname: "mod_0_uint32", in: 1, want: 0},
+       test_uint32{fn: mod_0_uint32, fnname: "mod_0_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: mod_uint32_1, fnname: "mod_uint32_1", in: 0, want: 0},
+       test_uint32{fn: mod_1_uint32, fnname: "mod_1_uint32", in: 1, want: 0},
+       test_uint32{fn: mod_uint32_1, fnname: "mod_uint32_1", in: 1, want: 0},
+       test_uint32{fn: mod_1_uint32, fnname: "mod_1_uint32", in: 4294967295, want: 1},
+       test_uint32{fn: mod_uint32_1, fnname: "mod_uint32_1", in: 4294967295, want: 0},
+       test_uint32{fn: mod_uint32_4294967295, fnname: "mod_uint32_4294967295", in: 0, want: 0},
+       test_uint32{fn: mod_4294967295_uint32, fnname: "mod_4294967295_uint32", in: 1, want: 0},
+       test_uint32{fn: mod_uint32_4294967295, fnname: "mod_uint32_4294967295", in: 1, want: 1},
+       test_uint32{fn: mod_4294967295_uint32, fnname: "mod_4294967295_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: mod_uint32_4294967295, fnname: "mod_uint32_4294967295", in: 4294967295, want: 0},
+       test_uint32{fn: and_0_uint32, fnname: "and_0_uint32", in: 0, want: 0},
+       test_uint32{fn: and_uint32_0, fnname: "and_uint32_0", in: 0, want: 0},
+       test_uint32{fn: and_0_uint32, fnname: "and_0_uint32", in: 1, want: 0},
+       test_uint32{fn: and_uint32_0, fnname: "and_uint32_0", in: 1, want: 0},
+       test_uint32{fn: and_0_uint32, fnname: "and_0_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: and_uint32_0, fnname: "and_uint32_0", in: 4294967295, want: 0},
+       test_uint32{fn: and_1_uint32, fnname: "and_1_uint32", in: 0, want: 0},
+       test_uint32{fn: and_uint32_1, fnname: "and_uint32_1", in: 0, want: 0},
+       test_uint32{fn: and_1_uint32, fnname: "and_1_uint32", in: 1, want: 1},
+       test_uint32{fn: and_uint32_1, fnname: "and_uint32_1", in: 1, want: 1},
+       test_uint32{fn: and_1_uint32, fnname: "and_1_uint32", in: 4294967295, want: 1},
+       test_uint32{fn: and_uint32_1, fnname: "and_uint32_1", in: 4294967295, want: 1},
+       test_uint32{fn: and_4294967295_uint32, fnname: "and_4294967295_uint32", in: 0, want: 0},
+       test_uint32{fn: and_uint32_4294967295, fnname: "and_uint32_4294967295", in: 0, want: 0},
+       test_uint32{fn: and_4294967295_uint32, fnname: "and_4294967295_uint32", in: 1, want: 1},
+       test_uint32{fn: and_uint32_4294967295, fnname: "and_uint32_4294967295", in: 1, want: 1},
+       test_uint32{fn: and_4294967295_uint32, fnname: "and_4294967295_uint32", in: 4294967295, want: 4294967295},
+       test_uint32{fn: and_uint32_4294967295, fnname: "and_uint32_4294967295", in: 4294967295, want: 4294967295},
+       test_uint32{fn: or_0_uint32, fnname: "or_0_uint32", in: 0, want: 0},
+       test_uint32{fn: or_uint32_0, fnname: "or_uint32_0", in: 0, want: 0},
+       test_uint32{fn: or_0_uint32, fnname: "or_0_uint32", in: 1, want: 1},
+       test_uint32{fn: or_uint32_0, fnname: "or_uint32_0", in: 1, want: 1},
+       test_uint32{fn: or_0_uint32, fnname: "or_0_uint32", in: 4294967295, want: 4294967295},
+       test_uint32{fn: or_uint32_0, fnname: "or_uint32_0", in: 4294967295, want: 4294967295},
+       test_uint32{fn: or_1_uint32, fnname: "or_1_uint32", in: 0, want: 1},
+       test_uint32{fn: or_uint32_1, fnname: "or_uint32_1", in: 0, want: 1},
+       test_uint32{fn: or_1_uint32, fnname: "or_1_uint32", in: 1, want: 1},
+       test_uint32{fn: or_uint32_1, fnname: "or_uint32_1", in: 1, want: 1},
+       test_uint32{fn: or_1_uint32, fnname: "or_1_uint32", in: 4294967295, want: 4294967295},
+       test_uint32{fn: or_uint32_1, fnname: "or_uint32_1", in: 4294967295, want: 4294967295},
+       test_uint32{fn: or_4294967295_uint32, fnname: "or_4294967295_uint32", in: 0, want: 4294967295},
+       test_uint32{fn: or_uint32_4294967295, fnname: "or_uint32_4294967295", in: 0, want: 4294967295},
+       test_uint32{fn: or_4294967295_uint32, fnname: "or_4294967295_uint32", in: 1, want: 4294967295},
+       test_uint32{fn: or_uint32_4294967295, fnname: "or_uint32_4294967295", in: 1, want: 4294967295},
+       test_uint32{fn: or_4294967295_uint32, fnname: "or_4294967295_uint32", in: 4294967295, want: 4294967295},
+       test_uint32{fn: or_uint32_4294967295, fnname: "or_uint32_4294967295", in: 4294967295, want: 4294967295},
+       test_uint32{fn: xor_0_uint32, fnname: "xor_0_uint32", in: 0, want: 0},
+       test_uint32{fn: xor_uint32_0, fnname: "xor_uint32_0", in: 0, want: 0},
+       test_uint32{fn: xor_0_uint32, fnname: "xor_0_uint32", in: 1, want: 1},
+       test_uint32{fn: xor_uint32_0, fnname: "xor_uint32_0", in: 1, want: 1},
+       test_uint32{fn: xor_0_uint32, fnname: "xor_0_uint32", in: 4294967295, want: 4294967295},
+       test_uint32{fn: xor_uint32_0, fnname: "xor_uint32_0", in: 4294967295, want: 4294967295},
+       test_uint32{fn: xor_1_uint32, fnname: "xor_1_uint32", in: 0, want: 1},
+       test_uint32{fn: xor_uint32_1, fnname: "xor_uint32_1", in: 0, want: 1},
+       test_uint32{fn: xor_1_uint32, fnname: "xor_1_uint32", in: 1, want: 0},
+       test_uint32{fn: xor_uint32_1, fnname: "xor_uint32_1", in: 1, want: 0},
+       test_uint32{fn: xor_1_uint32, fnname: "xor_1_uint32", in: 4294967295, want: 4294967294},
+       test_uint32{fn: xor_uint32_1, fnname: "xor_uint32_1", in: 4294967295, want: 4294967294},
+       test_uint32{fn: xor_4294967295_uint32, fnname: "xor_4294967295_uint32", in: 0, want: 4294967295},
+       test_uint32{fn: xor_uint32_4294967295, fnname: "xor_uint32_4294967295", in: 0, want: 4294967295},
+       test_uint32{fn: xor_4294967295_uint32, fnname: "xor_4294967295_uint32", in: 1, want: 4294967294},
+       test_uint32{fn: xor_uint32_4294967295, fnname: "xor_uint32_4294967295", in: 1, want: 4294967294},
+       test_uint32{fn: xor_4294967295_uint32, fnname: "xor_4294967295_uint32", in: 4294967295, want: 0},
+       test_uint32{fn: xor_uint32_4294967295, fnname: "xor_uint32_4294967295", in: 4294967295, want: 0}}
+
+type test_int32 struct {
+       fn     func(int32) int32
+       fnname string
+       in     int32
+       want   int32
+}
+
+var tests_int32 = []test_int32{
+
+       test_int32{fn: add_Neg2147483648_int32, fnname: "add_Neg2147483648_int32", in: -2147483648, want: 0},
+       test_int32{fn: add_int32_Neg2147483648, fnname: "add_int32_Neg2147483648", in: -2147483648, want: 0},
+       test_int32{fn: add_Neg2147483648_int32, fnname: "add_Neg2147483648_int32", in: -2147483647, want: 1},
+       test_int32{fn: add_int32_Neg2147483648, fnname: "add_int32_Neg2147483648", in: -2147483647, want: 1},
+       test_int32{fn: add_Neg2147483648_int32, fnname: "add_Neg2147483648_int32", in: -1, want: 2147483647},
+       test_int32{fn: add_int32_Neg2147483648, fnname: "add_int32_Neg2147483648", in: -1, want: 2147483647},
+       test_int32{fn: add_Neg2147483648_int32, fnname: "add_Neg2147483648_int32", in: 0, want: -2147483648},
+       test_int32{fn: add_int32_Neg2147483648, fnname: "add_int32_Neg2147483648", in: 0, want: -2147483648},
+       test_int32{fn: add_Neg2147483648_int32, fnname: "add_Neg2147483648_int32", in: 1, want: -2147483647},
+       test_int32{fn: add_int32_Neg2147483648, fnname: "add_int32_Neg2147483648", in: 1, want: -2147483647},
+       test_int32{fn: add_Neg2147483648_int32, fnname: "add_Neg2147483648_int32", in: 2147483647, want: -1},
+       test_int32{fn: add_int32_Neg2147483648, fnname: "add_int32_Neg2147483648", in: 2147483647, want: -1},
+       test_int32{fn: add_Neg2147483647_int32, fnname: "add_Neg2147483647_int32", in: -2147483648, want: 1},
+       test_int32{fn: add_int32_Neg2147483647, fnname: "add_int32_Neg2147483647", in: -2147483648, want: 1},
+       test_int32{fn: add_Neg2147483647_int32, fnname: "add_Neg2147483647_int32", in: -2147483647, want: 2},
+       test_int32{fn: add_int32_Neg2147483647, fnname: "add_int32_Neg2147483647", in: -2147483647, want: 2},
+       test_int32{fn: add_Neg2147483647_int32, fnname: "add_Neg2147483647_int32", in: -1, want: -2147483648},
+       test_int32{fn: add_int32_Neg2147483647, fnname: "add_int32_Neg2147483647", in: -1, want: -2147483648},
+       test_int32{fn: add_Neg2147483647_int32, fnname: "add_Neg2147483647_int32", in: 0, want: -2147483647},
+       test_int32{fn: add_int32_Neg2147483647, fnname: "add_int32_Neg2147483647", in: 0, want: -2147483647},
+       test_int32{fn: add_Neg2147483647_int32, fnname: "add_Neg2147483647_int32", in: 1, want: -2147483646},
+       test_int32{fn: add_int32_Neg2147483647, fnname: "add_int32_Neg2147483647", in: 1, want: -2147483646},
+       test_int32{fn: add_Neg2147483647_int32, fnname: "add_Neg2147483647_int32", in: 2147483647, want: 0},
+       test_int32{fn: add_int32_Neg2147483647, fnname: "add_int32_Neg2147483647", in: 2147483647, want: 0},
+       test_int32{fn: add_Neg1_int32, fnname: "add_Neg1_int32", in: -2147483648, want: 2147483647},
+       test_int32{fn: add_int32_Neg1, fnname: "add_int32_Neg1", in: -2147483648, want: 2147483647},
+       test_int32{fn: add_Neg1_int32, fnname: "add_Neg1_int32", in: -2147483647, want: -2147483648},
+       test_int32{fn: add_int32_Neg1, fnname: "add_int32_Neg1", in: -2147483647, want: -2147483648},
+       test_int32{fn: add_Neg1_int32, fnname: "add_Neg1_int32", in: -1, want: -2},
+       test_int32{fn: add_int32_Neg1, fnname: "add_int32_Neg1", in: -1, want: -2},
+       test_int32{fn: add_Neg1_int32, fnname: "add_Neg1_int32", in: 0, want: -1},
+       test_int32{fn: add_int32_Neg1, fnname: "add_int32_Neg1", in: 0, want: -1},
+       test_int32{fn: add_Neg1_int32, fnname: "add_Neg1_int32", in: 1, want: 0},
+       test_int32{fn: add_int32_Neg1, fnname: "add_int32_Neg1", in: 1, want: 0},
+       test_int32{fn: add_Neg1_int32, fnname: "add_Neg1_int32", in: 2147483647, want: 2147483646},
+       test_int32{fn: add_int32_Neg1, fnname: "add_int32_Neg1", in: 2147483647, want: 2147483646},
+       test_int32{fn: add_0_int32, fnname: "add_0_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: add_int32_0, fnname: "add_int32_0", in: -2147483648, want: -2147483648},
+       test_int32{fn: add_0_int32, fnname: "add_0_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: add_int32_0, fnname: "add_int32_0", in: -2147483647, want: -2147483647},
+       test_int32{fn: add_0_int32, fnname: "add_0_int32", in: -1, want: -1},
+       test_int32{fn: add_int32_0, fnname: "add_int32_0", in: -1, want: -1},
+       test_int32{fn: add_0_int32, fnname: "add_0_int32", in: 0, want: 0},
+       test_int32{fn: add_int32_0, fnname: "add_int32_0", in: 0, want: 0},
+       test_int32{fn: add_0_int32, fnname: "add_0_int32", in: 1, want: 1},
+       test_int32{fn: add_int32_0, fnname: "add_int32_0", in: 1, want: 1},
+       test_int32{fn: add_0_int32, fnname: "add_0_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: add_int32_0, fnname: "add_int32_0", in: 2147483647, want: 2147483647},
+       test_int32{fn: add_1_int32, fnname: "add_1_int32", in: -2147483648, want: -2147483647},
+       test_int32{fn: add_int32_1, fnname: "add_int32_1", in: -2147483648, want: -2147483647},
+       test_int32{fn: add_1_int32, fnname: "add_1_int32", in: -2147483647, want: -2147483646},
+       test_int32{fn: add_int32_1, fnname: "add_int32_1", in: -2147483647, want: -2147483646},
+       test_int32{fn: add_1_int32, fnname: "add_1_int32", in: -1, want: 0},
+       test_int32{fn: add_int32_1, fnname: "add_int32_1", in: -1, want: 0},
+       test_int32{fn: add_1_int32, fnname: "add_1_int32", in: 0, want: 1},
+       test_int32{fn: add_int32_1, fnname: "add_int32_1", in: 0, want: 1},
+       test_int32{fn: add_1_int32, fnname: "add_1_int32", in: 1, want: 2},
+       test_int32{fn: add_int32_1, fnname: "add_int32_1", in: 1, want: 2},
+       test_int32{fn: add_1_int32, fnname: "add_1_int32", in: 2147483647, want: -2147483648},
+       test_int32{fn: add_int32_1, fnname: "add_int32_1", in: 2147483647, want: -2147483648},
+       test_int32{fn: add_2147483647_int32, fnname: "add_2147483647_int32", in: -2147483648, want: -1},
+       test_int32{fn: add_int32_2147483647, fnname: "add_int32_2147483647", in: -2147483648, want: -1},
+       test_int32{fn: add_2147483647_int32, fnname: "add_2147483647_int32", in: -2147483647, want: 0},
+       test_int32{fn: add_int32_2147483647, fnname: "add_int32_2147483647", in: -2147483647, want: 0},
+       test_int32{fn: add_2147483647_int32, fnname: "add_2147483647_int32", in: -1, want: 2147483646},
+       test_int32{fn: add_int32_2147483647, fnname: "add_int32_2147483647", in: -1, want: 2147483646},
+       test_int32{fn: add_2147483647_int32, fnname: "add_2147483647_int32", in: 0, want: 2147483647},
+       test_int32{fn: add_int32_2147483647, fnname: "add_int32_2147483647", in: 0, want: 2147483647},
+       test_int32{fn: add_2147483647_int32, fnname: "add_2147483647_int32", in: 1, want: -2147483648},
+       test_int32{fn: add_int32_2147483647, fnname: "add_int32_2147483647", in: 1, want: -2147483648},
+       test_int32{fn: add_2147483647_int32, fnname: "add_2147483647_int32", in: 2147483647, want: -2},
+       test_int32{fn: add_int32_2147483647, fnname: "add_int32_2147483647", in: 2147483647, want: -2},
+       test_int32{fn: sub_Neg2147483648_int32, fnname: "sub_Neg2147483648_int32", in: -2147483648, want: 0},
+       test_int32{fn: sub_int32_Neg2147483648, fnname: "sub_int32_Neg2147483648", in: -2147483648, want: 0},
+       test_int32{fn: sub_Neg2147483648_int32, fnname: "sub_Neg2147483648_int32", in: -2147483647, want: -1},
+       test_int32{fn: sub_int32_Neg2147483648, fnname: "sub_int32_Neg2147483648", in: -2147483647, want: 1},
+       test_int32{fn: sub_Neg2147483648_int32, fnname: "sub_Neg2147483648_int32", in: -1, want: -2147483647},
+       test_int32{fn: sub_int32_Neg2147483648, fnname: "sub_int32_Neg2147483648", in: -1, want: 2147483647},
+       test_int32{fn: sub_Neg2147483648_int32, fnname: "sub_Neg2147483648_int32", in: 0, want: -2147483648},
+       test_int32{fn: sub_int32_Neg2147483648, fnname: "sub_int32_Neg2147483648", in: 0, want: -2147483648},
+       test_int32{fn: sub_Neg2147483648_int32, fnname: "sub_Neg2147483648_int32", in: 1, want: 2147483647},
+       test_int32{fn: sub_int32_Neg2147483648, fnname: "sub_int32_Neg2147483648", in: 1, want: -2147483647},
+       test_int32{fn: sub_Neg2147483648_int32, fnname: "sub_Neg2147483648_int32", in: 2147483647, want: 1},
+       test_int32{fn: sub_int32_Neg2147483648, fnname: "sub_int32_Neg2147483648", in: 2147483647, want: -1},
+       test_int32{fn: sub_Neg2147483647_int32, fnname: "sub_Neg2147483647_int32", in: -2147483648, want: 1},
+       test_int32{fn: sub_int32_Neg2147483647, fnname: "sub_int32_Neg2147483647", in: -2147483648, want: -1},
+       test_int32{fn: sub_Neg2147483647_int32, fnname: "sub_Neg2147483647_int32", in: -2147483647, want: 0},
+       test_int32{fn: sub_int32_Neg2147483647, fnname: "sub_int32_Neg2147483647", in: -2147483647, want: 0},
+       test_int32{fn: sub_Neg2147483647_int32, fnname: "sub_Neg2147483647_int32", in: -1, want: -2147483646},
+       test_int32{fn: sub_int32_Neg2147483647, fnname: "sub_int32_Neg2147483647", in: -1, want: 2147483646},
+       test_int32{fn: sub_Neg2147483647_int32, fnname: "sub_Neg2147483647_int32", in: 0, want: -2147483647},
+       test_int32{fn: sub_int32_Neg2147483647, fnname: "sub_int32_Neg2147483647", in: 0, want: 2147483647},
+       test_int32{fn: sub_Neg2147483647_int32, fnname: "sub_Neg2147483647_int32", in: 1, want: -2147483648},
+       test_int32{fn: sub_int32_Neg2147483647, fnname: "sub_int32_Neg2147483647", in: 1, want: -2147483648},
+       test_int32{fn: sub_Neg2147483647_int32, fnname: "sub_Neg2147483647_int32", in: 2147483647, want: 2},
+       test_int32{fn: sub_int32_Neg2147483647, fnname: "sub_int32_Neg2147483647", in: 2147483647, want: -2},
+       test_int32{fn: sub_Neg1_int32, fnname: "sub_Neg1_int32", in: -2147483648, want: 2147483647},
+       test_int32{fn: sub_int32_Neg1, fnname: "sub_int32_Neg1", in: -2147483648, want: -2147483647},
+       test_int32{fn: sub_Neg1_int32, fnname: "sub_Neg1_int32", in: -2147483647, want: 2147483646},
+       test_int32{fn: sub_int32_Neg1, fnname: "sub_int32_Neg1", in: -2147483647, want: -2147483646},
+       test_int32{fn: sub_Neg1_int32, fnname: "sub_Neg1_int32", in: -1, want: 0},
+       test_int32{fn: sub_int32_Neg1, fnname: "sub_int32_Neg1", in: -1, want: 0},
+       test_int32{fn: sub_Neg1_int32, fnname: "sub_Neg1_int32", in: 0, want: -1},
+       test_int32{fn: sub_int32_Neg1, fnname: "sub_int32_Neg1", in: 0, want: 1},
+       test_int32{fn: sub_Neg1_int32, fnname: "sub_Neg1_int32", in: 1, want: -2},
+       test_int32{fn: sub_int32_Neg1, fnname: "sub_int32_Neg1", in: 1, want: 2},
+       test_int32{fn: sub_Neg1_int32, fnname: "sub_Neg1_int32", in: 2147483647, want: -2147483648},
+       test_int32{fn: sub_int32_Neg1, fnname: "sub_int32_Neg1", in: 2147483647, want: -2147483648},
+       test_int32{fn: sub_0_int32, fnname: "sub_0_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: sub_int32_0, fnname: "sub_int32_0", in: -2147483648, want: -2147483648},
+       test_int32{fn: sub_0_int32, fnname: "sub_0_int32", in: -2147483647, want: 2147483647},
+       test_int32{fn: sub_int32_0, fnname: "sub_int32_0", in: -2147483647, want: -2147483647},
+       test_int32{fn: sub_0_int32, fnname: "sub_0_int32", in: -1, want: 1},
+       test_int32{fn: sub_int32_0, fnname: "sub_int32_0", in: -1, want: -1},
+       test_int32{fn: sub_0_int32, fnname: "sub_0_int32", in: 0, want: 0},
+       test_int32{fn: sub_int32_0, fnname: "sub_int32_0", in: 0, want: 0},
+       test_int32{fn: sub_0_int32, fnname: "sub_0_int32", in: 1, want: -1},
+       test_int32{fn: sub_int32_0, fnname: "sub_int32_0", in: 1, want: 1},
+       test_int32{fn: sub_0_int32, fnname: "sub_0_int32", in: 2147483647, want: -2147483647},
+       test_int32{fn: sub_int32_0, fnname: "sub_int32_0", in: 2147483647, want: 2147483647},
+       test_int32{fn: sub_1_int32, fnname: "sub_1_int32", in: -2147483648, want: -2147483647},
+       test_int32{fn: sub_int32_1, fnname: "sub_int32_1", in: -2147483648, want: 2147483647},
+       test_int32{fn: sub_1_int32, fnname: "sub_1_int32", in: -2147483647, want: -2147483648},
+       test_int32{fn: sub_int32_1, fnname: "sub_int32_1", in: -2147483647, want: -2147483648},
+       test_int32{fn: sub_1_int32, fnname: "sub_1_int32", in: -1, want: 2},
+       test_int32{fn: sub_int32_1, fnname: "sub_int32_1", in: -1, want: -2},
+       test_int32{fn: sub_1_int32, fnname: "sub_1_int32", in: 0, want: 1},
+       test_int32{fn: sub_int32_1, fnname: "sub_int32_1", in: 0, want: -1},
+       test_int32{fn: sub_1_int32, fnname: "sub_1_int32", in: 1, want: 0},
+       test_int32{fn: sub_int32_1, fnname: "sub_int32_1", in: 1, want: 0},
+       test_int32{fn: sub_1_int32, fnname: "sub_1_int32", in: 2147483647, want: -2147483646},
+       test_int32{fn: sub_int32_1, fnname: "sub_int32_1", in: 2147483647, want: 2147483646},
+       test_int32{fn: sub_2147483647_int32, fnname: "sub_2147483647_int32", in: -2147483648, want: -1},
+       test_int32{fn: sub_int32_2147483647, fnname: "sub_int32_2147483647", in: -2147483648, want: 1},
+       test_int32{fn: sub_2147483647_int32, fnname: "sub_2147483647_int32", in: -2147483647, want: -2},
+       test_int32{fn: sub_int32_2147483647, fnname: "sub_int32_2147483647", in: -2147483647, want: 2},
+       test_int32{fn: sub_2147483647_int32, fnname: "sub_2147483647_int32", in: -1, want: -2147483648},
+       test_int32{fn: sub_int32_2147483647, fnname: "sub_int32_2147483647", in: -1, want: -2147483648},
+       test_int32{fn: sub_2147483647_int32, fnname: "sub_2147483647_int32", in: 0, want: 2147483647},
+       test_int32{fn: sub_int32_2147483647, fnname: "sub_int32_2147483647", in: 0, want: -2147483647},
+       test_int32{fn: sub_2147483647_int32, fnname: "sub_2147483647_int32", in: 1, want: 2147483646},
+       test_int32{fn: sub_int32_2147483647, fnname: "sub_int32_2147483647", in: 1, want: -2147483646},
+       test_int32{fn: sub_2147483647_int32, fnname: "sub_2147483647_int32", in: 2147483647, want: 0},
+       test_int32{fn: sub_int32_2147483647, fnname: "sub_int32_2147483647", in: 2147483647, want: 0},
+       test_int32{fn: div_Neg2147483648_int32, fnname: "div_Neg2147483648_int32", in: -2147483648, want: 1},
+       test_int32{fn: div_int32_Neg2147483648, fnname: "div_int32_Neg2147483648", in: -2147483648, want: 1},
+       test_int32{fn: div_Neg2147483648_int32, fnname: "div_Neg2147483648_int32", in: -2147483647, want: 1},
+       test_int32{fn: div_int32_Neg2147483648, fnname: "div_int32_Neg2147483648", in: -2147483647, want: 0},
+       test_int32{fn: div_Neg2147483648_int32, fnname: "div_Neg2147483648_int32", in: -1, want: -2147483648},
+       test_int32{fn: div_int32_Neg2147483648, fnname: "div_int32_Neg2147483648", in: -1, want: 0},
+       test_int32{fn: div_int32_Neg2147483648, fnname: "div_int32_Neg2147483648", in: 0, want: 0},
+       test_int32{fn: div_Neg2147483648_int32, fnname: "div_Neg2147483648_int32", in: 1, want: -2147483648},
+       test_int32{fn: div_int32_Neg2147483648, fnname: "div_int32_Neg2147483648", in: 1, want: 0},
+       test_int32{fn: div_Neg2147483648_int32, fnname: "div_Neg2147483648_int32", in: 2147483647, want: -1},
+       test_int32{fn: div_int32_Neg2147483648, fnname: "div_int32_Neg2147483648", in: 2147483647, want: 0},
+       test_int32{fn: div_Neg2147483647_int32, fnname: "div_Neg2147483647_int32", in: -2147483648, want: 0},
+       test_int32{fn: div_int32_Neg2147483647, fnname: "div_int32_Neg2147483647", in: -2147483648, want: 1},
+       test_int32{fn: div_Neg2147483647_int32, fnname: "div_Neg2147483647_int32", in: -2147483647, want: 1},
+       test_int32{fn: div_int32_Neg2147483647, fnname: "div_int32_Neg2147483647", in: -2147483647, want: 1},
+       test_int32{fn: div_Neg2147483647_int32, fnname: "div_Neg2147483647_int32", in: -1, want: 2147483647},
+       test_int32{fn: div_int32_Neg2147483647, fnname: "div_int32_Neg2147483647", in: -1, want: 0},
+       test_int32{fn: div_int32_Neg2147483647, fnname: "div_int32_Neg2147483647", in: 0, want: 0},
+       test_int32{fn: div_Neg2147483647_int32, fnname: "div_Neg2147483647_int32", in: 1, want: -2147483647},
+       test_int32{fn: div_int32_Neg2147483647, fnname: "div_int32_Neg2147483647", in: 1, want: 0},
+       test_int32{fn: div_Neg2147483647_int32, fnname: "div_Neg2147483647_int32", in: 2147483647, want: -1},
+       test_int32{fn: div_int32_Neg2147483647, fnname: "div_int32_Neg2147483647", in: 2147483647, want: -1},
+       test_int32{fn: div_Neg1_int32, fnname: "div_Neg1_int32", in: -2147483648, want: 0},
+       test_int32{fn: div_int32_Neg1, fnname: "div_int32_Neg1", in: -2147483648, want: -2147483648},
+       test_int32{fn: div_Neg1_int32, fnname: "div_Neg1_int32", in: -2147483647, want: 0},
+       test_int32{fn: div_int32_Neg1, fnname: "div_int32_Neg1", in: -2147483647, want: 2147483647},
+       test_int32{fn: div_Neg1_int32, fnname: "div_Neg1_int32", in: -1, want: 1},
+       test_int32{fn: div_int32_Neg1, fnname: "div_int32_Neg1", in: -1, want: 1},
+       test_int32{fn: div_int32_Neg1, fnname: "div_int32_Neg1", in: 0, want: 0},
+       test_int32{fn: div_Neg1_int32, fnname: "div_Neg1_int32", in: 1, want: -1},
+       test_int32{fn: div_int32_Neg1, fnname: "div_int32_Neg1", in: 1, want: -1},
+       test_int32{fn: div_Neg1_int32, fnname: "div_Neg1_int32", in: 2147483647, want: 0},
+       test_int32{fn: div_int32_Neg1, fnname: "div_int32_Neg1", in: 2147483647, want: -2147483647},
+       test_int32{fn: div_0_int32, fnname: "div_0_int32", in: -2147483648, want: 0},
+       test_int32{fn: div_0_int32, fnname: "div_0_int32", in: -2147483647, want: 0},
+       test_int32{fn: div_0_int32, fnname: "div_0_int32", in: -1, want: 0},
+       test_int32{fn: div_0_int32, fnname: "div_0_int32", in: 1, want: 0},
+       test_int32{fn: div_0_int32, fnname: "div_0_int32", in: 2147483647, want: 0},
+       test_int32{fn: div_1_int32, fnname: "div_1_int32", in: -2147483648, want: 0},
+       test_int32{fn: div_int32_1, fnname: "div_int32_1", in: -2147483648, want: -2147483648},
+       test_int32{fn: div_1_int32, fnname: "div_1_int32", in: -2147483647, want: 0},
+       test_int32{fn: div_int32_1, fnname: "div_int32_1", in: -2147483647, want: -2147483647},
+       test_int32{fn: div_1_int32, fnname: "div_1_int32", in: -1, want: -1},
+       test_int32{fn: div_int32_1, fnname: "div_int32_1", in: -1, want: -1},
+       test_int32{fn: div_int32_1, fnname: "div_int32_1", in: 0, want: 0},
+       test_int32{fn: div_1_int32, fnname: "div_1_int32", in: 1, want: 1},
+       test_int32{fn: div_int32_1, fnname: "div_int32_1", in: 1, want: 1},
+       test_int32{fn: div_1_int32, fnname: "div_1_int32", in: 2147483647, want: 0},
+       test_int32{fn: div_int32_1, fnname: "div_int32_1", in: 2147483647, want: 2147483647},
+       test_int32{fn: div_2147483647_int32, fnname: "div_2147483647_int32", in: -2147483648, want: 0},
+       test_int32{fn: div_int32_2147483647, fnname: "div_int32_2147483647", in: -2147483648, want: -1},
+       test_int32{fn: div_2147483647_int32, fnname: "div_2147483647_int32", in: -2147483647, want: -1},
+       test_int32{fn: div_int32_2147483647, fnname: "div_int32_2147483647", in: -2147483647, want: -1},
+       test_int32{fn: div_2147483647_int32, fnname: "div_2147483647_int32", in: -1, want: -2147483647},
+       test_int32{fn: div_int32_2147483647, fnname: "div_int32_2147483647", in: -1, want: 0},
+       test_int32{fn: div_int32_2147483647, fnname: "div_int32_2147483647", in: 0, want: 0},
+       test_int32{fn: div_2147483647_int32, fnname: "div_2147483647_int32", in: 1, want: 2147483647},
+       test_int32{fn: div_int32_2147483647, fnname: "div_int32_2147483647", in: 1, want: 0},
+       test_int32{fn: div_2147483647_int32, fnname: "div_2147483647_int32", in: 2147483647, want: 1},
+       test_int32{fn: div_int32_2147483647, fnname: "div_int32_2147483647", in: 2147483647, want: 1},
+       test_int32{fn: mul_Neg2147483648_int32, fnname: "mul_Neg2147483648_int32", in: -2147483648, want: 0},
+       test_int32{fn: mul_int32_Neg2147483648, fnname: "mul_int32_Neg2147483648", in: -2147483648, want: 0},
+       test_int32{fn: mul_Neg2147483648_int32, fnname: "mul_Neg2147483648_int32", in: -2147483647, want: -2147483648},
+       test_int32{fn: mul_int32_Neg2147483648, fnname: "mul_int32_Neg2147483648", in: -2147483647, want: -2147483648},
+       test_int32{fn: mul_Neg2147483648_int32, fnname: "mul_Neg2147483648_int32", in: -1, want: -2147483648},
+       test_int32{fn: mul_int32_Neg2147483648, fnname: "mul_int32_Neg2147483648", in: -1, want: -2147483648},
+       test_int32{fn: mul_Neg2147483648_int32, fnname: "mul_Neg2147483648_int32", in: 0, want: 0},
+       test_int32{fn: mul_int32_Neg2147483648, fnname: "mul_int32_Neg2147483648", in: 0, want: 0},
+       test_int32{fn: mul_Neg2147483648_int32, fnname: "mul_Neg2147483648_int32", in: 1, want: -2147483648},
+       test_int32{fn: mul_int32_Neg2147483648, fnname: "mul_int32_Neg2147483648", in: 1, want: -2147483648},
+       test_int32{fn: mul_Neg2147483648_int32, fnname: "mul_Neg2147483648_int32", in: 2147483647, want: -2147483648},
+       test_int32{fn: mul_int32_Neg2147483648, fnname: "mul_int32_Neg2147483648", in: 2147483647, want: -2147483648},
+       test_int32{fn: mul_Neg2147483647_int32, fnname: "mul_Neg2147483647_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_int32_Neg2147483647, fnname: "mul_int32_Neg2147483647", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_Neg2147483647_int32, fnname: "mul_Neg2147483647_int32", in: -2147483647, want: 1},
+       test_int32{fn: mul_int32_Neg2147483647, fnname: "mul_int32_Neg2147483647", in: -2147483647, want: 1},
+       test_int32{fn: mul_Neg2147483647_int32, fnname: "mul_Neg2147483647_int32", in: -1, want: 2147483647},
+       test_int32{fn: mul_int32_Neg2147483647, fnname: "mul_int32_Neg2147483647", in: -1, want: 2147483647},
+       test_int32{fn: mul_Neg2147483647_int32, fnname: "mul_Neg2147483647_int32", in: 0, want: 0},
+       test_int32{fn: mul_int32_Neg2147483647, fnname: "mul_int32_Neg2147483647", in: 0, want: 0},
+       test_int32{fn: mul_Neg2147483647_int32, fnname: "mul_Neg2147483647_int32", in: 1, want: -2147483647},
+       test_int32{fn: mul_int32_Neg2147483647, fnname: "mul_int32_Neg2147483647", in: 1, want: -2147483647},
+       test_int32{fn: mul_Neg2147483647_int32, fnname: "mul_Neg2147483647_int32", in: 2147483647, want: -1},
+       test_int32{fn: mul_int32_Neg2147483647, fnname: "mul_int32_Neg2147483647", in: 2147483647, want: -1},
+       test_int32{fn: mul_Neg1_int32, fnname: "mul_Neg1_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_int32_Neg1, fnname: "mul_int32_Neg1", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_Neg1_int32, fnname: "mul_Neg1_int32", in: -2147483647, want: 2147483647},
+       test_int32{fn: mul_int32_Neg1, fnname: "mul_int32_Neg1", in: -2147483647, want: 2147483647},
+       test_int32{fn: mul_Neg1_int32, fnname: "mul_Neg1_int32", in: -1, want: 1},
+       test_int32{fn: mul_int32_Neg1, fnname: "mul_int32_Neg1", in: -1, want: 1},
+       test_int32{fn: mul_Neg1_int32, fnname: "mul_Neg1_int32", in: 0, want: 0},
+       test_int32{fn: mul_int32_Neg1, fnname: "mul_int32_Neg1", in: 0, want: 0},
+       test_int32{fn: mul_Neg1_int32, fnname: "mul_Neg1_int32", in: 1, want: -1},
+       test_int32{fn: mul_int32_Neg1, fnname: "mul_int32_Neg1", in: 1, want: -1},
+       test_int32{fn: mul_Neg1_int32, fnname: "mul_Neg1_int32", in: 2147483647, want: -2147483647},
+       test_int32{fn: mul_int32_Neg1, fnname: "mul_int32_Neg1", in: 2147483647, want: -2147483647},
+       test_int32{fn: mul_0_int32, fnname: "mul_0_int32", in: -2147483648, want: 0},
+       test_int32{fn: mul_int32_0, fnname: "mul_int32_0", in: -2147483648, want: 0},
+       test_int32{fn: mul_0_int32, fnname: "mul_0_int32", in: -2147483647, want: 0},
+       test_int32{fn: mul_int32_0, fnname: "mul_int32_0", in: -2147483647, want: 0},
+       test_int32{fn: mul_0_int32, fnname: "mul_0_int32", in: -1, want: 0},
+       test_int32{fn: mul_int32_0, fnname: "mul_int32_0", in: -1, want: 0},
+       test_int32{fn: mul_0_int32, fnname: "mul_0_int32", in: 0, want: 0},
+       test_int32{fn: mul_int32_0, fnname: "mul_int32_0", in: 0, want: 0},
+       test_int32{fn: mul_0_int32, fnname: "mul_0_int32", in: 1, want: 0},
+       test_int32{fn: mul_int32_0, fnname: "mul_int32_0", in: 1, want: 0},
+       test_int32{fn: mul_0_int32, fnname: "mul_0_int32", in: 2147483647, want: 0},
+       test_int32{fn: mul_int32_0, fnname: "mul_int32_0", in: 2147483647, want: 0},
+       test_int32{fn: mul_1_int32, fnname: "mul_1_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_int32_1, fnname: "mul_int32_1", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_1_int32, fnname: "mul_1_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: mul_int32_1, fnname: "mul_int32_1", in: -2147483647, want: -2147483647},
+       test_int32{fn: mul_1_int32, fnname: "mul_1_int32", in: -1, want: -1},
+       test_int32{fn: mul_int32_1, fnname: "mul_int32_1", in: -1, want: -1},
+       test_int32{fn: mul_1_int32, fnname: "mul_1_int32", in: 0, want: 0},
+       test_int32{fn: mul_int32_1, fnname: "mul_int32_1", in: 0, want: 0},
+       test_int32{fn: mul_1_int32, fnname: "mul_1_int32", in: 1, want: 1},
+       test_int32{fn: mul_int32_1, fnname: "mul_int32_1", in: 1, want: 1},
+       test_int32{fn: mul_1_int32, fnname: "mul_1_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: mul_int32_1, fnname: "mul_int32_1", in: 2147483647, want: 2147483647},
+       test_int32{fn: mul_2147483647_int32, fnname: "mul_2147483647_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_int32_2147483647, fnname: "mul_int32_2147483647", in: -2147483648, want: -2147483648},
+       test_int32{fn: mul_2147483647_int32, fnname: "mul_2147483647_int32", in: -2147483647, want: -1},
+       test_int32{fn: mul_int32_2147483647, fnname: "mul_int32_2147483647", in: -2147483647, want: -1},
+       test_int32{fn: mul_2147483647_int32, fnname: "mul_2147483647_int32", in: -1, want: -2147483647},
+       test_int32{fn: mul_int32_2147483647, fnname: "mul_int32_2147483647", in: -1, want: -2147483647},
+       test_int32{fn: mul_2147483647_int32, fnname: "mul_2147483647_int32", in: 0, want: 0},
+       test_int32{fn: mul_int32_2147483647, fnname: "mul_int32_2147483647", in: 0, want: 0},
+       test_int32{fn: mul_2147483647_int32, fnname: "mul_2147483647_int32", in: 1, want: 2147483647},
+       test_int32{fn: mul_int32_2147483647, fnname: "mul_int32_2147483647", in: 1, want: 2147483647},
+       test_int32{fn: mul_2147483647_int32, fnname: "mul_2147483647_int32", in: 2147483647, want: 1},
+       test_int32{fn: mul_int32_2147483647, fnname: "mul_int32_2147483647", in: 2147483647, want: 1},
+       test_int32{fn: mod_Neg2147483648_int32, fnname: "mod_Neg2147483648_int32", in: -2147483648, want: 0},
+       test_int32{fn: mod_int32_Neg2147483648, fnname: "mod_int32_Neg2147483648", in: -2147483648, want: 0},
+       test_int32{fn: mod_Neg2147483648_int32, fnname: "mod_Neg2147483648_int32", in: -2147483647, want: -1},
+       test_int32{fn: mod_int32_Neg2147483648, fnname: "mod_int32_Neg2147483648", in: -2147483647, want: -2147483647},
+       test_int32{fn: mod_Neg2147483648_int32, fnname: "mod_Neg2147483648_int32", in: -1, want: 0},
+       test_int32{fn: mod_int32_Neg2147483648, fnname: "mod_int32_Neg2147483648", in: -1, want: -1},
+       test_int32{fn: mod_int32_Neg2147483648, fnname: "mod_int32_Neg2147483648", in: 0, want: 0},
+       test_int32{fn: mod_Neg2147483648_int32, fnname: "mod_Neg2147483648_int32", in: 1, want: 0},
+       test_int32{fn: mod_int32_Neg2147483648, fnname: "mod_int32_Neg2147483648", in: 1, want: 1},
+       test_int32{fn: mod_Neg2147483648_int32, fnname: "mod_Neg2147483648_int32", in: 2147483647, want: -1},
+       test_int32{fn: mod_int32_Neg2147483648, fnname: "mod_int32_Neg2147483648", in: 2147483647, want: 2147483647},
+       test_int32{fn: mod_Neg2147483647_int32, fnname: "mod_Neg2147483647_int32", in: -2147483648, want: -2147483647},
+       test_int32{fn: mod_int32_Neg2147483647, fnname: "mod_int32_Neg2147483647", in: -2147483648, want: -1},
+       test_int32{fn: mod_Neg2147483647_int32, fnname: "mod_Neg2147483647_int32", in: -2147483647, want: 0},
+       test_int32{fn: mod_int32_Neg2147483647, fnname: "mod_int32_Neg2147483647", in: -2147483647, want: 0},
+       test_int32{fn: mod_Neg2147483647_int32, fnname: "mod_Neg2147483647_int32", in: -1, want: 0},
+       test_int32{fn: mod_int32_Neg2147483647, fnname: "mod_int32_Neg2147483647", in: -1, want: -1},
+       test_int32{fn: mod_int32_Neg2147483647, fnname: "mod_int32_Neg2147483647", in: 0, want: 0},
+       test_int32{fn: mod_Neg2147483647_int32, fnname: "mod_Neg2147483647_int32", in: 1, want: 0},
+       test_int32{fn: mod_int32_Neg2147483647, fnname: "mod_int32_Neg2147483647", in: 1, want: 1},
+       test_int32{fn: mod_Neg2147483647_int32, fnname: "mod_Neg2147483647_int32", in: 2147483647, want: 0},
+       test_int32{fn: mod_int32_Neg2147483647, fnname: "mod_int32_Neg2147483647", in: 2147483647, want: 0},
+       test_int32{fn: mod_Neg1_int32, fnname: "mod_Neg1_int32", in: -2147483648, want: -1},
+       test_int32{fn: mod_int32_Neg1, fnname: "mod_int32_Neg1", in: -2147483648, want: 0},
+       test_int32{fn: mod_Neg1_int32, fnname: "mod_Neg1_int32", in: -2147483647, want: -1},
+       test_int32{fn: mod_int32_Neg1, fnname: "mod_int32_Neg1", in: -2147483647, want: 0},
+       test_int32{fn: mod_Neg1_int32, fnname: "mod_Neg1_int32", in: -1, want: 0},
+       test_int32{fn: mod_int32_Neg1, fnname: "mod_int32_Neg1", in: -1, want: 0},
+       test_int32{fn: mod_int32_Neg1, fnname: "mod_int32_Neg1", in: 0, want: 0},
+       test_int32{fn: mod_Neg1_int32, fnname: "mod_Neg1_int32", in: 1, want: 0},
+       test_int32{fn: mod_int32_Neg1, fnname: "mod_int32_Neg1", in: 1, want: 0},
+       test_int32{fn: mod_Neg1_int32, fnname: "mod_Neg1_int32", in: 2147483647, want: -1},
+       test_int32{fn: mod_int32_Neg1, fnname: "mod_int32_Neg1", in: 2147483647, want: 0},
+       test_int32{fn: mod_0_int32, fnname: "mod_0_int32", in: -2147483648, want: 0},
+       test_int32{fn: mod_0_int32, fnname: "mod_0_int32", in: -2147483647, want: 0},
+       test_int32{fn: mod_0_int32, fnname: "mod_0_int32", in: -1, want: 0},
+       test_int32{fn: mod_0_int32, fnname: "mod_0_int32", in: 1, want: 0},
+       test_int32{fn: mod_0_int32, fnname: "mod_0_int32", in: 2147483647, want: 0},
+       test_int32{fn: mod_1_int32, fnname: "mod_1_int32", in: -2147483648, want: 1},
+       test_int32{fn: mod_int32_1, fnname: "mod_int32_1", in: -2147483648, want: 0},
+       test_int32{fn: mod_1_int32, fnname: "mod_1_int32", in: -2147483647, want: 1},
+       test_int32{fn: mod_int32_1, fnname: "mod_int32_1", in: -2147483647, want: 0},
+       test_int32{fn: mod_1_int32, fnname: "mod_1_int32", in: -1, want: 0},
+       test_int32{fn: mod_int32_1, fnname: "mod_int32_1", in: -1, want: 0},
+       test_int32{fn: mod_int32_1, fnname: "mod_int32_1", in: 0, want: 0},
+       test_int32{fn: mod_1_int32, fnname: "mod_1_int32", in: 1, want: 0},
+       test_int32{fn: mod_int32_1, fnname: "mod_int32_1", in: 1, want: 0},
+       test_int32{fn: mod_1_int32, fnname: "mod_1_int32", in: 2147483647, want: 1},
+       test_int32{fn: mod_int32_1, fnname: "mod_int32_1", in: 2147483647, want: 0},
+       test_int32{fn: mod_2147483647_int32, fnname: "mod_2147483647_int32", in: -2147483648, want: 2147483647},
+       test_int32{fn: mod_int32_2147483647, fnname: "mod_int32_2147483647", in: -2147483648, want: -1},
+       test_int32{fn: mod_2147483647_int32, fnname: "mod_2147483647_int32", in: -2147483647, want: 0},
+       test_int32{fn: mod_int32_2147483647, fnname: "mod_int32_2147483647", in: -2147483647, want: 0},
+       test_int32{fn: mod_2147483647_int32, fnname: "mod_2147483647_int32", in: -1, want: 0},
+       test_int32{fn: mod_int32_2147483647, fnname: "mod_int32_2147483647", in: -1, want: -1},
+       test_int32{fn: mod_int32_2147483647, fnname: "mod_int32_2147483647", in: 0, want: 0},
+       test_int32{fn: mod_2147483647_int32, fnname: "mod_2147483647_int32", in: 1, want: 0},
+       test_int32{fn: mod_int32_2147483647, fnname: "mod_int32_2147483647", in: 1, want: 1},
+       test_int32{fn: mod_2147483647_int32, fnname: "mod_2147483647_int32", in: 2147483647, want: 0},
+       test_int32{fn: mod_int32_2147483647, fnname: "mod_int32_2147483647", in: 2147483647, want: 0},
+       test_int32{fn: and_Neg2147483648_int32, fnname: "and_Neg2147483648_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: and_int32_Neg2147483648, fnname: "and_int32_Neg2147483648", in: -2147483648, want: -2147483648},
+       test_int32{fn: and_Neg2147483648_int32, fnname: "and_Neg2147483648_int32", in: -2147483647, want: -2147483648},
+       test_int32{fn: and_int32_Neg2147483648, fnname: "and_int32_Neg2147483648", in: -2147483647, want: -2147483648},
+       test_int32{fn: and_Neg2147483648_int32, fnname: "and_Neg2147483648_int32", in: -1, want: -2147483648},
+       test_int32{fn: and_int32_Neg2147483648, fnname: "and_int32_Neg2147483648", in: -1, want: -2147483648},
+       test_int32{fn: and_Neg2147483648_int32, fnname: "and_Neg2147483648_int32", in: 0, want: 0},
+       test_int32{fn: and_int32_Neg2147483648, fnname: "and_int32_Neg2147483648", in: 0, want: 0},
+       test_int32{fn: and_Neg2147483648_int32, fnname: "and_Neg2147483648_int32", in: 1, want: 0},
+       test_int32{fn: and_int32_Neg2147483648, fnname: "and_int32_Neg2147483648", in: 1, want: 0},
+       test_int32{fn: and_Neg2147483648_int32, fnname: "and_Neg2147483648_int32", in: 2147483647, want: 0},
+       test_int32{fn: and_int32_Neg2147483648, fnname: "and_int32_Neg2147483648", in: 2147483647, want: 0},
+       test_int32{fn: and_Neg2147483647_int32, fnname: "and_Neg2147483647_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: and_int32_Neg2147483647, fnname: "and_int32_Neg2147483647", in: -2147483648, want: -2147483648},
+       test_int32{fn: and_Neg2147483647_int32, fnname: "and_Neg2147483647_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: and_int32_Neg2147483647, fnname: "and_int32_Neg2147483647", in: -2147483647, want: -2147483647},
+       test_int32{fn: and_Neg2147483647_int32, fnname: "and_Neg2147483647_int32", in: -1, want: -2147483647},
+       test_int32{fn: and_int32_Neg2147483647, fnname: "and_int32_Neg2147483647", in: -1, want: -2147483647},
+       test_int32{fn: and_Neg2147483647_int32, fnname: "and_Neg2147483647_int32", in: 0, want: 0},
+       test_int32{fn: and_int32_Neg2147483647, fnname: "and_int32_Neg2147483647", in: 0, want: 0},
+       test_int32{fn: and_Neg2147483647_int32, fnname: "and_Neg2147483647_int32", in: 1, want: 1},
+       test_int32{fn: and_int32_Neg2147483647, fnname: "and_int32_Neg2147483647", in: 1, want: 1},
+       test_int32{fn: and_Neg2147483647_int32, fnname: "and_Neg2147483647_int32", in: 2147483647, want: 1},
+       test_int32{fn: and_int32_Neg2147483647, fnname: "and_int32_Neg2147483647", in: 2147483647, want: 1},
+       test_int32{fn: and_Neg1_int32, fnname: "and_Neg1_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: and_int32_Neg1, fnname: "and_int32_Neg1", in: -2147483648, want: -2147483648},
+       test_int32{fn: and_Neg1_int32, fnname: "and_Neg1_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: and_int32_Neg1, fnname: "and_int32_Neg1", in: -2147483647, want: -2147483647},
+       test_int32{fn: and_Neg1_int32, fnname: "and_Neg1_int32", in: -1, want: -1},
+       test_int32{fn: and_int32_Neg1, fnname: "and_int32_Neg1", in: -1, want: -1},
+       test_int32{fn: and_Neg1_int32, fnname: "and_Neg1_int32", in: 0, want: 0},
+       test_int32{fn: and_int32_Neg1, fnname: "and_int32_Neg1", in: 0, want: 0},
+       test_int32{fn: and_Neg1_int32, fnname: "and_Neg1_int32", in: 1, want: 1},
+       test_int32{fn: and_int32_Neg1, fnname: "and_int32_Neg1", in: 1, want: 1},
+       test_int32{fn: and_Neg1_int32, fnname: "and_Neg1_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: and_int32_Neg1, fnname: "and_int32_Neg1", in: 2147483647, want: 2147483647},
+       test_int32{fn: and_0_int32, fnname: "and_0_int32", in: -2147483648, want: 0},
+       test_int32{fn: and_int32_0, fnname: "and_int32_0", in: -2147483648, want: 0},
+       test_int32{fn: and_0_int32, fnname: "and_0_int32", in: -2147483647, want: 0},
+       test_int32{fn: and_int32_0, fnname: "and_int32_0", in: -2147483647, want: 0},
+       test_int32{fn: and_0_int32, fnname: "and_0_int32", in: -1, want: 0},
+       test_int32{fn: and_int32_0, fnname: "and_int32_0", in: -1, want: 0},
+       test_int32{fn: and_0_int32, fnname: "and_0_int32", in: 0, want: 0},
+       test_int32{fn: and_int32_0, fnname: "and_int32_0", in: 0, want: 0},
+       test_int32{fn: and_0_int32, fnname: "and_0_int32", in: 1, want: 0},
+       test_int32{fn: and_int32_0, fnname: "and_int32_0", in: 1, want: 0},
+       test_int32{fn: and_0_int32, fnname: "and_0_int32", in: 2147483647, want: 0},
+       test_int32{fn: and_int32_0, fnname: "and_int32_0", in: 2147483647, want: 0},
+       test_int32{fn: and_1_int32, fnname: "and_1_int32", in: -2147483648, want: 0},
+       test_int32{fn: and_int32_1, fnname: "and_int32_1", in: -2147483648, want: 0},
+       test_int32{fn: and_1_int32, fnname: "and_1_int32", in: -2147483647, want: 1},
+       test_int32{fn: and_int32_1, fnname: "and_int32_1", in: -2147483647, want: 1},
+       test_int32{fn: and_1_int32, fnname: "and_1_int32", in: -1, want: 1},
+       test_int32{fn: and_int32_1, fnname: "and_int32_1", in: -1, want: 1},
+       test_int32{fn: and_1_int32, fnname: "and_1_int32", in: 0, want: 0},
+       test_int32{fn: and_int32_1, fnname: "and_int32_1", in: 0, want: 0},
+       test_int32{fn: and_1_int32, fnname: "and_1_int32", in: 1, want: 1},
+       test_int32{fn: and_int32_1, fnname: "and_int32_1", in: 1, want: 1},
+       test_int32{fn: and_1_int32, fnname: "and_1_int32", in: 2147483647, want: 1},
+       test_int32{fn: and_int32_1, fnname: "and_int32_1", in: 2147483647, want: 1},
+       test_int32{fn: and_2147483647_int32, fnname: "and_2147483647_int32", in: -2147483648, want: 0},
+       test_int32{fn: and_int32_2147483647, fnname: "and_int32_2147483647", in: -2147483648, want: 0},
+       test_int32{fn: and_2147483647_int32, fnname: "and_2147483647_int32", in: -2147483647, want: 1},
+       test_int32{fn: and_int32_2147483647, fnname: "and_int32_2147483647", in: -2147483647, want: 1},
+       test_int32{fn: and_2147483647_int32, fnname: "and_2147483647_int32", in: -1, want: 2147483647},
+       test_int32{fn: and_int32_2147483647, fnname: "and_int32_2147483647", in: -1, want: 2147483647},
+       test_int32{fn: and_2147483647_int32, fnname: "and_2147483647_int32", in: 0, want: 0},
+       test_int32{fn: and_int32_2147483647, fnname: "and_int32_2147483647", in: 0, want: 0},
+       test_int32{fn: and_2147483647_int32, fnname: "and_2147483647_int32", in: 1, want: 1},
+       test_int32{fn: and_int32_2147483647, fnname: "and_int32_2147483647", in: 1, want: 1},
+       test_int32{fn: and_2147483647_int32, fnname: "and_2147483647_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: and_int32_2147483647, fnname: "and_int32_2147483647", in: 2147483647, want: 2147483647},
+       test_int32{fn: or_Neg2147483648_int32, fnname: "or_Neg2147483648_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: or_int32_Neg2147483648, fnname: "or_int32_Neg2147483648", in: -2147483648, want: -2147483648},
+       test_int32{fn: or_Neg2147483648_int32, fnname: "or_Neg2147483648_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_int32_Neg2147483648, fnname: "or_int32_Neg2147483648", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_Neg2147483648_int32, fnname: "or_Neg2147483648_int32", in: -1, want: -1},
+       test_int32{fn: or_int32_Neg2147483648, fnname: "or_int32_Neg2147483648", in: -1, want: -1},
+       test_int32{fn: or_Neg2147483648_int32, fnname: "or_Neg2147483648_int32", in: 0, want: -2147483648},
+       test_int32{fn: or_int32_Neg2147483648, fnname: "or_int32_Neg2147483648", in: 0, want: -2147483648},
+       test_int32{fn: or_Neg2147483648_int32, fnname: "or_Neg2147483648_int32", in: 1, want: -2147483647},
+       test_int32{fn: or_int32_Neg2147483648, fnname: "or_int32_Neg2147483648", in: 1, want: -2147483647},
+       test_int32{fn: or_Neg2147483648_int32, fnname: "or_Neg2147483648_int32", in: 2147483647, want: -1},
+       test_int32{fn: or_int32_Neg2147483648, fnname: "or_int32_Neg2147483648", in: 2147483647, want: -1},
+       test_int32{fn: or_Neg2147483647_int32, fnname: "or_Neg2147483647_int32", in: -2147483648, want: -2147483647},
+       test_int32{fn: or_int32_Neg2147483647, fnname: "or_int32_Neg2147483647", in: -2147483648, want: -2147483647},
+       test_int32{fn: or_Neg2147483647_int32, fnname: "or_Neg2147483647_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_int32_Neg2147483647, fnname: "or_int32_Neg2147483647", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_Neg2147483647_int32, fnname: "or_Neg2147483647_int32", in: -1, want: -1},
+       test_int32{fn: or_int32_Neg2147483647, fnname: "or_int32_Neg2147483647", in: -1, want: -1},
+       test_int32{fn: or_Neg2147483647_int32, fnname: "or_Neg2147483647_int32", in: 0, want: -2147483647},
+       test_int32{fn: or_int32_Neg2147483647, fnname: "or_int32_Neg2147483647", in: 0, want: -2147483647},
+       test_int32{fn: or_Neg2147483647_int32, fnname: "or_Neg2147483647_int32", in: 1, want: -2147483647},
+       test_int32{fn: or_int32_Neg2147483647, fnname: "or_int32_Neg2147483647", in: 1, want: -2147483647},
+       test_int32{fn: or_Neg2147483647_int32, fnname: "or_Neg2147483647_int32", in: 2147483647, want: -1},
+       test_int32{fn: or_int32_Neg2147483647, fnname: "or_int32_Neg2147483647", in: 2147483647, want: -1},
+       test_int32{fn: or_Neg1_int32, fnname: "or_Neg1_int32", in: -2147483648, want: -1},
+       test_int32{fn: or_int32_Neg1, fnname: "or_int32_Neg1", in: -2147483648, want: -1},
+       test_int32{fn: or_Neg1_int32, fnname: "or_Neg1_int32", in: -2147483647, want: -1},
+       test_int32{fn: or_int32_Neg1, fnname: "or_int32_Neg1", in: -2147483647, want: -1},
+       test_int32{fn: or_Neg1_int32, fnname: "or_Neg1_int32", in: -1, want: -1},
+       test_int32{fn: or_int32_Neg1, fnname: "or_int32_Neg1", in: -1, want: -1},
+       test_int32{fn: or_Neg1_int32, fnname: "or_Neg1_int32", in: 0, want: -1},
+       test_int32{fn: or_int32_Neg1, fnname: "or_int32_Neg1", in: 0, want: -1},
+       test_int32{fn: or_Neg1_int32, fnname: "or_Neg1_int32", in: 1, want: -1},
+       test_int32{fn: or_int32_Neg1, fnname: "or_int32_Neg1", in: 1, want: -1},
+       test_int32{fn: or_Neg1_int32, fnname: "or_Neg1_int32", in: 2147483647, want: -1},
+       test_int32{fn: or_int32_Neg1, fnname: "or_int32_Neg1", in: 2147483647, want: -1},
+       test_int32{fn: or_0_int32, fnname: "or_0_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: or_int32_0, fnname: "or_int32_0", in: -2147483648, want: -2147483648},
+       test_int32{fn: or_0_int32, fnname: "or_0_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_int32_0, fnname: "or_int32_0", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_0_int32, fnname: "or_0_int32", in: -1, want: -1},
+       test_int32{fn: or_int32_0, fnname: "or_int32_0", in: -1, want: -1},
+       test_int32{fn: or_0_int32, fnname: "or_0_int32", in: 0, want: 0},
+       test_int32{fn: or_int32_0, fnname: "or_int32_0", in: 0, want: 0},
+       test_int32{fn: or_0_int32, fnname: "or_0_int32", in: 1, want: 1},
+       test_int32{fn: or_int32_0, fnname: "or_int32_0", in: 1, want: 1},
+       test_int32{fn: or_0_int32, fnname: "or_0_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: or_int32_0, fnname: "or_int32_0", in: 2147483647, want: 2147483647},
+       test_int32{fn: or_1_int32, fnname: "or_1_int32", in: -2147483648, want: -2147483647},
+       test_int32{fn: or_int32_1, fnname: "or_int32_1", in: -2147483648, want: -2147483647},
+       test_int32{fn: or_1_int32, fnname: "or_1_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_int32_1, fnname: "or_int32_1", in: -2147483647, want: -2147483647},
+       test_int32{fn: or_1_int32, fnname: "or_1_int32", in: -1, want: -1},
+       test_int32{fn: or_int32_1, fnname: "or_int32_1", in: -1, want: -1},
+       test_int32{fn: or_1_int32, fnname: "or_1_int32", in: 0, want: 1},
+       test_int32{fn: or_int32_1, fnname: "or_int32_1", in: 0, want: 1},
+       test_int32{fn: or_1_int32, fnname: "or_1_int32", in: 1, want: 1},
+       test_int32{fn: or_int32_1, fnname: "or_int32_1", in: 1, want: 1},
+       test_int32{fn: or_1_int32, fnname: "or_1_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: or_int32_1, fnname: "or_int32_1", in: 2147483647, want: 2147483647},
+       test_int32{fn: or_2147483647_int32, fnname: "or_2147483647_int32", in: -2147483648, want: -1},
+       test_int32{fn: or_int32_2147483647, fnname: "or_int32_2147483647", in: -2147483648, want: -1},
+       test_int32{fn: or_2147483647_int32, fnname: "or_2147483647_int32", in: -2147483647, want: -1},
+       test_int32{fn: or_int32_2147483647, fnname: "or_int32_2147483647", in: -2147483647, want: -1},
+       test_int32{fn: or_2147483647_int32, fnname: "or_2147483647_int32", in: -1, want: -1},
+       test_int32{fn: or_int32_2147483647, fnname: "or_int32_2147483647", in: -1, want: -1},
+       test_int32{fn: or_2147483647_int32, fnname: "or_2147483647_int32", in: 0, want: 2147483647},
+       test_int32{fn: or_int32_2147483647, fnname: "or_int32_2147483647", in: 0, want: 2147483647},
+       test_int32{fn: or_2147483647_int32, fnname: "or_2147483647_int32", in: 1, want: 2147483647},
+       test_int32{fn: or_int32_2147483647, fnname: "or_int32_2147483647", in: 1, want: 2147483647},
+       test_int32{fn: or_2147483647_int32, fnname: "or_2147483647_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: or_int32_2147483647, fnname: "or_int32_2147483647", in: 2147483647, want: 2147483647},
+       test_int32{fn: xor_Neg2147483648_int32, fnname: "xor_Neg2147483648_int32", in: -2147483648, want: 0},
+       test_int32{fn: xor_int32_Neg2147483648, fnname: "xor_int32_Neg2147483648", in: -2147483648, want: 0},
+       test_int32{fn: xor_Neg2147483648_int32, fnname: "xor_Neg2147483648_int32", in: -2147483647, want: 1},
+       test_int32{fn: xor_int32_Neg2147483648, fnname: "xor_int32_Neg2147483648", in: -2147483647, want: 1},
+       test_int32{fn: xor_Neg2147483648_int32, fnname: "xor_Neg2147483648_int32", in: -1, want: 2147483647},
+       test_int32{fn: xor_int32_Neg2147483648, fnname: "xor_int32_Neg2147483648", in: -1, want: 2147483647},
+       test_int32{fn: xor_Neg2147483648_int32, fnname: "xor_Neg2147483648_int32", in: 0, want: -2147483648},
+       test_int32{fn: xor_int32_Neg2147483648, fnname: "xor_int32_Neg2147483648", in: 0, want: -2147483648},
+       test_int32{fn: xor_Neg2147483648_int32, fnname: "xor_Neg2147483648_int32", in: 1, want: -2147483647},
+       test_int32{fn: xor_int32_Neg2147483648, fnname: "xor_int32_Neg2147483648", in: 1, want: -2147483647},
+       test_int32{fn: xor_Neg2147483648_int32, fnname: "xor_Neg2147483648_int32", in: 2147483647, want: -1},
+       test_int32{fn: xor_int32_Neg2147483648, fnname: "xor_int32_Neg2147483648", in: 2147483647, want: -1},
+       test_int32{fn: xor_Neg2147483647_int32, fnname: "xor_Neg2147483647_int32", in: -2147483648, want: 1},
+       test_int32{fn: xor_int32_Neg2147483647, fnname: "xor_int32_Neg2147483647", in: -2147483648, want: 1},
+       test_int32{fn: xor_Neg2147483647_int32, fnname: "xor_Neg2147483647_int32", in: -2147483647, want: 0},
+       test_int32{fn: xor_int32_Neg2147483647, fnname: "xor_int32_Neg2147483647", in: -2147483647, want: 0},
+       test_int32{fn: xor_Neg2147483647_int32, fnname: "xor_Neg2147483647_int32", in: -1, want: 2147483646},
+       test_int32{fn: xor_int32_Neg2147483647, fnname: "xor_int32_Neg2147483647", in: -1, want: 2147483646},
+       test_int32{fn: xor_Neg2147483647_int32, fnname: "xor_Neg2147483647_int32", in: 0, want: -2147483647},
+       test_int32{fn: xor_int32_Neg2147483647, fnname: "xor_int32_Neg2147483647", in: 0, want: -2147483647},
+       test_int32{fn: xor_Neg2147483647_int32, fnname: "xor_Neg2147483647_int32", in: 1, want: -2147483648},
+       test_int32{fn: xor_int32_Neg2147483647, fnname: "xor_int32_Neg2147483647", in: 1, want: -2147483648},
+       test_int32{fn: xor_Neg2147483647_int32, fnname: "xor_Neg2147483647_int32", in: 2147483647, want: -2},
+       test_int32{fn: xor_int32_Neg2147483647, fnname: "xor_int32_Neg2147483647", in: 2147483647, want: -2},
+       test_int32{fn: xor_Neg1_int32, fnname: "xor_Neg1_int32", in: -2147483648, want: 2147483647},
+       test_int32{fn: xor_int32_Neg1, fnname: "xor_int32_Neg1", in: -2147483648, want: 2147483647},
+       test_int32{fn: xor_Neg1_int32, fnname: "xor_Neg1_int32", in: -2147483647, want: 2147483646},
+       test_int32{fn: xor_int32_Neg1, fnname: "xor_int32_Neg1", in: -2147483647, want: 2147483646},
+       test_int32{fn: xor_Neg1_int32, fnname: "xor_Neg1_int32", in: -1, want: 0},
+       test_int32{fn: xor_int32_Neg1, fnname: "xor_int32_Neg1", in: -1, want: 0},
+       test_int32{fn: xor_Neg1_int32, fnname: "xor_Neg1_int32", in: 0, want: -1},
+       test_int32{fn: xor_int32_Neg1, fnname: "xor_int32_Neg1", in: 0, want: -1},
+       test_int32{fn: xor_Neg1_int32, fnname: "xor_Neg1_int32", in: 1, want: -2},
+       test_int32{fn: xor_int32_Neg1, fnname: "xor_int32_Neg1", in: 1, want: -2},
+       test_int32{fn: xor_Neg1_int32, fnname: "xor_Neg1_int32", in: 2147483647, want: -2147483648},
+       test_int32{fn: xor_int32_Neg1, fnname: "xor_int32_Neg1", in: 2147483647, want: -2147483648},
+       test_int32{fn: xor_0_int32, fnname: "xor_0_int32", in: -2147483648, want: -2147483648},
+       test_int32{fn: xor_int32_0, fnname: "xor_int32_0", in: -2147483648, want: -2147483648},
+       test_int32{fn: xor_0_int32, fnname: "xor_0_int32", in: -2147483647, want: -2147483647},
+       test_int32{fn: xor_int32_0, fnname: "xor_int32_0", in: -2147483647, want: -2147483647},
+       test_int32{fn: xor_0_int32, fnname: "xor_0_int32", in: -1, want: -1},
+       test_int32{fn: xor_int32_0, fnname: "xor_int32_0", in: -1, want: -1},
+       test_int32{fn: xor_0_int32, fnname: "xor_0_int32", in: 0, want: 0},
+       test_int32{fn: xor_int32_0, fnname: "xor_int32_0", in: 0, want: 0},
+       test_int32{fn: xor_0_int32, fnname: "xor_0_int32", in: 1, want: 1},
+       test_int32{fn: xor_int32_0, fnname: "xor_int32_0", in: 1, want: 1},
+       test_int32{fn: xor_0_int32, fnname: "xor_0_int32", in: 2147483647, want: 2147483647},
+       test_int32{fn: xor_int32_0, fnname: "xor_int32_0", in: 2147483647, want: 2147483647},
+       test_int32{fn: xor_1_int32, fnname: "xor_1_int32", in: -2147483648, want: -2147483647},
+       test_int32{fn: xor_int32_1, fnname: "xor_int32_1", in: -2147483648, want: -2147483647},
+       test_int32{fn: xor_1_int32, fnname: "xor_1_int32", in: -2147483647, want: -2147483648},
+       test_int32{fn: xor_int32_1, fnname: "xor_int32_1", in: -2147483647, want: -2147483648},
+       test_int32{fn: xor_1_int32, fnname: "xor_1_int32", in: -1, want: -2},
+       test_int32{fn: xor_int32_1, fnname: "xor_int32_1", in: -1, want: -2},
+       test_int32{fn: xor_1_int32, fnname: "xor_1_int32", in: 0, want: 1},
+       test_int32{fn: xor_int32_1, fnname: "xor_int32_1", in: 0, want: 1},
+       test_int32{fn: xor_1_int32, fnname: "xor_1_int32", in: 1, want: 0},
+       test_int32{fn: xor_int32_1, fnname: "xor_int32_1", in: 1, want: 0},
+       test_int32{fn: xor_1_int32, fnname: "xor_1_int32", in: 2147483647, want: 2147483646},
+       test_int32{fn: xor_int32_1, fnname: "xor_int32_1", in: 2147483647, want: 2147483646},
+       test_int32{fn: xor_2147483647_int32, fnname: "xor_2147483647_int32", in: -2147483648, want: -1},
+       test_int32{fn: xor_int32_2147483647, fnname: "xor_int32_2147483647", in: -2147483648, want: -1},
+       test_int32{fn: xor_2147483647_int32, fnname: "xor_2147483647_int32", in: -2147483647, want: -2},
+       test_int32{fn: xor_int32_2147483647, fnname: "xor_int32_2147483647", in: -2147483647, want: -2},
+       test_int32{fn: xor_2147483647_int32, fnname: "xor_2147483647_int32", in: -1, want: -2147483648},
+       test_int32{fn: xor_int32_2147483647, fnname: "xor_int32_2147483647", in: -1, want: -2147483648},
+       test_int32{fn: xor_2147483647_int32, fnname: "xor_2147483647_int32", in: 0, want: 2147483647},
+       test_int32{fn: xor_int32_2147483647, fnname: "xor_int32_2147483647", in: 0, want: 2147483647},
+       test_int32{fn: xor_2147483647_int32, fnname: "xor_2147483647_int32", in: 1, want: 2147483646},
+       test_int32{fn: xor_int32_2147483647, fnname: "xor_int32_2147483647", in: 1, want: 2147483646},
+       test_int32{fn: xor_2147483647_int32, fnname: "xor_2147483647_int32", in: 2147483647, want: 0},
+       test_int32{fn: xor_int32_2147483647, fnname: "xor_int32_2147483647", in: 2147483647, want: 0}}
+
+type test_uint16 struct {
+       fn     func(uint16) uint16
+       fnname string
+       in     uint16
+       want   uint16
+}
+
+var tests_uint16 = []test_uint16{
+
+       test_uint16{fn: add_0_uint16, fnname: "add_0_uint16", in: 0, want: 0},
+       test_uint16{fn: add_uint16_0, fnname: "add_uint16_0", in: 0, want: 0},
+       test_uint16{fn: add_0_uint16, fnname: "add_0_uint16", in: 1, want: 1},
+       test_uint16{fn: add_uint16_0, fnname: "add_uint16_0", in: 1, want: 1},
+       test_uint16{fn: add_0_uint16, fnname: "add_0_uint16", in: 65535, want: 65535},
+       test_uint16{fn: add_uint16_0, fnname: "add_uint16_0", in: 65535, want: 65535},
+       test_uint16{fn: add_1_uint16, fnname: "add_1_uint16", in: 0, want: 1},
+       test_uint16{fn: add_uint16_1, fnname: "add_uint16_1", in: 0, want: 1},
+       test_uint16{fn: add_1_uint16, fnname: "add_1_uint16", in: 1, want: 2},
+       test_uint16{fn: add_uint16_1, fnname: "add_uint16_1", in: 1, want: 2},
+       test_uint16{fn: add_1_uint16, fnname: "add_1_uint16", in: 65535, want: 0},
+       test_uint16{fn: add_uint16_1, fnname: "add_uint16_1", in: 65535, want: 0},
+       test_uint16{fn: add_65535_uint16, fnname: "add_65535_uint16", in: 0, want: 65535},
+       test_uint16{fn: add_uint16_65535, fnname: "add_uint16_65535", in: 0, want: 65535},
+       test_uint16{fn: add_65535_uint16, fnname: "add_65535_uint16", in: 1, want: 0},
+       test_uint16{fn: add_uint16_65535, fnname: "add_uint16_65535", in: 1, want: 0},
+       test_uint16{fn: add_65535_uint16, fnname: "add_65535_uint16", in: 65535, want: 65534},
+       test_uint16{fn: add_uint16_65535, fnname: "add_uint16_65535", in: 65535, want: 65534},
+       test_uint16{fn: sub_0_uint16, fnname: "sub_0_uint16", in: 0, want: 0},
+       test_uint16{fn: sub_uint16_0, fnname: "sub_uint16_0", in: 0, want: 0},
+       test_uint16{fn: sub_0_uint16, fnname: "sub_0_uint16", in: 1, want: 65535},
+       test_uint16{fn: sub_uint16_0, fnname: "sub_uint16_0", in: 1, want: 1},
+       test_uint16{fn: sub_0_uint16, fnname: "sub_0_uint16", in: 65535, want: 1},
+       test_uint16{fn: sub_uint16_0, fnname: "sub_uint16_0", in: 65535, want: 65535},
+       test_uint16{fn: sub_1_uint16, fnname: "sub_1_uint16", in: 0, want: 1},
+       test_uint16{fn: sub_uint16_1, fnname: "sub_uint16_1", in: 0, want: 65535},
+       test_uint16{fn: sub_1_uint16, fnname: "sub_1_uint16", in: 1, want: 0},
+       test_uint16{fn: sub_uint16_1, fnname: "sub_uint16_1", in: 1, want: 0},
+       test_uint16{fn: sub_1_uint16, fnname: "sub_1_uint16", in: 65535, want: 2},
+       test_uint16{fn: sub_uint16_1, fnname: "sub_uint16_1", in: 65535, want: 65534},
+       test_uint16{fn: sub_65535_uint16, fnname: "sub_65535_uint16", in: 0, want: 65535},
+       test_uint16{fn: sub_uint16_65535, fnname: "sub_uint16_65535", in: 0, want: 1},
+       test_uint16{fn: sub_65535_uint16, fnname: "sub_65535_uint16", in: 1, want: 65534},
+       test_uint16{fn: sub_uint16_65535, fnname: "sub_uint16_65535", in: 1, want: 2},
+       test_uint16{fn: sub_65535_uint16, fnname: "sub_65535_uint16", in: 65535, want: 0},
+       test_uint16{fn: sub_uint16_65535, fnname: "sub_uint16_65535", in: 65535, want: 0},
+       test_uint16{fn: div_0_uint16, fnname: "div_0_uint16", in: 1, want: 0},
+       test_uint16{fn: div_0_uint16, fnname: "div_0_uint16", in: 65535, want: 0},
+       test_uint16{fn: div_uint16_1, fnname: "div_uint16_1", in: 0, want: 0},
+       test_uint16{fn: div_1_uint16, fnname: "div_1_uint16", in: 1, want: 1},
+       test_uint16{fn: div_uint16_1, fnname: "div_uint16_1", in: 1, want: 1},
+       test_uint16{fn: div_1_uint16, fnname: "div_1_uint16", in: 65535, want: 0},
+       test_uint16{fn: div_uint16_1, fnname: "div_uint16_1", in: 65535, want: 65535},
+       test_uint16{fn: div_uint16_65535, fnname: "div_uint16_65535", in: 0, want: 0},
+       test_uint16{fn: div_65535_uint16, fnname: "div_65535_uint16", in: 1, want: 65535},
+       test_uint16{fn: div_uint16_65535, fnname: "div_uint16_65535", in: 1, want: 0},
+       test_uint16{fn: div_65535_uint16, fnname: "div_65535_uint16", in: 65535, want: 1},
+       test_uint16{fn: div_uint16_65535, fnname: "div_uint16_65535", in: 65535, want: 1},
+       test_uint16{fn: mul_0_uint16, fnname: "mul_0_uint16", in: 0, want: 0},
+       test_uint16{fn: mul_uint16_0, fnname: "mul_uint16_0", in: 0, want: 0},
+       test_uint16{fn: mul_0_uint16, fnname: "mul_0_uint16", in: 1, want: 0},
+       test_uint16{fn: mul_uint16_0, fnname: "mul_uint16_0", in: 1, want: 0},
+       test_uint16{fn: mul_0_uint16, fnname: "mul_0_uint16", in: 65535, want: 0},
+       test_uint16{fn: mul_uint16_0, fnname: "mul_uint16_0", in: 65535, want: 0},
+       test_uint16{fn: mul_1_uint16, fnname: "mul_1_uint16", in: 0, want: 0},
+       test_uint16{fn: mul_uint16_1, fnname: "mul_uint16_1", in: 0, want: 0},
+       test_uint16{fn: mul_1_uint16, fnname: "mul_1_uint16", in: 1, want: 1},
+       test_uint16{fn: mul_uint16_1, fnname: "mul_uint16_1", in: 1, want: 1},
+       test_uint16{fn: mul_1_uint16, fnname: "mul_1_uint16", in: 65535, want: 65535},
+       test_uint16{fn: mul_uint16_1, fnname: "mul_uint16_1", in: 65535, want: 65535},
+       test_uint16{fn: mul_65535_uint16, fnname: "mul_65535_uint16", in: 0, want: 0},
+       test_uint16{fn: mul_uint16_65535, fnname: "mul_uint16_65535", in: 0, want: 0},
+       test_uint16{fn: mul_65535_uint16, fnname: "mul_65535_uint16", in: 1, want: 65535},
+       test_uint16{fn: mul_uint16_65535, fnname: "mul_uint16_65535", in: 1, want: 65535},
+       test_uint16{fn: mul_65535_uint16, fnname: "mul_65535_uint16", in: 65535, want: 1},
+       test_uint16{fn: mul_uint16_65535, fnname: "mul_uint16_65535", in: 65535, want: 1},
+       test_uint16{fn: lsh_0_uint16, fnname: "lsh_0_uint16", in: 0, want: 0},
+       test_uint16{fn: lsh_uint16_0, fnname: "lsh_uint16_0", in: 0, want: 0},
+       test_uint16{fn: lsh_0_uint16, fnname: "lsh_0_uint16", in: 1, want: 0},
+       test_uint16{fn: lsh_uint16_0, fnname: "lsh_uint16_0", in: 1, want: 1},
+       test_uint16{fn: lsh_0_uint16, fnname: "lsh_0_uint16", in: 65535, want: 0},
+       test_uint16{fn: lsh_uint16_0, fnname: "lsh_uint16_0", in: 65535, want: 65535},
+       test_uint16{fn: lsh_1_uint16, fnname: "lsh_1_uint16", in: 0, want: 1},
+       test_uint16{fn: lsh_uint16_1, fnname: "lsh_uint16_1", in: 0, want: 0},
+       test_uint16{fn: lsh_1_uint16, fnname: "lsh_1_uint16", in: 1, want: 2},
+       test_uint16{fn: lsh_uint16_1, fnname: "lsh_uint16_1", in: 1, want: 2},
+       test_uint16{fn: lsh_1_uint16, fnname: "lsh_1_uint16", in: 65535, want: 0},
+       test_uint16{fn: lsh_uint16_1, fnname: "lsh_uint16_1", in: 65535, want: 65534},
+       test_uint16{fn: lsh_65535_uint16, fnname: "lsh_65535_uint16", in: 0, want: 65535},
+       test_uint16{fn: lsh_uint16_65535, fnname: "lsh_uint16_65535", in: 0, want: 0},
+       test_uint16{fn: lsh_65535_uint16, fnname: "lsh_65535_uint16", in: 1, want: 65534},
+       test_uint16{fn: lsh_uint16_65535, fnname: "lsh_uint16_65535", in: 1, want: 0},
+       test_uint16{fn: lsh_65535_uint16, fnname: "lsh_65535_uint16", in: 65535, want: 0},
+       test_uint16{fn: lsh_uint16_65535, fnname: "lsh_uint16_65535", in: 65535, want: 0},
+       test_uint16{fn: rsh_0_uint16, fnname: "rsh_0_uint16", in: 0, want: 0},
+       test_uint16{fn: rsh_uint16_0, fnname: "rsh_uint16_0", in: 0, want: 0},
+       test_uint16{fn: rsh_0_uint16, fnname: "rsh_0_uint16", in: 1, want: 0},
+       test_uint16{fn: rsh_uint16_0, fnname: "rsh_uint16_0", in: 1, want: 1},
+       test_uint16{fn: rsh_0_uint16, fnname: "rsh_0_uint16", in: 65535, want: 0},
+       test_uint16{fn: rsh_uint16_0, fnname: "rsh_uint16_0", in: 65535, want: 65535},
+       test_uint16{fn: rsh_1_uint16, fnname: "rsh_1_uint16", in: 0, want: 1},
+       test_uint16{fn: rsh_uint16_1, fnname: "rsh_uint16_1", in: 0, want: 0},
+       test_uint16{fn: rsh_1_uint16, fnname: "rsh_1_uint16", in: 1, want: 0},
+       test_uint16{fn: rsh_uint16_1, fnname: "rsh_uint16_1", in: 1, want: 0},
+       test_uint16{fn: rsh_1_uint16, fnname: "rsh_1_uint16", in: 65535, want: 0},
+       test_uint16{fn: rsh_uint16_1, fnname: "rsh_uint16_1", in: 65535, want: 32767},
+       test_uint16{fn: rsh_65535_uint16, fnname: "rsh_65535_uint16", in: 0, want: 65535},
+       test_uint16{fn: rsh_uint16_65535, fnname: "rsh_uint16_65535", in: 0, want: 0},
+       test_uint16{fn: rsh_65535_uint16, fnname: "rsh_65535_uint16", in: 1, want: 32767},
+       test_uint16{fn: rsh_uint16_65535, fnname: "rsh_uint16_65535", in: 1, want: 0},
+       test_uint16{fn: rsh_65535_uint16, fnname: "rsh_65535_uint16", in: 65535, want: 0},
+       test_uint16{fn: rsh_uint16_65535, fnname: "rsh_uint16_65535", in: 65535, want: 0},
+       test_uint16{fn: mod_0_uint16, fnname: "mod_0_uint16", in: 1, want: 0},
+       test_uint16{fn: mod_0_uint16, fnname: "mod_0_uint16", in: 65535, want: 0},
+       test_uint16{fn: mod_uint16_1, fnname: "mod_uint16_1", in: 0, want: 0},
+       test_uint16{fn: mod_1_uint16, fnname: "mod_1_uint16", in: 1, want: 0},
+       test_uint16{fn: mod_uint16_1, fnname: "mod_uint16_1", in: 1, want: 0},
+       test_uint16{fn: mod_1_uint16, fnname: "mod_1_uint16", in: 65535, want: 1},
+       test_uint16{fn: mod_uint16_1, fnname: "mod_uint16_1", in: 65535, want: 0},
+       test_uint16{fn: mod_uint16_65535, fnname: "mod_uint16_65535", in: 0, want: 0},
+       test_uint16{fn: mod_65535_uint16, fnname: "mod_65535_uint16", in: 1, want: 0},
+       test_uint16{fn: mod_uint16_65535, fnname: "mod_uint16_65535", in: 1, want: 1},
+       test_uint16{fn: mod_65535_uint16, fnname: "mod_65535_uint16", in: 65535, want: 0},
+       test_uint16{fn: mod_uint16_65535, fnname: "mod_uint16_65535", in: 65535, want: 0},
+       test_uint16{fn: and_0_uint16, fnname: "and_0_uint16", in: 0, want: 0},
+       test_uint16{fn: and_uint16_0, fnname: "and_uint16_0", in: 0, want: 0},
+       test_uint16{fn: and_0_uint16, fnname: "and_0_uint16", in: 1, want: 0},
+       test_uint16{fn: and_uint16_0, fnname: "and_uint16_0", in: 1, want: 0},
+       test_uint16{fn: and_0_uint16, fnname: "and_0_uint16", in: 65535, want: 0},
+       test_uint16{fn: and_uint16_0, fnname: "and_uint16_0", in: 65535, want: 0},
+       test_uint16{fn: and_1_uint16, fnname: "and_1_uint16", in: 0, want: 0},
+       test_uint16{fn: and_uint16_1, fnname: "and_uint16_1", in: 0, want: 0},
+       test_uint16{fn: and_1_uint16, fnname: "and_1_uint16", in: 1, want: 1},
+       test_uint16{fn: and_uint16_1, fnname: "and_uint16_1", in: 1, want: 1},
+       test_uint16{fn: and_1_uint16, fnname: "and_1_uint16", in: 65535, want: 1},
+       test_uint16{fn: and_uint16_1, fnname: "and_uint16_1", in: 65535, want: 1},
+       test_uint16{fn: and_65535_uint16, fnname: "and_65535_uint16", in: 0, want: 0},
+       test_uint16{fn: and_uint16_65535, fnname: "and_uint16_65535", in: 0, want: 0},
+       test_uint16{fn: and_65535_uint16, fnname: "and_65535_uint16", in: 1, want: 1},
+       test_uint16{fn: and_uint16_65535, fnname: "and_uint16_65535", in: 1, want: 1},
+       test_uint16{fn: and_65535_uint16, fnname: "and_65535_uint16", in: 65535, want: 65535},
+       test_uint16{fn: and_uint16_65535, fnname: "and_uint16_65535", in: 65535, want: 65535},
+       test_uint16{fn: or_0_uint16, fnname: "or_0_uint16", in: 0, want: 0},
+       test_uint16{fn: or_uint16_0, fnname: "or_uint16_0", in: 0, want: 0},
+       test_uint16{fn: or_0_uint16, fnname: "or_0_uint16", in: 1, want: 1},
+       test_uint16{fn: or_uint16_0, fnname: "or_uint16_0", in: 1, want: 1},
+       test_uint16{fn: or_0_uint16, fnname: "or_0_uint16", in: 65535, want: 65535},
+       test_uint16{fn: or_uint16_0, fnname: "or_uint16_0", in: 65535, want: 65535},
+       test_uint16{fn: or_1_uint16, fnname: "or_1_uint16", in: 0, want: 1},
+       test_uint16{fn: or_uint16_1, fnname: "or_uint16_1", in: 0, want: 1},
+       test_uint16{fn: or_1_uint16, fnname: "or_1_uint16", in: 1, want: 1},
+       test_uint16{fn: or_uint16_1, fnname: "or_uint16_1", in: 1, want: 1},
+       test_uint16{fn: or_1_uint16, fnname: "or_1_uint16", in: 65535, want: 65535},
+       test_uint16{fn: or_uint16_1, fnname: "or_uint16_1", in: 65535, want: 65535},
+       test_uint16{fn: or_65535_uint16, fnname: "or_65535_uint16", in: 0, want: 65535},
+       test_uint16{fn: or_uint16_65535, fnname: "or_uint16_65535", in: 0, want: 65535},
+       test_uint16{fn: or_65535_uint16, fnname: "or_65535_uint16", in: 1, want: 65535},
+       test_uint16{fn: or_uint16_65535, fnname: "or_uint16_65535", in: 1, want: 65535},
+       test_uint16{fn: or_65535_uint16, fnname: "or_65535_uint16", in: 65535, want: 65535},
+       test_uint16{fn: or_uint16_65535, fnname: "or_uint16_65535", in: 65535, want: 65535},
+       test_uint16{fn: xor_0_uint16, fnname: "xor_0_uint16", in: 0, want: 0},
+       test_uint16{fn: xor_uint16_0, fnname: "xor_uint16_0", in: 0, want: 0},
+       test_uint16{fn: xor_0_uint16, fnname: "xor_0_uint16", in: 1, want: 1},
+       test_uint16{fn: xor_uint16_0, fnname: "xor_uint16_0", in: 1, want: 1},
+       test_uint16{fn: xor_0_uint16, fnname: "xor_0_uint16", in: 65535, want: 65535},
+       test_uint16{fn: xor_uint16_0, fnname: "xor_uint16_0", in: 65535, want: 65535},
+       test_uint16{fn: xor_1_uint16, fnname: "xor_1_uint16", in: 0, want: 1},
+       test_uint16{fn: xor_uint16_1, fnname: "xor_uint16_1", in: 0, want: 1},
+       test_uint16{fn: xor_1_uint16, fnname: "xor_1_uint16", in: 1, want: 0},
+       test_uint16{fn: xor_uint16_1, fnname: "xor_uint16_1", in: 1, want: 0},
+       test_uint16{fn: xor_1_uint16, fnname: "xor_1_uint16", in: 65535, want: 65534},
+       test_uint16{fn: xor_uint16_1, fnname: "xor_uint16_1", in: 65535, want: 65534},
+       test_uint16{fn: xor_65535_uint16, fnname: "xor_65535_uint16", in: 0, want: 65535},
+       test_uint16{fn: xor_uint16_65535, fnname: "xor_uint16_65535", in: 0, want: 65535},
+       test_uint16{fn: xor_65535_uint16, fnname: "xor_65535_uint16", in: 1, want: 65534},
+       test_uint16{fn: xor_uint16_65535, fnname: "xor_uint16_65535", in: 1, want: 65534},
+       test_uint16{fn: xor_65535_uint16, fnname: "xor_65535_uint16", in: 65535, want: 0},
+       test_uint16{fn: xor_uint16_65535, fnname: "xor_uint16_65535", in: 65535, want: 0}}
+
+type test_int16 struct {
+       fn     func(int16) int16
+       fnname string
+       in     int16
+       want   int16
+}
+
+var tests_int16 = []test_int16{
+
+       test_int16{fn: add_Neg32768_int16, fnname: "add_Neg32768_int16", in: -32768, want: 0},
+       test_int16{fn: add_int16_Neg32768, fnname: "add_int16_Neg32768", in: -32768, want: 0},
+       test_int16{fn: add_Neg32768_int16, fnname: "add_Neg32768_int16", in: -32767, want: 1},
+       test_int16{fn: add_int16_Neg32768, fnname: "add_int16_Neg32768", in: -32767, want: 1},
+       test_int16{fn: add_Neg32768_int16, fnname: "add_Neg32768_int16", in: -1, want: 32767},
+       test_int16{fn: add_int16_Neg32768, fnname: "add_int16_Neg32768", in: -1, want: 32767},
+       test_int16{fn: add_Neg32768_int16, fnname: "add_Neg32768_int16", in: 0, want: -32768},
+       test_int16{fn: add_int16_Neg32768, fnname: "add_int16_Neg32768", in: 0, want: -32768},
+       test_int16{fn: add_Neg32768_int16, fnname: "add_Neg32768_int16", in: 1, want: -32767},
+       test_int16{fn: add_int16_Neg32768, fnname: "add_int16_Neg32768", in: 1, want: -32767},
+       test_int16{fn: add_Neg32768_int16, fnname: "add_Neg32768_int16", in: 32766, want: -2},
+       test_int16{fn: add_int16_Neg32768, fnname: "add_int16_Neg32768", in: 32766, want: -2},
+       test_int16{fn: add_Neg32768_int16, fnname: "add_Neg32768_int16", in: 32767, want: -1},
+       test_int16{fn: add_int16_Neg32768, fnname: "add_int16_Neg32768", in: 32767, want: -1},
+       test_int16{fn: add_Neg32767_int16, fnname: "add_Neg32767_int16", in: -32768, want: 1},
+       test_int16{fn: add_int16_Neg32767, fnname: "add_int16_Neg32767", in: -32768, want: 1},
+       test_int16{fn: add_Neg32767_int16, fnname: "add_Neg32767_int16", in: -32767, want: 2},
+       test_int16{fn: add_int16_Neg32767, fnname: "add_int16_Neg32767", in: -32767, want: 2},
+       test_int16{fn: add_Neg32767_int16, fnname: "add_Neg32767_int16", in: -1, want: -32768},
+       test_int16{fn: add_int16_Neg32767, fnname: "add_int16_Neg32767", in: -1, want: -32768},
+       test_int16{fn: add_Neg32767_int16, fnname: "add_Neg32767_int16", in: 0, want: -32767},
+       test_int16{fn: add_int16_Neg32767, fnname: "add_int16_Neg32767", in: 0, want: -32767},
+       test_int16{fn: add_Neg32767_int16, fnname: "add_Neg32767_int16", in: 1, want: -32766},
+       test_int16{fn: add_int16_Neg32767, fnname: "add_int16_Neg32767", in: 1, want: -32766},
+       test_int16{fn: add_Neg32767_int16, fnname: "add_Neg32767_int16", in: 32766, want: -1},
+       test_int16{fn: add_int16_Neg32767, fnname: "add_int16_Neg32767", in: 32766, want: -1},
+       test_int16{fn: add_Neg32767_int16, fnname: "add_Neg32767_int16", in: 32767, want: 0},
+       test_int16{fn: add_int16_Neg32767, fnname: "add_int16_Neg32767", in: 32767, want: 0},
+       test_int16{fn: add_Neg1_int16, fnname: "add_Neg1_int16", in: -32768, want: 32767},
+       test_int16{fn: add_int16_Neg1, fnname: "add_int16_Neg1", in: -32768, want: 32767},
+       test_int16{fn: add_Neg1_int16, fnname: "add_Neg1_int16", in: -32767, want: -32768},
+       test_int16{fn: add_int16_Neg1, fnname: "add_int16_Neg1", in: -32767, want: -32768},
+       test_int16{fn: add_Neg1_int16, fnname: "add_Neg1_int16", in: -1, want: -2},
+       test_int16{fn: add_int16_Neg1, fnname: "add_int16_Neg1", in: -1, want: -2},
+       test_int16{fn: add_Neg1_int16, fnname: "add_Neg1_int16", in: 0, want: -1},
+       test_int16{fn: add_int16_Neg1, fnname: "add_int16_Neg1", in: 0, want: -1},
+       test_int16{fn: add_Neg1_int16, fnname: "add_Neg1_int16", in: 1, want: 0},
+       test_int16{fn: add_int16_Neg1, fnname: "add_int16_Neg1", in: 1, want: 0},
+       test_int16{fn: add_Neg1_int16, fnname: "add_Neg1_int16", in: 32766, want: 32765},
+       test_int16{fn: add_int16_Neg1, fnname: "add_int16_Neg1", in: 32766, want: 32765},
+       test_int16{fn: add_Neg1_int16, fnname: "add_Neg1_int16", in: 32767, want: 32766},
+       test_int16{fn: add_int16_Neg1, fnname: "add_int16_Neg1", in: 32767, want: 32766},
+       test_int16{fn: add_0_int16, fnname: "add_0_int16", in: -32768, want: -32768},
+       test_int16{fn: add_int16_0, fnname: "add_int16_0", in: -32768, want: -32768},
+       test_int16{fn: add_0_int16, fnname: "add_0_int16", in: -32767, want: -32767},
+       test_int16{fn: add_int16_0, fnname: "add_int16_0", in: -32767, want: -32767},
+       test_int16{fn: add_0_int16, fnname: "add_0_int16", in: -1, want: -1},
+       test_int16{fn: add_int16_0, fnname: "add_int16_0", in: -1, want: -1},
+       test_int16{fn: add_0_int16, fnname: "add_0_int16", in: 0, want: 0},
+       test_int16{fn: add_int16_0, fnname: "add_int16_0", in: 0, want: 0},
+       test_int16{fn: add_0_int16, fnname: "add_0_int16", in: 1, want: 1},
+       test_int16{fn: add_int16_0, fnname: "add_int16_0", in: 1, want: 1},
+       test_int16{fn: add_0_int16, fnname: "add_0_int16", in: 32766, want: 32766},
+       test_int16{fn: add_int16_0, fnname: "add_int16_0", in: 32766, want: 32766},
+       test_int16{fn: add_0_int16, fnname: "add_0_int16", in: 32767, want: 32767},
+       test_int16{fn: add_int16_0, fnname: "add_int16_0", in: 32767, want: 32767},
+       test_int16{fn: add_1_int16, fnname: "add_1_int16", in: -32768, want: -32767},
+       test_int16{fn: add_int16_1, fnname: "add_int16_1", in: -32768, want: -32767},
+       test_int16{fn: add_1_int16, fnname: "add_1_int16", in: -32767, want: -32766},
+       test_int16{fn: add_int16_1, fnname: "add_int16_1", in: -32767, want: -32766},
+       test_int16{fn: add_1_int16, fnname: "add_1_int16", in: -1, want: 0},
+       test_int16{fn: add_int16_1, fnname: "add_int16_1", in: -1, want: 0},
+       test_int16{fn: add_1_int16, fnname: "add_1_int16", in: 0, want: 1},
+       test_int16{fn: add_int16_1, fnname: "add_int16_1", in: 0, want: 1},
+       test_int16{fn: add_1_int16, fnname: "add_1_int16", in: 1, want: 2},
+       test_int16{fn: add_int16_1, fnname: "add_int16_1", in: 1, want: 2},
+       test_int16{fn: add_1_int16, fnname: "add_1_int16", in: 32766, want: 32767},
+       test_int16{fn: add_int16_1, fnname: "add_int16_1", in: 32766, want: 32767},
+       test_int16{fn: add_1_int16, fnname: "add_1_int16", in: 32767, want: -32768},
+       test_int16{fn: add_int16_1, fnname: "add_int16_1", in: 32767, want: -32768},
+       test_int16{fn: add_32766_int16, fnname: "add_32766_int16", in: -32768, want: -2},
+       test_int16{fn: add_int16_32766, fnname: "add_int16_32766", in: -32768, want: -2},
+       test_int16{fn: add_32766_int16, fnname: "add_32766_int16", in: -32767, want: -1},
+       test_int16{fn: add_int16_32766, fnname: "add_int16_32766", in: -32767, want: -1},
+       test_int16{fn: add_32766_int16, fnname: "add_32766_int16", in: -1, want: 32765},
+       test_int16{fn: add_int16_32766, fnname: "add_int16_32766", in: -1, want: 32765},
+       test_int16{fn: add_32766_int16, fnname: "add_32766_int16", in: 0, want: 32766},
+       test_int16{fn: add_int16_32766, fnname: "add_int16_32766", in: 0, want: 32766},
+       test_int16{fn: add_32766_int16, fnname: "add_32766_int16", in: 1, want: 32767},
+       test_int16{fn: add_int16_32766, fnname: "add_int16_32766", in: 1, want: 32767},
+       test_int16{fn: add_32766_int16, fnname: "add_32766_int16", in: 32766, want: -4},
+       test_int16{fn: add_int16_32766, fnname: "add_int16_32766", in: 32766, want: -4},
+       test_int16{fn: add_32766_int16, fnname: "add_32766_int16", in: 32767, want: -3},
+       test_int16{fn: add_int16_32766, fnname: "add_int16_32766", in: 32767, want: -3},
+       test_int16{fn: add_32767_int16, fnname: "add_32767_int16", in: -32768, want: -1},
+       test_int16{fn: add_int16_32767, fnname: "add_int16_32767", in: -32768, want: -1},
+       test_int16{fn: add_32767_int16, fnname: "add_32767_int16", in: -32767, want: 0},
+       test_int16{fn: add_int16_32767, fnname: "add_int16_32767", in: -32767, want: 0},
+       test_int16{fn: add_32767_int16, fnname: "add_32767_int16", in: -1, want: 32766},
+       test_int16{fn: add_int16_32767, fnname: "add_int16_32767", in: -1, want: 32766},
+       test_int16{fn: add_32767_int16, fnname: "add_32767_int16", in: 0, want: 32767},
+       test_int16{fn: add_int16_32767, fnname: "add_int16_32767", in: 0, want: 32767},
+       test_int16{fn: add_32767_int16, fnname: "add_32767_int16", in: 1, want: -32768},
+       test_int16{fn: add_int16_32767, fnname: "add_int16_32767", in: 1, want: -32768},
+       test_int16{fn: add_32767_int16, fnname: "add_32767_int16", in: 32766, want: -3},
+       test_int16{fn: add_int16_32767, fnname: "add_int16_32767", in: 32766, want: -3},
+       test_int16{fn: add_32767_int16, fnname: "add_32767_int16", in: 32767, want: -2},
+       test_int16{fn: add_int16_32767, fnname: "add_int16_32767", in: 32767, want: -2},
+       test_int16{fn: sub_Neg32768_int16, fnname: "sub_Neg32768_int16", in: -32768, want: 0},
+       test_int16{fn: sub_int16_Neg32768, fnname: "sub_int16_Neg32768", in: -32768, want: 0},
+       test_int16{fn: sub_Neg32768_int16, fnname: "sub_Neg32768_int16", in: -32767, want: -1},
+       test_int16{fn: sub_int16_Neg32768, fnname: "sub_int16_Neg32768", in: -32767, want: 1},
+       test_int16{fn: sub_Neg32768_int16, fnname: "sub_Neg32768_int16", in: -1, want: -32767},
+       test_int16{fn: sub_int16_Neg32768, fnname: "sub_int16_Neg32768", in: -1, want: 32767},
+       test_int16{fn: sub_Neg32768_int16, fnname: "sub_Neg32768_int16", in: 0, want: -32768},
+       test_int16{fn: sub_int16_Neg32768, fnname: "sub_int16_Neg32768", in: 0, want: -32768},
+       test_int16{fn: sub_Neg32768_int16, fnname: "sub_Neg32768_int16", in: 1, want: 32767},
+       test_int16{fn: sub_int16_Neg32768, fnname: "sub_int16_Neg32768", in: 1, want: -32767},
+       test_int16{fn: sub_Neg32768_int16, fnname: "sub_Neg32768_int16", in: 32766, want: 2},
+       test_int16{fn: sub_int16_Neg32768, fnname: "sub_int16_Neg32768", in: 32766, want: -2},
+       test_int16{fn: sub_Neg32768_int16, fnname: "sub_Neg32768_int16", in: 32767, want: 1},
+       test_int16{fn: sub_int16_Neg32768, fnname: "sub_int16_Neg32768", in: 32767, want: -1},
+       test_int16{fn: sub_Neg32767_int16, fnname: "sub_Neg32767_int16", in: -32768, want: 1},
+       test_int16{fn: sub_int16_Neg32767, fnname: "sub_int16_Neg32767", in: -32768, want: -1},
+       test_int16{fn: sub_Neg32767_int16, fnname: "sub_Neg32767_int16", in: -32767, want: 0},
+       test_int16{fn: sub_int16_Neg32767, fnname: "sub_int16_Neg32767", in: -32767, want: 0},
+       test_int16{fn: sub_Neg32767_int16, fnname: "sub_Neg32767_int16", in: -1, want: -32766},
+       test_int16{fn: sub_int16_Neg32767, fnname: "sub_int16_Neg32767", in: -1, want: 32766},
+       test_int16{fn: sub_Neg32767_int16, fnname: "sub_Neg32767_int16", in: 0, want: -32767},
+       test_int16{fn: sub_int16_Neg32767, fnname: "sub_int16_Neg32767", in: 0, want: 32767},
+       test_int16{fn: sub_Neg32767_int16, fnname: "sub_Neg32767_int16", in: 1, want: -32768},
+       test_int16{fn: sub_int16_Neg32767, fnname: "sub_int16_Neg32767", in: 1, want: -32768},
+       test_int16{fn: sub_Neg32767_int16, fnname: "sub_Neg32767_int16", in: 32766, want: 3},
+       test_int16{fn: sub_int16_Neg32767, fnname: "sub_int16_Neg32767", in: 32766, want: -3},
+       test_int16{fn: sub_Neg32767_int16, fnname: "sub_Neg32767_int16", in: 32767, want: 2},
+       test_int16{fn: sub_int16_Neg32767, fnname: "sub_int16_Neg32767", in: 32767, want: -2},
+       test_int16{fn: sub_Neg1_int16, fnname: "sub_Neg1_int16", in: -32768, want: 32767},
+       test_int16{fn: sub_int16_Neg1, fnname: "sub_int16_Neg1", in: -32768, want: -32767},
+       test_int16{fn: sub_Neg1_int16, fnname: "sub_Neg1_int16", in: -32767, want: 32766},
+       test_int16{fn: sub_int16_Neg1, fnname: "sub_int16_Neg1", in: -32767, want: -32766},
+       test_int16{fn: sub_Neg1_int16, fnname: "sub_Neg1_int16", in: -1, want: 0},
+       test_int16{fn: sub_int16_Neg1, fnname: "sub_int16_Neg1", in: -1, want: 0},
+       test_int16{fn: sub_Neg1_int16, fnname: "sub_Neg1_int16", in: 0, want: -1},
+       test_int16{fn: sub_int16_Neg1, fnname: "sub_int16_Neg1", in: 0, want: 1},
+       test_int16{fn: sub_Neg1_int16, fnname: "sub_Neg1_int16", in: 1, want: -2},
+       test_int16{fn: sub_int16_Neg1, fnname: "sub_int16_Neg1", in: 1, want: 2},
+       test_int16{fn: sub_Neg1_int16, fnname: "sub_Neg1_int16", in: 32766, want: -32767},
+       test_int16{fn: sub_int16_Neg1, fnname: "sub_int16_Neg1", in: 32766, want: 32767},
+       test_int16{fn: sub_Neg1_int16, fnname: "sub_Neg1_int16", in: 32767, want: -32768},
+       test_int16{fn: sub_int16_Neg1, fnname: "sub_int16_Neg1", in: 32767, want: -32768},
+       test_int16{fn: sub_0_int16, fnname: "sub_0_int16", in: -32768, want: -32768},
+       test_int16{fn: sub_int16_0, fnname: "sub_int16_0", in: -32768, want: -32768},
+       test_int16{fn: sub_0_int16, fnname: "sub_0_int16", in: -32767, want: 32767},
+       test_int16{fn: sub_int16_0, fnname: "sub_int16_0", in: -32767, want: -32767},
+       test_int16{fn: sub_0_int16, fnname: "sub_0_int16", in: -1, want: 1},
+       test_int16{fn: sub_int16_0, fnname: "sub_int16_0", in: -1, want: -1},
+       test_int16{fn: sub_0_int16, fnname: "sub_0_int16", in: 0, want: 0},
+       test_int16{fn: sub_int16_0, fnname: "sub_int16_0", in: 0, want: 0},
+       test_int16{fn: sub_0_int16, fnname: "sub_0_int16", in: 1, want: -1},
+       test_int16{fn: sub_int16_0, fnname: "sub_int16_0", in: 1, want: 1},
+       test_int16{fn: sub_0_int16, fnname: "sub_0_int16", in: 32766, want: -32766},
+       test_int16{fn: sub_int16_0, fnname: "sub_int16_0", in: 32766, want: 32766},
+       test_int16{fn: sub_0_int16, fnname: "sub_0_int16", in: 32767, want: -32767},
+       test_int16{fn: sub_int16_0, fnname: "sub_int16_0", in: 32767, want: 32767},
+       test_int16{fn: sub_1_int16, fnname: "sub_1_int16", in: -32768, want: -32767},
+       test_int16{fn: sub_int16_1, fnname: "sub_int16_1", in: -32768, want: 32767},
+       test_int16{fn: sub_1_int16, fnname: "sub_1_int16", in: -32767, want: -32768},
+       test_int16{fn: sub_int16_1, fnname: "sub_int16_1", in: -32767, want: -32768},
+       test_int16{fn: sub_1_int16, fnname: "sub_1_int16", in: -1, want: 2},
+       test_int16{fn: sub_int16_1, fnname: "sub_int16_1", in: -1, want: -2},
+       test_int16{fn: sub_1_int16, fnname: "sub_1_int16", in: 0, want: 1},
+       test_int16{fn: sub_int16_1, fnname: "sub_int16_1", in: 0, want: -1},
+       test_int16{fn: sub_1_int16, fnname: "sub_1_int16", in: 1, want: 0},
+       test_int16{fn: sub_int16_1, fnname: "sub_int16_1", in: 1, want: 0},
+       test_int16{fn: sub_1_int16, fnname: "sub_1_int16", in: 32766, want: -32765},
+       test_int16{fn: sub_int16_1, fnname: "sub_int16_1", in: 32766, want: 32765},
+       test_int16{fn: sub_1_int16, fnname: "sub_1_int16", in: 32767, want: -32766},
+       test_int16{fn: sub_int16_1, fnname: "sub_int16_1", in: 32767, want: 32766},
+       test_int16{fn: sub_32766_int16, fnname: "sub_32766_int16", in: -32768, want: -2},
+       test_int16{fn: sub_int16_32766, fnname: "sub_int16_32766", in: -32768, want: 2},
+       test_int16{fn: sub_32766_int16, fnname: "sub_32766_int16", in: -32767, want: -3},
+       test_int16{fn: sub_int16_32766, fnname: "sub_int16_32766", in: -32767, want: 3},
+       test_int16{fn: sub_32766_int16, fnname: "sub_32766_int16", in: -1, want: 32767},
+       test_int16{fn: sub_int16_32766, fnname: "sub_int16_32766", in: -1, want: -32767},
+       test_int16{fn: sub_32766_int16, fnname: "sub_32766_int16", in: 0, want: 32766},
+       test_int16{fn: sub_int16_32766, fnname: "sub_int16_32766", in: 0, want: -32766},
+       test_int16{fn: sub_32766_int16, fnname: "sub_32766_int16", in: 1, want: 32765},
+       test_int16{fn: sub_int16_32766, fnname: "sub_int16_32766", in: 1, want: -32765},
+       test_int16{fn: sub_32766_int16, fnname: "sub_32766_int16", in: 32766, want: 0},
+       test_int16{fn: sub_int16_32766, fnname: "sub_int16_32766", in: 32766, want: 0},
+       test_int16{fn: sub_32766_int16, fnname: "sub_32766_int16", in: 32767, want: -1},
+       test_int16{fn: sub_int16_32766, fnname: "sub_int16_32766", in: 32767, want: 1},
+       test_int16{fn: sub_32767_int16, fnname: "sub_32767_int16", in: -32768, want: -1},
+       test_int16{fn: sub_int16_32767, fnname: "sub_int16_32767", in: -32768, want: 1},
+       test_int16{fn: sub_32767_int16, fnname: "sub_32767_int16", in: -32767, want: -2},
+       test_int16{fn: sub_int16_32767, fnname: "sub_int16_32767", in: -32767, want: 2},
+       test_int16{fn: sub_32767_int16, fnname: "sub_32767_int16", in: -1, want: -32768},
+       test_int16{fn: sub_int16_32767, fnname: "sub_int16_32767", in: -1, want: -32768},
+       test_int16{fn: sub_32767_int16, fnname: "sub_32767_int16", in: 0, want: 32767},
+       test_int16{fn: sub_int16_32767, fnname: "sub_int16_32767", in: 0, want: -32767},
+       test_int16{fn: sub_32767_int16, fnname: "sub_32767_int16", in: 1, want: 32766},
+       test_int16{fn: sub_int16_32767, fnname: "sub_int16_32767", in: 1, want: -32766},
+       test_int16{fn: sub_32767_int16, fnname: "sub_32767_int16", in: 32766, want: 1},
+       test_int16{fn: sub_int16_32767, fnname: "sub_int16_32767", in: 32766, want: -1},
+       test_int16{fn: sub_32767_int16, fnname: "sub_32767_int16", in: 32767, want: 0},
+       test_int16{fn: sub_int16_32767, fnname: "sub_int16_32767", in: 32767, want: 0},
+       test_int16{fn: div_Neg32768_int16, fnname: "div_Neg32768_int16", in: -32768, want: 1},
+       test_int16{fn: div_int16_Neg32768, fnname: "div_int16_Neg32768", in: -32768, want: 1},
+       test_int16{fn: div_Neg32768_int16, fnname: "div_Neg32768_int16", in: -32767, want: 1},
+       test_int16{fn: div_int16_Neg32768, fnname: "div_int16_Neg32768", in: -32767, want: 0},
+       test_int16{fn: div_Neg32768_int16, fnname: "div_Neg32768_int16", in: -1, want: -32768},
+       test_int16{fn: div_int16_Neg32768, fnname: "div_int16_Neg32768", in: -1, want: 0},
+       test_int16{fn: div_int16_Neg32768, fnname: "div_int16_Neg32768", in: 0, want: 0},
+       test_int16{fn: div_Neg32768_int16, fnname: "div_Neg32768_int16", in: 1, want: -32768},
+       test_int16{fn: div_int16_Neg32768, fnname: "div_int16_Neg32768", in: 1, want: 0},
+       test_int16{fn: div_Neg32768_int16, fnname: "div_Neg32768_int16", in: 32766, want: -1},
+       test_int16{fn: div_int16_Neg32768, fnname: "div_int16_Neg32768", in: 32766, want: 0},
+       test_int16{fn: div_Neg32768_int16, fnname: "div_Neg32768_int16", in: 32767, want: -1},
+       test_int16{fn: div_int16_Neg32768, fnname: "div_int16_Neg32768", in: 32767, want: 0},
+       test_int16{fn: div_Neg32767_int16, fnname: "div_Neg32767_int16", in: -32768, want: 0},
+       test_int16{fn: div_int16_Neg32767, fnname: "div_int16_Neg32767", in: -32768, want: 1},
+       test_int16{fn: div_Neg32767_int16, fnname: "div_Neg32767_int16", in: -32767, want: 1},
+       test_int16{fn: div_int16_Neg32767, fnname: "div_int16_Neg32767", in: -32767, want: 1},
+       test_int16{fn: div_Neg32767_int16, fnname: "div_Neg32767_int16", in: -1, want: 32767},
+       test_int16{fn: div_int16_Neg32767, fnname: "div_int16_Neg32767", in: -1, want: 0},
+       test_int16{fn: div_int16_Neg32767, fnname: "div_int16_Neg32767", in: 0, want: 0},
+       test_int16{fn: div_Neg32767_int16, fnname: "div_Neg32767_int16", in: 1, want: -32767},
+       test_int16{fn: div_int16_Neg32767, fnname: "div_int16_Neg32767", in: 1, want: 0},
+       test_int16{fn: div_Neg32767_int16, fnname: "div_Neg32767_int16", in: 32766, want: -1},
+       test_int16{fn: div_int16_Neg32767, fnname: "div_int16_Neg32767", in: 32766, want: 0},
+       test_int16{fn: div_Neg32767_int16, fnname: "div_Neg32767_int16", in: 32767, want: -1},
+       test_int16{fn: div_int16_Neg32767, fnname: "div_int16_Neg32767", in: 32767, want: -1},
+       test_int16{fn: div_Neg1_int16, fnname: "div_Neg1_int16", in: -32768, want: 0},
+       test_int16{fn: div_int16_Neg1, fnname: "div_int16_Neg1", in: -32768, want: -32768},
+       test_int16{fn: div_Neg1_int16, fnname: "div_Neg1_int16", in: -32767, want: 0},
+       test_int16{fn: div_int16_Neg1, fnname: "div_int16_Neg1", in: -32767, want: 32767},
+       test_int16{fn: div_Neg1_int16, fnname: "div_Neg1_int16", in: -1, want: 1},
+       test_int16{fn: div_int16_Neg1, fnname: "div_int16_Neg1", in: -1, want: 1},
+       test_int16{fn: div_int16_Neg1, fnname: "div_int16_Neg1", in: 0, want: 0},
+       test_int16{fn: div_Neg1_int16, fnname: "div_Neg1_int16", in: 1, want: -1},
+       test_int16{fn: div_int16_Neg1, fnname: "div_int16_Neg1", in: 1, want: -1},
+       test_int16{fn: div_Neg1_int16, fnname: "div_Neg1_int16", in: 32766, want: 0},
+       test_int16{fn: div_int16_Neg1, fnname: "div_int16_Neg1", in: 32766, want: -32766},
+       test_int16{fn: div_Neg1_int16, fnname: "div_Neg1_int16", in: 32767, want: 0},
+       test_int16{fn: div_int16_Neg1, fnname: "div_int16_Neg1", in: 32767, want: -32767},
+       test_int16{fn: div_0_int16, fnname: "div_0_int16", in: -32768, want: 0},
+       test_int16{fn: div_0_int16, fnname: "div_0_int16", in: -32767, want: 0},
+       test_int16{fn: div_0_int16, fnname: "div_0_int16", in: -1, want: 0},
+       test_int16{fn: div_0_int16, fnname: "div_0_int16", in: 1, want: 0},
+       test_int16{fn: div_0_int16, fnname: "div_0_int16", in: 32766, want: 0},
+       test_int16{fn: div_0_int16, fnname: "div_0_int16", in: 32767, want: 0},
+       test_int16{fn: div_1_int16, fnname: "div_1_int16", in: -32768, want: 0},
+       test_int16{fn: div_int16_1, fnname: "div_int16_1", in: -32768, want: -32768},
+       test_int16{fn: div_1_int16, fnname: "div_1_int16", in: -32767, want: 0},
+       test_int16{fn: div_int16_1, fnname: "div_int16_1", in: -32767, want: -32767},
+       test_int16{fn: div_1_int16, fnname: "div_1_int16", in: -1, want: -1},
+       test_int16{fn: div_int16_1, fnname: "div_int16_1", in: -1, want: -1},
+       test_int16{fn: div_int16_1, fnname: "div_int16_1", in: 0, want: 0},
+       test_int16{fn: div_1_int16, fnname: "div_1_int16", in: 1, want: 1},
+       test_int16{fn: div_int16_1, fnname: "div_int16_1", in: 1, want: 1},
+       test_int16{fn: div_1_int16, fnname: "div_1_int16", in: 32766, want: 0},
+       test_int16{fn: div_int16_1, fnname: "div_int16_1", in: 32766, want: 32766},
+       test_int16{fn: div_1_int16, fnname: "div_1_int16", in: 32767, want: 0},
+       test_int16{fn: div_int16_1, fnname: "div_int16_1", in: 32767, want: 32767},
+       test_int16{fn: div_32766_int16, fnname: "div_32766_int16", in: -32768, want: 0},
+       test_int16{fn: div_int16_32766, fnname: "div_int16_32766", in: -32768, want: -1},
+       test_int16{fn: div_32766_int16, fnname: "div_32766_int16", in: -32767, want: 0},
+       test_int16{fn: div_int16_32766, fnname: "div_int16_32766", in: -32767, want: -1},
+       test_int16{fn: div_32766_int16, fnname: "div_32766_int16", in: -1, want: -32766},
+       test_int16{fn: div_int16_32766, fnname: "div_int16_32766", in: -1, want: 0},
+       test_int16{fn: div_int16_32766, fnname: "div_int16_32766", in: 0, want: 0},
+       test_int16{fn: div_32766_int16, fnname: "div_32766_int16", in: 1, want: 32766},
+       test_int16{fn: div_int16_32766, fnname: "div_int16_32766", in: 1, want: 0},
+       test_int16{fn: div_32766_int16, fnname: "div_32766_int16", in: 32766, want: 1},
+       test_int16{fn: div_int16_32766, fnname: "div_int16_32766", in: 32766, want: 1},
+       test_int16{fn: div_32766_int16, fnname: "div_32766_int16", in: 32767, want: 0},
+       test_int16{fn: div_int16_32766, fnname: "div_int16_32766", in: 32767, want: 1},
+       test_int16{fn: div_32767_int16, fnname: "div_32767_int16", in: -32768, want: 0},
+       test_int16{fn: div_int16_32767, fnname: "div_int16_32767", in: -32768, want: -1},
+       test_int16{fn: div_32767_int16, fnname: "div_32767_int16", in: -32767, want: -1},
+       test_int16{fn: div_int16_32767, fnname: "div_int16_32767", in: -32767, want: -1},
+       test_int16{fn: div_32767_int16, fnname: "div_32767_int16", in: -1, want: -32767},
+       test_int16{fn: div_int16_32767, fnname: "div_int16_32767", in: -1, want: 0},
+       test_int16{fn: div_int16_32767, fnname: "div_int16_32767", in: 0, want: 0},
+       test_int16{fn: div_32767_int16, fnname: "div_32767_int16", in: 1, want: 32767},
+       test_int16{fn: div_int16_32767, fnname: "div_int16_32767", in: 1, want: 0},
+       test_int16{fn: div_32767_int16, fnname: "div_32767_int16", in: 32766, want: 1},
+       test_int16{fn: div_int16_32767, fnname: "div_int16_32767", in: 32766, want: 0},
+       test_int16{fn: div_32767_int16, fnname: "div_32767_int16", in: 32767, want: 1},
+       test_int16{fn: div_int16_32767, fnname: "div_int16_32767", in: 32767, want: 1},
+       test_int16{fn: mul_Neg32768_int16, fnname: "mul_Neg32768_int16", in: -32768, want: 0},
+       test_int16{fn: mul_int16_Neg32768, fnname: "mul_int16_Neg32768", in: -32768, want: 0},
+       test_int16{fn: mul_Neg32768_int16, fnname: "mul_Neg32768_int16", in: -32767, want: -32768},
+       test_int16{fn: mul_int16_Neg32768, fnname: "mul_int16_Neg32768", in: -32767, want: -32768},
+       test_int16{fn: mul_Neg32768_int16, fnname: "mul_Neg32768_int16", in: -1, want: -32768},
+       test_int16{fn: mul_int16_Neg32768, fnname: "mul_int16_Neg32768", in: -1, want: -32768},
+       test_int16{fn: mul_Neg32768_int16, fnname: "mul_Neg32768_int16", in: 0, want: 0},
+       test_int16{fn: mul_int16_Neg32768, fnname: "mul_int16_Neg32768", in: 0, want: 0},
+       test_int16{fn: mul_Neg32768_int16, fnname: "mul_Neg32768_int16", in: 1, want: -32768},
+       test_int16{fn: mul_int16_Neg32768, fnname: "mul_int16_Neg32768", in: 1, want: -32768},
+       test_int16{fn: mul_Neg32768_int16, fnname: "mul_Neg32768_int16", in: 32766, want: 0},
+       test_int16{fn: mul_int16_Neg32768, fnname: "mul_int16_Neg32768", in: 32766, want: 0},
+       test_int16{fn: mul_Neg32768_int16, fnname: "mul_Neg32768_int16", in: 32767, want: -32768},
+       test_int16{fn: mul_int16_Neg32768, fnname: "mul_int16_Neg32768", in: 32767, want: -32768},
+       test_int16{fn: mul_Neg32767_int16, fnname: "mul_Neg32767_int16", in: -32768, want: -32768},
+       test_int16{fn: mul_int16_Neg32767, fnname: "mul_int16_Neg32767", in: -32768, want: -32768},
+       test_int16{fn: mul_Neg32767_int16, fnname: "mul_Neg32767_int16", in: -32767, want: 1},
+       test_int16{fn: mul_int16_Neg32767, fnname: "mul_int16_Neg32767", in: -32767, want: 1},
+       test_int16{fn: mul_Neg32767_int16, fnname: "mul_Neg32767_int16", in: -1, want: 32767},
+       test_int16{fn: mul_int16_Neg32767, fnname: "mul_int16_Neg32767", in: -1, want: 32767},
+       test_int16{fn: mul_Neg32767_int16, fnname: "mul_Neg32767_int16", in: 0, want: 0},
+       test_int16{fn: mul_int16_Neg32767, fnname: "mul_int16_Neg32767", in: 0, want: 0},
+       test_int16{fn: mul_Neg32767_int16, fnname: "mul_Neg32767_int16", in: 1, want: -32767},
+       test_int16{fn: mul_int16_Neg32767, fnname: "mul_int16_Neg32767", in: 1, want: -32767},
+       test_int16{fn: mul_Neg32767_int16, fnname: "mul_Neg32767_int16", in: 32766, want: 32766},
+       test_int16{fn: mul_int16_Neg32767, fnname: "mul_int16_Neg32767", in: 32766, want: 32766},
+       test_int16{fn: mul_Neg32767_int16, fnname: "mul_Neg32767_int16", in: 32767, want: -1},
+       test_int16{fn: mul_int16_Neg32767, fnname: "mul_int16_Neg32767", in: 32767, want: -1},
+       test_int16{fn: mul_Neg1_int16, fnname: "mul_Neg1_int16", in: -32768, want: -32768},
+       test_int16{fn: mul_int16_Neg1, fnname: "mul_int16_Neg1", in: -32768, want: -32768},
+       test_int16{fn: mul_Neg1_int16, fnname: "mul_Neg1_int16", in: -32767, want: 32767},
+       test_int16{fn: mul_int16_Neg1, fnname: "mul_int16_Neg1", in: -32767, want: 32767},
+       test_int16{fn: mul_Neg1_int16, fnname: "mul_Neg1_int16", in: -1, want: 1},
+       test_int16{fn: mul_int16_Neg1, fnname: "mul_int16_Neg1", in: -1, want: 1},
+       test_int16{fn: mul_Neg1_int16, fnname: "mul_Neg1_int16", in: 0, want: 0},
+       test_int16{fn: mul_int16_Neg1, fnname: "mul_int16_Neg1", in: 0, want: 0},
+       test_int16{fn: mul_Neg1_int16, fnname: "mul_Neg1_int16", in: 1, want: -1},
+       test_int16{fn: mul_int16_Neg1, fnname: "mul_int16_Neg1", in: 1, want: -1},
+       test_int16{fn: mul_Neg1_int16, fnname: "mul_Neg1_int16", in: 32766, want: -32766},
+       test_int16{fn: mul_int16_Neg1, fnname: "mul_int16_Neg1", in: 32766, want: -32766},
+       test_int16{fn: mul_Neg1_int16, fnname: "mul_Neg1_int16", in: 32767, want: -32767},
+       test_int16{fn: mul_int16_Neg1, fnname: "mul_int16_Neg1", in: 32767, want: -32767},
+       test_int16{fn: mul_0_int16, fnname: "mul_0_int16", in: -32768, want: 0},
+       test_int16{fn: mul_int16_0, fnname: "mul_int16_0", in: -32768, want: 0},
+       test_int16{fn: mul_0_int16, fnname: "mul_0_int16", in: -32767, want: 0},
+       test_int16{fn: mul_int16_0, fnname: "mul_int16_0", in: -32767, want: 0},
+       test_int16{fn: mul_0_int16, fnname: "mul_0_int16", in: -1, want: 0},
+       test_int16{fn: mul_int16_0, fnname: "mul_int16_0", in: -1, want: 0},
+       test_int16{fn: mul_0_int16, fnname: "mul_0_int16", in: 0, want: 0},
+       test_int16{fn: mul_int16_0, fnname: "mul_int16_0", in: 0, want: 0},
+       test_int16{fn: mul_0_int16, fnname: "mul_0_int16", in: 1, want: 0},
+       test_int16{fn: mul_int16_0, fnname: "mul_int16_0", in: 1, want: 0},
+       test_int16{fn: mul_0_int16, fnname: "mul_0_int16", in: 32766, want: 0},
+       test_int16{fn: mul_int16_0, fnname: "mul_int16_0", in: 32766, want: 0},
+       test_int16{fn: mul_0_int16, fnname: "mul_0_int16", in: 32767, want: 0},
+       test_int16{fn: mul_int16_0, fnname: "mul_int16_0", in: 32767, want: 0},
+       test_int16{fn: mul_1_int16, fnname: "mul_1_int16", in: -32768, want: -32768},
+       test_int16{fn: mul_int16_1, fnname: "mul_int16_1", in: -32768, want: -32768},
+       test_int16{fn: mul_1_int16, fnname: "mul_1_int16", in: -32767, want: -32767},
+       test_int16{fn: mul_int16_1, fnname: "mul_int16_1", in: -32767, want: -32767},
+       test_int16{fn: mul_1_int16, fnname: "mul_1_int16", in: -1, want: -1},
+       test_int16{fn: mul_int16_1, fnname: "mul_int16_1", in: -1, want: -1},
+       test_int16{fn: mul_1_int16, fnname: "mul_1_int16", in: 0, want: 0},
+       test_int16{fn: mul_int16_1, fnname: "mul_int16_1", in: 0, want: 0},
+       test_int16{fn: mul_1_int16, fnname: "mul_1_int16", in: 1, want: 1},
+       test_int16{fn: mul_int16_1, fnname: "mul_int16_1", in: 1, want: 1},
+       test_int16{fn: mul_1_int16, fnname: "mul_1_int16", in: 32766, want: 32766},
+       test_int16{fn: mul_int16_1, fnname: "mul_int16_1", in: 32766, want: 32766},
+       test_int16{fn: mul_1_int16, fnname: "mul_1_int16", in: 32767, want: 32767},
+       test_int16{fn: mul_int16_1, fnname: "mul_int16_1", in: 32767, want: 32767},
+       test_int16{fn: mul_32766_int16, fnname: "mul_32766_int16", in: -32768, want: 0},
+       test_int16{fn: mul_int16_32766, fnname: "mul_int16_32766", in: -32768, want: 0},
+       test_int16{fn: mul_32766_int16, fnname: "mul_32766_int16", in: -32767, want: 32766},
+       test_int16{fn: mul_int16_32766, fnname: "mul_int16_32766", in: -32767, want: 32766},
+       test_int16{fn: mul_32766_int16, fnname: "mul_32766_int16", in: -1, want: -32766},
+       test_int16{fn: mul_int16_32766, fnname: "mul_int16_32766", in: -1, want: -32766},
+       test_int16{fn: mul_32766_int16, fnname: "mul_32766_int16", in: 0, want: 0},
+       test_int16{fn: mul_int16_32766, fnname: "mul_int16_32766", in: 0, want: 0},
+       test_int16{fn: mul_32766_int16, fnname: "mul_32766_int16", in: 1, want: 32766},
+       test_int16{fn: mul_int16_32766, fnname: "mul_int16_32766", in: 1, want: 32766},
+       test_int16{fn: mul_32766_int16, fnname: "mul_32766_int16", in: 32766, want: 4},
+       test_int16{fn: mul_int16_32766, fnname: "mul_int16_32766", in: 32766, want: 4},
+       test_int16{fn: mul_32766_int16, fnname: "mul_32766_int16", in: 32767, want: -32766},
+       test_int16{fn: mul_int16_32766, fnname: "mul_int16_32766", in: 32767, want: -32766},
+       test_int16{fn: mul_32767_int16, fnname: "mul_32767_int16", in: -32768, want: -32768},
+       test_int16{fn: mul_int16_32767, fnname: "mul_int16_32767", in: -32768, want: -32768},
+       test_int16{fn: mul_32767_int16, fnname: "mul_32767_int16", in: -32767, want: -1},
+       test_int16{fn: mul_int16_32767, fnname: "mul_int16_32767", in: -32767, want: -1},
+       test_int16{fn: mul_32767_int16, fnname: "mul_32767_int16", in: -1, want: -32767},
+       test_int16{fn: mul_int16_32767, fnname: "mul_int16_32767", in: -1, want: -32767},
+       test_int16{fn: mul_32767_int16, fnname: "mul_32767_int16", in: 0, want: 0},
+       test_int16{fn: mul_int16_32767, fnname: "mul_int16_32767", in: 0, want: 0},
+       test_int16{fn: mul_32767_int16, fnname: "mul_32767_int16", in: 1, want: 32767},
+       test_int16{fn: mul_int16_32767, fnname: "mul_int16_32767", in: 1, want: 32767},
+       test_int16{fn: mul_32767_int16, fnname: "mul_32767_int16", in: 32766, want: -32766},
+       test_int16{fn: mul_int16_32767, fnname: "mul_int16_32767", in: 32766, want: -32766},
+       test_int16{fn: mul_32767_int16, fnname: "mul_32767_int16", in: 32767, want: 1},
+       test_int16{fn: mul_int16_32767, fnname: "mul_int16_32767", in: 32767, want: 1},
+       test_int16{fn: mod_Neg32768_int16, fnname: "mod_Neg32768_int16", in: -32768, want: 0},
+       test_int16{fn: mod_int16_Neg32768, fnname: "mod_int16_Neg32768", in: -32768, want: 0},
+       test_int16{fn: mod_Neg32768_int16, fnname: "mod_Neg32768_int16", in: -32767, want: -1},
+       test_int16{fn: mod_int16_Neg32768, fnname: "mod_int16_Neg32768", in: -32767, want: -32767},
+       test_int16{fn: mod_Neg32768_int16, fnname: "mod_Neg32768_int16", in: -1, want: 0},
+       test_int16{fn: mod_int16_Neg32768, fnname: "mod_int16_Neg32768", in: -1, want: -1},
+       test_int16{fn: mod_int16_Neg32768, fnname: "mod_int16_Neg32768", in: 0, want: 0},
+       test_int16{fn: mod_Neg32768_int16, fnname: "mod_Neg32768_int16", in: 1, want: 0},
+       test_int16{fn: mod_int16_Neg32768, fnname: "mod_int16_Neg32768", in: 1, want: 1},
+       test_int16{fn: mod_Neg32768_int16, fnname: "mod_Neg32768_int16", in: 32766, want: -2},
+       test_int16{fn: mod_int16_Neg32768, fnname: "mod_int16_Neg32768", in: 32766, want: 32766},
+       test_int16{fn: mod_Neg32768_int16, fnname: "mod_Neg32768_int16", in: 32767, want: -1},
+       test_int16{fn: mod_int16_Neg32768, fnname: "mod_int16_Neg32768", in: 32767, want: 32767},
+       test_int16{fn: mod_Neg32767_int16, fnname: "mod_Neg32767_int16", in: -32768, want: -32767},
+       test_int16{fn: mod_int16_Neg32767, fnname: "mod_int16_Neg32767", in: -32768, want: -1},
+       test_int16{fn: mod_Neg32767_int16, fnname: "mod_Neg32767_int16", in: -32767, want: 0},
+       test_int16{fn: mod_int16_Neg32767, fnname: "mod_int16_Neg32767", in: -32767, want: 0},
+       test_int16{fn: mod_Neg32767_int16, fnname: "mod_Neg32767_int16", in: -1, want: 0},
+       test_int16{fn: mod_int16_Neg32767, fnname: "mod_int16_Neg32767", in: -1, want: -1},
+       test_int16{fn: mod_int16_Neg32767, fnname: "mod_int16_Neg32767", in: 0, want: 0},
+       test_int16{fn: mod_Neg32767_int16, fnname: "mod_Neg32767_int16", in: 1, want: 0},
+       test_int16{fn: mod_int16_Neg32767, fnname: "mod_int16_Neg32767", in: 1, want: 1},
+       test_int16{fn: mod_Neg32767_int16, fnname: "mod_Neg32767_int16", in: 32766, want: -1},
+       test_int16{fn: mod_int16_Neg32767, fnname: "mod_int16_Neg32767", in: 32766, want: 32766},
+       test_int16{fn: mod_Neg32767_int16, fnname: "mod_Neg32767_int16", in: 32767, want: 0},
+       test_int16{fn: mod_int16_Neg32767, fnname: "mod_int16_Neg32767", in: 32767, want: 0},
+       test_int16{fn: mod_Neg1_int16, fnname: "mod_Neg1_int16", in: -32768, want: -1},
+       test_int16{fn: mod_int16_Neg1, fnname: "mod_int16_Neg1", in: -32768, want: 0},
+       test_int16{fn: mod_Neg1_int16, fnname: "mod_Neg1_int16", in: -32767, want: -1},
+       test_int16{fn: mod_int16_Neg1, fnname: "mod_int16_Neg1", in: -32767, want: 0},
+       test_int16{fn: mod_Neg1_int16, fnname: "mod_Neg1_int16", in: -1, want: 0},
+       test_int16{fn: mod_int16_Neg1, fnname: "mod_int16_Neg1", in: -1, want: 0},
+       test_int16{fn: mod_int16_Neg1, fnname: "mod_int16_Neg1", in: 0, want: 0},
+       test_int16{fn: mod_Neg1_int16, fnname: "mod_Neg1_int16", in: 1, want: 0},
+       test_int16{fn: mod_int16_Neg1, fnname: "mod_int16_Neg1", in: 1, want: 0},
+       test_int16{fn: mod_Neg1_int16, fnname: "mod_Neg1_int16", in: 32766, want: -1},
+       test_int16{fn: mod_int16_Neg1, fnname: "mod_int16_Neg1", in: 32766, want: 0},
+       test_int16{fn: mod_Neg1_int16, fnname: "mod_Neg1_int16", in: 32767, want: -1},
+       test_int16{fn: mod_int16_Neg1, fnname: "mod_int16_Neg1", in: 32767, want: 0},
+       test_int16{fn: mod_0_int16, fnname: "mod_0_int16", in: -32768, want: 0},
+       test_int16{fn: mod_0_int16, fnname: "mod_0_int16", in: -32767, want: 0},
+       test_int16{fn: mod_0_int16, fnname: "mod_0_int16", in: -1, want: 0},
+       test_int16{fn: mod_0_int16, fnname: "mod_0_int16", in: 1, want: 0},
+       test_int16{fn: mod_0_int16, fnname: "mod_0_int16", in: 32766, want: 0},
+       test_int16{fn: mod_0_int16, fnname: "mod_0_int16", in: 32767, want: 0},
+       test_int16{fn: mod_1_int16, fnname: "mod_1_int16", in: -32768, want: 1},
+       test_int16{fn: mod_int16_1, fnname: "mod_int16_1", in: -32768, want: 0},
+       test_int16{fn: mod_1_int16, fnname: "mod_1_int16", in: -32767, want: 1},
+       test_int16{fn: mod_int16_1, fnname: "mod_int16_1", in: -32767, want: 0},
+       test_int16{fn: mod_1_int16, fnname: "mod_1_int16", in: -1, want: 0},
+       test_int16{fn: mod_int16_1, fnname: "mod_int16_1", in: -1, want: 0},
+       test_int16{fn: mod_int16_1, fnname: "mod_int16_1", in: 0, want: 0},
+       test_int16{fn: mod_1_int16, fnname: "mod_1_int16", in: 1, want: 0},
+       test_int16{fn: mod_int16_1, fnname: "mod_int16_1", in: 1, want: 0},
+       test_int16{fn: mod_1_int16, fnname: "mod_1_int16", in: 32766, want: 1},
+       test_int16{fn: mod_int16_1, fnname: "mod_int16_1", in: 32766, want: 0},
+       test_int16{fn: mod_1_int16, fnname: "mod_1_int16", in: 32767, want: 1},
+       test_int16{fn: mod_int16_1, fnname: "mod_int16_1", in: 32767, want: 0},
+       test_int16{fn: mod_32766_int16, fnname: "mod_32766_int16", in: -32768, want: 32766},
+       test_int16{fn: mod_int16_32766, fnname: "mod_int16_32766", in: -32768, want: -2},
+       test_int16{fn: mod_32766_int16, fnname: "mod_32766_int16", in: -32767, want: 32766},
+       test_int16{fn: mod_int16_32766, fnname: "mod_int16_32766", in: -32767, want: -1},
+       test_int16{fn: mod_32766_int16, fnname: "mod_32766_int16", in: -1, want: 0},
+       test_int16{fn: mod_int16_32766, fnname: "mod_int16_32766", in: -1, want: -1},
+       test_int16{fn: mod_int16_32766, fnname: "mod_int16_32766", in: 0, want: 0},
+       test_int16{fn: mod_32766_int16, fnname: "mod_32766_int16", in: 1, want: 0},
+       test_int16{fn: mod_int16_32766, fnname: "mod_int16_32766", in: 1, want: 1},
+       test_int16{fn: mod_32766_int16, fnname: "mod_32766_int16", in: 32766, want: 0},
+       test_int16{fn: mod_int16_32766, fnname: "mod_int16_32766", in: 32766, want: 0},
+       test_int16{fn: mod_32766_int16, fnname: "mod_32766_int16", in: 32767, want: 32766},
+       test_int16{fn: mod_int16_32766, fnname: "mod_int16_32766", in: 32767, want: 1},
+       test_int16{fn: mod_32767_int16, fnname: "mod_32767_int16", in: -32768, want: 32767},
+       test_int16{fn: mod_int16_32767, fnname: "mod_int16_32767", in: -32768, want: -1},
+       test_int16{fn: mod_32767_int16, fnname: "mod_32767_int16", in: -32767, want: 0},
+       test_int16{fn: mod_int16_32767, fnname: "mod_int16_32767", in: -32767, want: 0},
+       test_int16{fn: mod_32767_int16, fnname: "mod_32767_int16", in: -1, want: 0},
+       test_int16{fn: mod_int16_32767, fnname: "mod_int16_32767", in: -1, want: -1},
+       test_int16{fn: mod_int16_32767, fnname: "mod_int16_32767", in: 0, want: 0},
+       test_int16{fn: mod_32767_int16, fnname: "mod_32767_int16", in: 1, want: 0},
+       test_int16{fn: mod_int16_32767, fnname: "mod_int16_32767", in: 1, want: 1},
+       test_int16{fn: mod_32767_int16, fnname: "mod_32767_int16", in: 32766, want: 1},
+       test_int16{fn: mod_int16_32767, fnname: "mod_int16_32767", in: 32766, want: 32766},
+       test_int16{fn: mod_32767_int16, fnname: "mod_32767_int16", in: 32767, want: 0},
+       test_int16{fn: mod_int16_32767, fnname: "mod_int16_32767", in: 32767, want: 0},
+       test_int16{fn: and_Neg32768_int16, fnname: "and_Neg32768_int16", in: -32768, want: -32768},
+       test_int16{fn: and_int16_Neg32768, fnname: "and_int16_Neg32768", in: -32768, want: -32768},
+       test_int16{fn: and_Neg32768_int16, fnname: "and_Neg32768_int16", in: -32767, want: -32768},
+       test_int16{fn: and_int16_Neg32768, fnname: "and_int16_Neg32768", in: -32767, want: -32768},
+       test_int16{fn: and_Neg32768_int16, fnname: "and_Neg32768_int16", in: -1, want: -32768},
+       test_int16{fn: and_int16_Neg32768, fnname: "and_int16_Neg32768", in: -1, want: -32768},
+       test_int16{fn: and_Neg32768_int16, fnname: "and_Neg32768_int16", in: 0, want: 0},
+       test_int16{fn: and_int16_Neg32768, fnname: "and_int16_Neg32768", in: 0, want: 0},
+       test_int16{fn: and_Neg32768_int16, fnname: "and_Neg32768_int16", in: 1, want: 0},
+       test_int16{fn: and_int16_Neg32768, fnname: "and_int16_Neg32768", in: 1, want: 0},
+       test_int16{fn: and_Neg32768_int16, fnname: "and_Neg32768_int16", in: 32766, want: 0},
+       test_int16{fn: and_int16_Neg32768, fnname: "and_int16_Neg32768", in: 32766, want: 0},
+       test_int16{fn: and_Neg32768_int16, fnname: "and_Neg32768_int16", in: 32767, want: 0},
+       test_int16{fn: and_int16_Neg32768, fnname: "and_int16_Neg32768", in: 32767, want: 0},
+       test_int16{fn: and_Neg32767_int16, fnname: "and_Neg32767_int16", in: -32768, want: -32768},
+       test_int16{fn: and_int16_Neg32767, fnname: "and_int16_Neg32767", in: -32768, want: -32768},
+       test_int16{fn: and_Neg32767_int16, fnname: "and_Neg32767_int16", in: -32767, want: -32767},
+       test_int16{fn: and_int16_Neg32767, fnname: "and_int16_Neg32767", in: -32767, want: -32767},
+       test_int16{fn: and_Neg32767_int16, fnname: "and_Neg32767_int16", in: -1, want: -32767},
+       test_int16{fn: and_int16_Neg32767, fnname: "and_int16_Neg32767", in: -1, want: -32767},
+       test_int16{fn: and_Neg32767_int16, fnname: "and_Neg32767_int16", in: 0, want: 0},
+       test_int16{fn: and_int16_Neg32767, fnname: "and_int16_Neg32767", in: 0, want: 0},
+       test_int16{fn: and_Neg32767_int16, fnname: "and_Neg32767_int16", in: 1, want: 1},
+       test_int16{fn: and_int16_Neg32767, fnname: "and_int16_Neg32767", in: 1, want: 1},
+       test_int16{fn: and_Neg32767_int16, fnname: "and_Neg32767_int16", in: 32766, want: 0},
+       test_int16{fn: and_int16_Neg32767, fnname: "and_int16_Neg32767", in: 32766, want: 0},
+       test_int16{fn: and_Neg32767_int16, fnname: "and_Neg32767_int16", in: 32767, want: 1},
+       test_int16{fn: and_int16_Neg32767, fnname: "and_int16_Neg32767", in: 32767, want: 1},
+       test_int16{fn: and_Neg1_int16, fnname: "and_Neg1_int16", in: -32768, want: -32768},
+       test_int16{fn: and_int16_Neg1, fnname: "and_int16_Neg1", in: -32768, want: -32768},
+       test_int16{fn: and_Neg1_int16, fnname: "and_Neg1_int16", in: -32767, want: -32767},
+       test_int16{fn: and_int16_Neg1, fnname: "and_int16_Neg1", in: -32767, want: -32767},
+       test_int16{fn: and_Neg1_int16, fnname: "and_Neg1_int16", in: -1, want: -1},
+       test_int16{fn: and_int16_Neg1, fnname: "and_int16_Neg1", in: -1, want: -1},
+       test_int16{fn: and_Neg1_int16, fnname: "and_Neg1_int16", in: 0, want: 0},
+       test_int16{fn: and_int16_Neg1, fnname: "and_int16_Neg1", in: 0, want: 0},
+       test_int16{fn: and_Neg1_int16, fnname: "and_Neg1_int16", in: 1, want: 1},
+       test_int16{fn: and_int16_Neg1, fnname: "and_int16_Neg1", in: 1, want: 1},
+       test_int16{fn: and_Neg1_int16, fnname: "and_Neg1_int16", in: 32766, want: 32766},
+       test_int16{fn: and_int16_Neg1, fnname: "and_int16_Neg1", in: 32766, want: 32766},
+       test_int16{fn: and_Neg1_int16, fnname: "and_Neg1_int16", in: 32767, want: 32767},
+       test_int16{fn: and_int16_Neg1, fnname: "and_int16_Neg1", in: 32767, want: 32767},
+       test_int16{fn: and_0_int16, fnname: "and_0_int16", in: -32768, want: 0},
+       test_int16{fn: and_int16_0, fnname: "and_int16_0", in: -32768, want: 0},
+       test_int16{fn: and_0_int16, fnname: "and_0_int16", in: -32767, want: 0},
+       test_int16{fn: and_int16_0, fnname: "and_int16_0", in: -32767, want: 0},
+       test_int16{fn: and_0_int16, fnname: "and_0_int16", in: -1, want: 0},
+       test_int16{fn: and_int16_0, fnname: "and_int16_0", in: -1, want: 0},
+       test_int16{fn: and_0_int16, fnname: "and_0_int16", in: 0, want: 0},
+       test_int16{fn: and_int16_0, fnname: "and_int16_0", in: 0, want: 0},
+       test_int16{fn: and_0_int16, fnname: "and_0_int16", in: 1, want: 0},
+       test_int16{fn: and_int16_0, fnname: "and_int16_0", in: 1, want: 0},
+       test_int16{fn: and_0_int16, fnname: "and_0_int16", in: 32766, want: 0},
+       test_int16{fn: and_int16_0, fnname: "and_int16_0", in: 32766, want: 0},
+       test_int16{fn: and_0_int16, fnname: "and_0_int16", in: 32767, want: 0},
+       test_int16{fn: and_int16_0, fnname: "and_int16_0", in: 32767, want: 0},
+       test_int16{fn: and_1_int16, fnname: "and_1_int16", in: -32768, want: 0},
+       test_int16{fn: and_int16_1, fnname: "and_int16_1", in: -32768, want: 0},
+       test_int16{fn: and_1_int16, fnname: "and_1_int16", in: -32767, want: 1},
+       test_int16{fn: and_int16_1, fnname: "and_int16_1", in: -32767, want: 1},
+       test_int16{fn: and_1_int16, fnname: "and_1_int16", in: -1, want: 1},
+       test_int16{fn: and_int16_1, fnname: "and_int16_1", in: -1, want: 1},
+       test_int16{fn: and_1_int16, fnname: "and_1_int16", in: 0, want: 0},
+       test_int16{fn: and_int16_1, fnname: "and_int16_1", in: 0, want: 0},
+       test_int16{fn: and_1_int16, fnname: "and_1_int16", in: 1, want: 1},
+       test_int16{fn: and_int16_1, fnname: "and_int16_1", in: 1, want: 1},
+       test_int16{fn: and_1_int16, fnname: "and_1_int16", in: 32766, want: 0},
+       test_int16{fn: and_int16_1, fnname: "and_int16_1", in: 32766, want: 0},
+       test_int16{fn: and_1_int16, fnname: "and_1_int16", in: 32767, want: 1},
+       test_int16{fn: and_int16_1, fnname: "and_int16_1", in: 32767, want: 1},
+       test_int16{fn: and_32766_int16, fnname: "and_32766_int16", in: -32768, want: 0},
+       test_int16{fn: and_int16_32766, fnname: "and_int16_32766", in: -32768, want: 0},
+       test_int16{fn: and_32766_int16, fnname: "and_32766_int16", in: -32767, want: 0},
+       test_int16{fn: and_int16_32766, fnname: "and_int16_32766", in: -32767, want: 0},
+       test_int16{fn: and_32766_int16, fnname: "and_32766_int16", in: -1, want: 32766},
+       test_int16{fn: and_int16_32766, fnname: "and_int16_32766", in: -1, want: 32766},
+       test_int16{fn: and_32766_int16, fnname: "and_32766_int16", in: 0, want: 0},
+       test_int16{fn: and_int16_32766, fnname: "and_int16_32766", in: 0, want: 0},
+       test_int16{fn: and_32766_int16, fnname: "and_32766_int16", in: 1, want: 0},
+       test_int16{fn: and_int16_32766, fnname: "and_int16_32766", in: 1, want: 0},
+       test_int16{fn: and_32766_int16, fnname: "and_32766_int16", in: 32766, want: 32766},
+       test_int16{fn: and_int16_32766, fnname: "and_int16_32766", in: 32766, want: 32766},
+       test_int16{fn: and_32766_int16, fnname: "and_32766_int16", in: 32767, want: 32766},
+       test_int16{fn: and_int16_32766, fnname: "and_int16_32766", in: 32767, want: 32766},
+       test_int16{fn: and_32767_int16, fnname: "and_32767_int16", in: -32768, want: 0},
+       test_int16{fn: and_int16_32767, fnname: "and_int16_32767", in: -32768, want: 0},
+       test_int16{fn: and_32767_int16, fnname: "and_32767_int16", in: -32767, want: 1},
+       test_int16{fn: and_int16_32767, fnname: "and_int16_32767", in: -32767, want: 1},
+       test_int16{fn: and_32767_int16, fnname: "and_32767_int16", in: -1, want: 32767},
+       test_int16{fn: and_int16_32767, fnname: "and_int16_32767", in: -1, want: 32767},
+       test_int16{fn: and_32767_int16, fnname: "and_32767_int16", in: 0, want: 0},
+       test_int16{fn: and_int16_32767, fnname: "and_int16_32767", in: 0, want: 0},
+       test_int16{fn: and_32767_int16, fnname: "and_32767_int16", in: 1, want: 1},
+       test_int16{fn: and_int16_32767, fnname: "and_int16_32767", in: 1, want: 1},
+       test_int16{fn: and_32767_int16, fnname: "and_32767_int16", in: 32766, want: 32766},
+       test_int16{fn: and_int16_32767, fnname: "and_int16_32767", in: 32766, want: 32766},
+       test_int16{fn: and_32767_int16, fnname: "and_32767_int16", in: 32767, want: 32767},
+       test_int16{fn: and_int16_32767, fnname: "and_int16_32767", in: 32767, want: 32767},
+       test_int16{fn: or_Neg32768_int16, fnname: "or_Neg32768_int16", in: -32768, want: -32768},
+       test_int16{fn: or_int16_Neg32768, fnname: "or_int16_Neg32768", in: -32768, want: -32768},
+       test_int16{fn: or_Neg32768_int16, fnname: "or_Neg32768_int16", in: -32767, want: -32767},
+       test_int16{fn: or_int16_Neg32768, fnname: "or_int16_Neg32768", in: -32767, want: -32767},
+       test_int16{fn: or_Neg32768_int16, fnname: "or_Neg32768_int16", in: -1, want: -1},
+       test_int16{fn: or_int16_Neg32768, fnname: "or_int16_Neg32768", in: -1, want: -1},
+       test_int16{fn: or_Neg32768_int16, fnname: "or_Neg32768_int16", in: 0, want: -32768},
+       test_int16{fn: or_int16_Neg32768, fnname: "or_int16_Neg32768", in: 0, want: -32768},
+       test_int16{fn: or_Neg32768_int16, fnname: "or_Neg32768_int16", in: 1, want: -32767},
+       test_int16{fn: or_int16_Neg32768, fnname: "or_int16_Neg32768", in: 1, want: -32767},
+       test_int16{fn: or_Neg32768_int16, fnname: "or_Neg32768_int16", in: 32766, want: -2},
+       test_int16{fn: or_int16_Neg32768, fnname: "or_int16_Neg32768", in: 32766, want: -2},
+       test_int16{fn: or_Neg32768_int16, fnname: "or_Neg32768_int16", in: 32767, want: -1},
+       test_int16{fn: or_int16_Neg32768, fnname: "or_int16_Neg32768", in: 32767, want: -1},
+       test_int16{fn: or_Neg32767_int16, fnname: "or_Neg32767_int16", in: -32768, want: -32767},
+       test_int16{fn: or_int16_Neg32767, fnname: "or_int16_Neg32767", in: -32768, want: -32767},
+       test_int16{fn: or_Neg32767_int16, fnname: "or_Neg32767_int16", in: -32767, want: -32767},
+       test_int16{fn: or_int16_Neg32767, fnname: "or_int16_Neg32767", in: -32767, want: -32767},
+       test_int16{fn: or_Neg32767_int16, fnname: "or_Neg32767_int16", in: -1, want: -1},
+       test_int16{fn: or_int16_Neg32767, fnname: "or_int16_Neg32767", in: -1, want: -1},
+       test_int16{fn: or_Neg32767_int16, fnname: "or_Neg32767_int16", in: 0, want: -32767},
+       test_int16{fn: or_int16_Neg32767, fnname: "or_int16_Neg32767", in: 0, want: -32767},
+       test_int16{fn: or_Neg32767_int16, fnname: "or_Neg32767_int16", in: 1, want: -32767},
+       test_int16{fn: or_int16_Neg32767, fnname: "or_int16_Neg32767", in: 1, want: -32767},
+       test_int16{fn: or_Neg32767_int16, fnname: "or_Neg32767_int16", in: 32766, want: -1},
+       test_int16{fn: or_int16_Neg32767, fnname: "or_int16_Neg32767", in: 32766, want: -1},
+       test_int16{fn: or_Neg32767_int16, fnname: "or_Neg32767_int16", in: 32767, want: -1},
+       test_int16{fn: or_int16_Neg32767, fnname: "or_int16_Neg32767", in: 32767, want: -1},
+       test_int16{fn: or_Neg1_int16, fnname: "or_Neg1_int16", in: -32768, want: -1},
+       test_int16{fn: or_int16_Neg1, fnname: "or_int16_Neg1", in: -32768, want: -1},
+       test_int16{fn: or_Neg1_int16, fnname: "or_Neg1_int16", in: -32767, want: -1},
+       test_int16{fn: or_int16_Neg1, fnname: "or_int16_Neg1", in: -32767, want: -1},
+       test_int16{fn: or_Neg1_int16, fnname: "or_Neg1_int16", in: -1, want: -1},
+       test_int16{fn: or_int16_Neg1, fnname: "or_int16_Neg1", in: -1, want: -1},
+       test_int16{fn: or_Neg1_int16, fnname: "or_Neg1_int16", in: 0, want: -1},
+       test_int16{fn: or_int16_Neg1, fnname: "or_int16_Neg1", in: 0, want: -1},
+       test_int16{fn: or_Neg1_int16, fnname: "or_Neg1_int16", in: 1, want: -1},
+       test_int16{fn: or_int16_Neg1, fnname: "or_int16_Neg1", in: 1, want: -1},
+       test_int16{fn: or_Neg1_int16, fnname: "or_Neg1_int16", in: 32766, want: -1},
+       test_int16{fn: or_int16_Neg1, fnname: "or_int16_Neg1", in: 32766, want: -1},
+       test_int16{fn: or_Neg1_int16, fnname: "or_Neg1_int16", in: 32767, want: -1},
+       test_int16{fn: or_int16_Neg1, fnname: "or_int16_Neg1", in: 32767, want: -1},
+       test_int16{fn: or_0_int16, fnname: "or_0_int16", in: -32768, want: -32768},
+       test_int16{fn: or_int16_0, fnname: "or_int16_0", in: -32768, want: -32768},
+       test_int16{fn: or_0_int16, fnname: "or_0_int16", in: -32767, want: -32767},
+       test_int16{fn: or_int16_0, fnname: "or_int16_0", in: -32767, want: -32767},
+       test_int16{fn: or_0_int16, fnname: "or_0_int16", in: -1, want: -1},
+       test_int16{fn: or_int16_0, fnname: "or_int16_0", in: -1, want: -1},
+       test_int16{fn: or_0_int16, fnname: "or_0_int16", in: 0, want: 0},
+       test_int16{fn: or_int16_0, fnname: "or_int16_0", in: 0, want: 0},
+       test_int16{fn: or_0_int16, fnname: "or_0_int16", in: 1, want: 1},
+       test_int16{fn: or_int16_0, fnname: "or_int16_0", in: 1, want: 1},
+       test_int16{fn: or_0_int16, fnname: "or_0_int16", in: 32766, want: 32766},
+       test_int16{fn: or_int16_0, fnname: "or_int16_0", in: 32766, want: 32766},
+       test_int16{fn: or_0_int16, fnname: "or_0_int16", in: 32767, want: 32767},
+       test_int16{fn: or_int16_0, fnname: "or_int16_0", in: 32767, want: 32767},
+       test_int16{fn: or_1_int16, fnname: "or_1_int16", in: -32768, want: -32767},
+       test_int16{fn: or_int16_1, fnname: "or_int16_1", in: -32768, want: -32767},
+       test_int16{fn: or_1_int16, fnname: "or_1_int16", in: -32767, want: -32767},
+       test_int16{fn: or_int16_1, fnname: "or_int16_1", in: -32767, want: -32767},
+       test_int16{fn: or_1_int16, fnname: "or_1_int16", in: -1, want: -1},
+       test_int16{fn: or_int16_1, fnname: "or_int16_1", in: -1, want: -1},
+       test_int16{fn: or_1_int16, fnname: "or_1_int16", in: 0, want: 1},
+       test_int16{fn: or_int16_1, fnname: "or_int16_1", in: 0, want: 1},
+       test_int16{fn: or_1_int16, fnname: "or_1_int16", in: 1, want: 1},
+       test_int16{fn: or_int16_1, fnname: "or_int16_1", in: 1, want: 1},
+       test_int16{fn: or_1_int16, fnname: "or_1_int16", in: 32766, want: 32767},
+       test_int16{fn: or_int16_1, fnname: "or_int16_1", in: 32766, want: 32767},
+       test_int16{fn: or_1_int16, fnname: "or_1_int16", in: 32767, want: 32767},
+       test_int16{fn: or_int16_1, fnname: "or_int16_1", in: 32767, want: 32767},
+       test_int16{fn: or_32766_int16, fnname: "or_32766_int16", in: -32768, want: -2},
+       test_int16{fn: or_int16_32766, fnname: "or_int16_32766", in: -32768, want: -2},
+       test_int16{fn: or_32766_int16, fnname: "or_32766_int16", in: -32767, want: -1},
+       test_int16{fn: or_int16_32766, fnname: "or_int16_32766", in: -32767, want: -1},
+       test_int16{fn: or_32766_int16, fnname: "or_32766_int16", in: -1, want: -1},
+       test_int16{fn: or_int16_32766, fnname: "or_int16_32766", in: -1, want: -1},
+       test_int16{fn: or_32766_int16, fnname: "or_32766_int16", in: 0, want: 32766},
+       test_int16{fn: or_int16_32766, fnname: "or_int16_32766", in: 0, want: 32766},
+       test_int16{fn: or_32766_int16, fnname: "or_32766_int16", in: 1, want: 32767},
+       test_int16{fn: or_int16_32766, fnname: "or_int16_32766", in: 1, want: 32767},
+       test_int16{fn: or_32766_int16, fnname: "or_32766_int16", in: 32766, want: 32766},
+       test_int16{fn: or_int16_32766, fnname: "or_int16_32766", in: 32766, want: 32766},
+       test_int16{fn: or_32766_int16, fnname: "or_32766_int16", in: 32767, want: 32767},
+       test_int16{fn: or_int16_32766, fnname: "or_int16_32766", in: 32767, want: 32767},
+       test_int16{fn: or_32767_int16, fnname: "or_32767_int16", in: -32768, want: -1},
+       test_int16{fn: or_int16_32767, fnname: "or_int16_32767", in: -32768, want: -1},
+       test_int16{fn: or_32767_int16, fnname: "or_32767_int16", in: -32767, want: -1},
+       test_int16{fn: or_int16_32767, fnname: "or_int16_32767", in: -32767, want: -1},
+       test_int16{fn: or_32767_int16, fnname: "or_32767_int16", in: -1, want: -1},
+       test_int16{fn: or_int16_32767, fnname: "or_int16_32767", in: -1, want: -1},
+       test_int16{fn: or_32767_int16, fnname: "or_32767_int16", in: 0, want: 32767},
+       test_int16{fn: or_int16_32767, fnname: "or_int16_32767", in: 0, want: 32767},
+       test_int16{fn: or_32767_int16, fnname: "or_32767_int16", in: 1, want: 32767},
+       test_int16{fn: or_int16_32767, fnname: "or_int16_32767", in: 1, want: 32767},
+       test_int16{fn: or_32767_int16, fnname: "or_32767_int16", in: 32766, want: 32767},
+       test_int16{fn: or_int16_32767, fnname: "or_int16_32767", in: 32766, want: 32767},
+       test_int16{fn: or_32767_int16, fnname: "or_32767_int16", in: 32767, want: 32767},
+       test_int16{fn: or_int16_32767, fnname: "or_int16_32767", in: 32767, want: 32767},
+       test_int16{fn: xor_Neg32768_int16, fnname: "xor_Neg32768_int16", in: -32768, want: 0},
+       test_int16{fn: xor_int16_Neg32768, fnname: "xor_int16_Neg32768", in: -32768, want: 0},
+       test_int16{fn: xor_Neg32768_int16, fnname: "xor_Neg32768_int16", in: -32767, want: 1},
+       test_int16{fn: xor_int16_Neg32768, fnname: "xor_int16_Neg32768", in: -32767, want: 1},
+       test_int16{fn: xor_Neg32768_int16, fnname: "xor_Neg32768_int16", in: -1, want: 32767},
+       test_int16{fn: xor_int16_Neg32768, fnname: "xor_int16_Neg32768", in: -1, want: 32767},
+       test_int16{fn: xor_Neg32768_int16, fnname: "xor_Neg32768_int16", in: 0, want: -32768},
+       test_int16{fn: xor_int16_Neg32768, fnname: "xor_int16_Neg32768", in: 0, want: -32768},
+       test_int16{fn: xor_Neg32768_int16, fnname: "xor_Neg32768_int16", in: 1, want: -32767},
+       test_int16{fn: xor_int16_Neg32768, fnname: "xor_int16_Neg32768", in: 1, want: -32767},
+       test_int16{fn: xor_Neg32768_int16, fnname: "xor_Neg32768_int16", in: 32766, want: -2},
+       test_int16{fn: xor_int16_Neg32768, fnname: "xor_int16_Neg32768", in: 32766, want: -2},
+       test_int16{fn: xor_Neg32768_int16, fnname: "xor_Neg32768_int16", in: 32767, want: -1},
+       test_int16{fn: xor_int16_Neg32768, fnname: "xor_int16_Neg32768", in: 32767, want: -1},
+       test_int16{fn: xor_Neg32767_int16, fnname: "xor_Neg32767_int16", in: -32768, want: 1},
+       test_int16{fn: xor_int16_Neg32767, fnname: "xor_int16_Neg32767", in: -32768, want: 1},
+       test_int16{fn: xor_Neg32767_int16, fnname: "xor_Neg32767_int16", in: -32767, want: 0},
+       test_int16{fn: xor_int16_Neg32767, fnname: "xor_int16_Neg32767", in: -32767, want: 0},
+       test_int16{fn: xor_Neg32767_int16, fnname: "xor_Neg32767_int16", in: -1, want: 32766},
+       test_int16{fn: xor_int16_Neg32767, fnname: "xor_int16_Neg32767", in: -1, want: 32766},
+       test_int16{fn: xor_Neg32767_int16, fnname: "xor_Neg32767_int16", in: 0, want: -32767},
+       test_int16{fn: xor_int16_Neg32767, fnname: "xor_int16_Neg32767", in: 0, want: -32767},
+       test_int16{fn: xor_Neg32767_int16, fnname: "xor_Neg32767_int16", in: 1, want: -32768},
+       test_int16{fn: xor_int16_Neg32767, fnname: "xor_int16_Neg32767", in: 1, want: -32768},
+       test_int16{fn: xor_Neg32767_int16, fnname: "xor_Neg32767_int16", in: 32766, want: -1},
+       test_int16{fn: xor_int16_Neg32767, fnname: "xor_int16_Neg32767", in: 32766, want: -1},
+       test_int16{fn: xor_Neg32767_int16, fnname: "xor_Neg32767_int16", in: 32767, want: -2},
+       test_int16{fn: xor_int16_Neg32767, fnname: "xor_int16_Neg32767", in: 32767, want: -2},
+       test_int16{fn: xor_Neg1_int16, fnname: "xor_Neg1_int16", in: -32768, want: 32767},
+       test_int16{fn: xor_int16_Neg1, fnname: "xor_int16_Neg1", in: -32768, want: 32767},
+       test_int16{fn: xor_Neg1_int16, fnname: "xor_Neg1_int16", in: -32767, want: 32766},
+       test_int16{fn: xor_int16_Neg1, fnname: "xor_int16_Neg1", in: -32767, want: 32766},
+       test_int16{fn: xor_Neg1_int16, fnname: "xor_Neg1_int16", in: -1, want: 0},
+       test_int16{fn: xor_int16_Neg1, fnname: "xor_int16_Neg1", in: -1, want: 0},
+       test_int16{fn: xor_Neg1_int16, fnname: "xor_Neg1_int16", in: 0, want: -1},
+       test_int16{fn: xor_int16_Neg1, fnname: "xor_int16_Neg1", in: 0, want: -1},
+       test_int16{fn: xor_Neg1_int16, fnname: "xor_Neg1_int16", in: 1, want: -2},
+       test_int16{fn: xor_int16_Neg1, fnname: "xor_int16_Neg1", in: 1, want: -2},
+       test_int16{fn: xor_Neg1_int16, fnname: "xor_Neg1_int16", in: 32766, want: -32767},
+       test_int16{fn: xor_int16_Neg1, fnname: "xor_int16_Neg1", in: 32766, want: -32767},
+       test_int16{fn: xor_Neg1_int16, fnname: "xor_Neg1_int16", in: 32767, want: -32768},
+       test_int16{fn: xor_int16_Neg1, fnname: "xor_int16_Neg1", in: 32767, want: -32768},
+       test_int16{fn: xor_0_int16, fnname: "xor_0_int16", in: -32768, want: -32768},
+       test_int16{fn: xor_int16_0, fnname: "xor_int16_0", in: -32768, want: -32768},
+       test_int16{fn: xor_0_int16, fnname: "xor_0_int16", in: -32767, want: -32767},
+       test_int16{fn: xor_int16_0, fnname: "xor_int16_0", in: -32767, want: -32767},
+       test_int16{fn: xor_0_int16, fnname: "xor_0_int16", in: -1, want: -1},
+       test_int16{fn: xor_int16_0, fnname: "xor_int16_0", in: -1, want: -1},
+       test_int16{fn: xor_0_int16, fnname: "xor_0_int16", in: 0, want: 0},
+       test_int16{fn: xor_int16_0, fnname: "xor_int16_0", in: 0, want: 0},
+       test_int16{fn: xor_0_int16, fnname: "xor_0_int16", in: 1, want: 1},
+       test_int16{fn: xor_int16_0, fnname: "xor_int16_0", in: 1, want: 1},
+       test_int16{fn: xor_0_int16, fnname: "xor_0_int16", in: 32766, want: 32766},
+       test_int16{fn: xor_int16_0, fnname: "xor_int16_0", in: 32766, want: 32766},
+       test_int16{fn: xor_0_int16, fnname: "xor_0_int16", in: 32767, want: 32767},
+       test_int16{fn: xor_int16_0, fnname: "xor_int16_0", in: 32767, want: 32767},
+       test_int16{fn: xor_1_int16, fnname: "xor_1_int16", in: -32768, want: -32767},
+       test_int16{fn: xor_int16_1, fnname: "xor_int16_1", in: -32768, want: -32767},
+       test_int16{fn: xor_1_int16, fnname: "xor_1_int16", in: -32767, want: -32768},
+       test_int16{fn: xor_int16_1, fnname: "xor_int16_1", in: -32767, want: -32768},
+       test_int16{fn: xor_1_int16, fnname: "xor_1_int16", in: -1, want: -2},
+       test_int16{fn: xor_int16_1, fnname: "xor_int16_1", in: -1, want: -2},
+       test_int16{fn: xor_1_int16, fnname: "xor_1_int16", in: 0, want: 1},
+       test_int16{fn: xor_int16_1, fnname: "xor_int16_1", in: 0, want: 1},
+       test_int16{fn: xor_1_int16, fnname: "xor_1_int16", in: 1, want: 0},
+       test_int16{fn: xor_int16_1, fnname: "xor_int16_1", in: 1, want: 0},
+       test_int16{fn: xor_1_int16, fnname: "xor_1_int16", in: 32766, want: 32767},
+       test_int16{fn: xor_int16_1, fnname: "xor_int16_1", in: 32766, want: 32767},
+       test_int16{fn: xor_1_int16, fnname: "xor_1_int16", in: 32767, want: 32766},
+       test_int16{fn: xor_int16_1, fnname: "xor_int16_1", in: 32767, want: 32766},
+       test_int16{fn: xor_32766_int16, fnname: "xor_32766_int16", in: -32768, want: -2},
+       test_int16{fn: xor_int16_32766, fnname: "xor_int16_32766", in: -32768, want: -2},
+       test_int16{fn: xor_32766_int16, fnname: "xor_32766_int16", in: -32767, want: -1},
+       test_int16{fn: xor_int16_32766, fnname: "xor_int16_32766", in: -32767, want: -1},
+       test_int16{fn: xor_32766_int16, fnname: "xor_32766_int16", in: -1, want: -32767},
+       test_int16{fn: xor_int16_32766, fnname: "xor_int16_32766", in: -1, want: -32767},
+       test_int16{fn: xor_32766_int16, fnname: "xor_32766_int16", in: 0, want: 32766},
+       test_int16{fn: xor_int16_32766, fnname: "xor_int16_32766", in: 0, want: 32766},
+       test_int16{fn: xor_32766_int16, fnname: "xor_32766_int16", in: 1, want: 32767},
+       test_int16{fn: xor_int16_32766, fnname: "xor_int16_32766", in: 1, want: 32767},
+       test_int16{fn: xor_32766_int16, fnname: "xor_32766_int16", in: 32766, want: 0},
+       test_int16{fn: xor_int16_32766, fnname: "xor_int16_32766", in: 32766, want: 0},
+       test_int16{fn: xor_32766_int16, fnname: "xor_32766_int16", in: 32767, want: 1},
+       test_int16{fn: xor_int16_32766, fnname: "xor_int16_32766", in: 32767, want: 1},
+       test_int16{fn: xor_32767_int16, fnname: "xor_32767_int16", in: -32768, want: -1},
+       test_int16{fn: xor_int16_32767, fnname: "xor_int16_32767", in: -32768, want: -1},
+       test_int16{fn: xor_32767_int16, fnname: "xor_32767_int16", in: -32767, want: -2},
+       test_int16{fn: xor_int16_32767, fnname: "xor_int16_32767", in: -32767, want: -2},
+       test_int16{fn: xor_32767_int16, fnname: "xor_32767_int16", in: -1, want: -32768},
+       test_int16{fn: xor_int16_32767, fnname: "xor_int16_32767", in: -1, want: -32768},
+       test_int16{fn: xor_32767_int16, fnname: "xor_32767_int16", in: 0, want: 32767},
+       test_int16{fn: xor_int16_32767, fnname: "xor_int16_32767", in: 0, want: 32767},
+       test_int16{fn: xor_32767_int16, fnname: "xor_32767_int16", in: 1, want: 32766},
+       test_int16{fn: xor_int16_32767, fnname: "xor_int16_32767", in: 1, want: 32766},
+       test_int16{fn: xor_32767_int16, fnname: "xor_32767_int16", in: 32766, want: 1},
+       test_int16{fn: xor_int16_32767, fnname: "xor_int16_32767", in: 32766, want: 1},
+       test_int16{fn: xor_32767_int16, fnname: "xor_32767_int16", in: 32767, want: 0},
+       test_int16{fn: xor_int16_32767, fnname: "xor_int16_32767", in: 32767, want: 0}}
+
+type test_uint8 struct {
+       fn     func(uint8) uint8
+       fnname string
+       in     uint8
+       want   uint8
+}
+
+var tests_uint8 = []test_uint8{
+
+       test_uint8{fn: add_0_uint8, fnname: "add_0_uint8", in: 0, want: 0},
+       test_uint8{fn: add_uint8_0, fnname: "add_uint8_0", in: 0, want: 0},
+       test_uint8{fn: add_0_uint8, fnname: "add_0_uint8", in: 1, want: 1},
+       test_uint8{fn: add_uint8_0, fnname: "add_uint8_0", in: 1, want: 1},
+       test_uint8{fn: add_0_uint8, fnname: "add_0_uint8", in: 255, want: 255},
+       test_uint8{fn: add_uint8_0, fnname: "add_uint8_0", in: 255, want: 255},
+       test_uint8{fn: add_1_uint8, fnname: "add_1_uint8", in: 0, want: 1},
+       test_uint8{fn: add_uint8_1, fnname: "add_uint8_1", in: 0, want: 1},
+       test_uint8{fn: add_1_uint8, fnname: "add_1_uint8", in: 1, want: 2},
+       test_uint8{fn: add_uint8_1, fnname: "add_uint8_1", in: 1, want: 2},
+       test_uint8{fn: add_1_uint8, fnname: "add_1_uint8", in: 255, want: 0},
+       test_uint8{fn: add_uint8_1, fnname: "add_uint8_1", in: 255, want: 0},
+       test_uint8{fn: add_255_uint8, fnname: "add_255_uint8", in: 0, want: 255},
+       test_uint8{fn: add_uint8_255, fnname: "add_uint8_255", in: 0, want: 255},
+       test_uint8{fn: add_255_uint8, fnname: "add_255_uint8", in: 1, want: 0},
+       test_uint8{fn: add_uint8_255, fnname: "add_uint8_255", in: 1, want: 0},
+       test_uint8{fn: add_255_uint8, fnname: "add_255_uint8", in: 255, want: 254},
+       test_uint8{fn: add_uint8_255, fnname: "add_uint8_255", in: 255, want: 254},
+       test_uint8{fn: sub_0_uint8, fnname: "sub_0_uint8", in: 0, want: 0},
+       test_uint8{fn: sub_uint8_0, fnname: "sub_uint8_0", in: 0, want: 0},
+       test_uint8{fn: sub_0_uint8, fnname: "sub_0_uint8", in: 1, want: 255},
+       test_uint8{fn: sub_uint8_0, fnname: "sub_uint8_0", in: 1, want: 1},
+       test_uint8{fn: sub_0_uint8, fnname: "sub_0_uint8", in: 255, want: 1},
+       test_uint8{fn: sub_uint8_0, fnname: "sub_uint8_0", in: 255, want: 255},
+       test_uint8{fn: sub_1_uint8, fnname: "sub_1_uint8", in: 0, want: 1},
+       test_uint8{fn: sub_uint8_1, fnname: "sub_uint8_1", in: 0, want: 255},
+       test_uint8{fn: sub_1_uint8, fnname: "sub_1_uint8", in: 1, want: 0},
+       test_uint8{fn: sub_uint8_1, fnname: "sub_uint8_1", in: 1, want: 0},
+       test_uint8{fn: sub_1_uint8, fnname: "sub_1_uint8", in: 255, want: 2},
+       test_uint8{fn: sub_uint8_1, fnname: "sub_uint8_1", in: 255, want: 254},
+       test_uint8{fn: sub_255_uint8, fnname: "sub_255_uint8", in: 0, want: 255},
+       test_uint8{fn: sub_uint8_255, fnname: "sub_uint8_255", in: 0, want: 1},
+       test_uint8{fn: sub_255_uint8, fnname: "sub_255_uint8", in: 1, want: 254},
+       test_uint8{fn: sub_uint8_255, fnname: "sub_uint8_255", in: 1, want: 2},
+       test_uint8{fn: sub_255_uint8, fnname: "sub_255_uint8", in: 255, want: 0},
+       test_uint8{fn: sub_uint8_255, fnname: "sub_uint8_255", in: 255, want: 0},
+       test_uint8{fn: div_0_uint8, fnname: "div_0_uint8", in: 1, want: 0},
+       test_uint8{fn: div_0_uint8, fnname: "div_0_uint8", in: 255, want: 0},
+       test_uint8{fn: div_uint8_1, fnname: "div_uint8_1", in: 0, want: 0},
+       test_uint8{fn: div_1_uint8, fnname: "div_1_uint8", in: 1, want: 1},
+       test_uint8{fn: div_uint8_1, fnname: "div_uint8_1", in: 1, want: 1},
+       test_uint8{fn: div_1_uint8, fnname: "div_1_uint8", in: 255, want: 0},
+       test_uint8{fn: div_uint8_1, fnname: "div_uint8_1", in: 255, want: 255},
+       test_uint8{fn: div_uint8_255, fnname: "div_uint8_255", in: 0, want: 0},
+       test_uint8{fn: div_255_uint8, fnname: "div_255_uint8", in: 1, want: 255},
+       test_uint8{fn: div_uint8_255, fnname: "div_uint8_255", in: 1, want: 0},
+       test_uint8{fn: div_255_uint8, fnname: "div_255_uint8", in: 255, want: 1},
+       test_uint8{fn: div_uint8_255, fnname: "div_uint8_255", in: 255, want: 1},
+       test_uint8{fn: mul_0_uint8, fnname: "mul_0_uint8", in: 0, want: 0},
+       test_uint8{fn: mul_uint8_0, fnname: "mul_uint8_0", in: 0, want: 0},
+       test_uint8{fn: mul_0_uint8, fnname: "mul_0_uint8", in: 1, want: 0},
+       test_uint8{fn: mul_uint8_0, fnname: "mul_uint8_0", in: 1, want: 0},
+       test_uint8{fn: mul_0_uint8, fnname: "mul_0_uint8", in: 255, want: 0},
+       test_uint8{fn: mul_uint8_0, fnname: "mul_uint8_0", in: 255, want: 0},
+       test_uint8{fn: mul_1_uint8, fnname: "mul_1_uint8", in: 0, want: 0},
+       test_uint8{fn: mul_uint8_1, fnname: "mul_uint8_1", in: 0, want: 0},
+       test_uint8{fn: mul_1_uint8, fnname: "mul_1_uint8", in: 1, want: 1},
+       test_uint8{fn: mul_uint8_1, fnname: "mul_uint8_1", in: 1, want: 1},
+       test_uint8{fn: mul_1_uint8, fnname: "mul_1_uint8", in: 255, want: 255},
+       test_uint8{fn: mul_uint8_1, fnname: "mul_uint8_1", in: 255, want: 255},
+       test_uint8{fn: mul_255_uint8, fnname: "mul_255_uint8", in: 0, want: 0},
+       test_uint8{fn: mul_uint8_255, fnname: "mul_uint8_255", in: 0, want: 0},
+       test_uint8{fn: mul_255_uint8, fnname: "mul_255_uint8", in: 1, want: 255},
+       test_uint8{fn: mul_uint8_255, fnname: "mul_uint8_255", in: 1, want: 255},
+       test_uint8{fn: mul_255_uint8, fnname: "mul_255_uint8", in: 255, want: 1},
+       test_uint8{fn: mul_uint8_255, fnname: "mul_uint8_255", in: 255, want: 1},
+       test_uint8{fn: lsh_0_uint8, fnname: "lsh_0_uint8", in: 0, want: 0},
+       test_uint8{fn: lsh_uint8_0, fnname: "lsh_uint8_0", in: 0, want: 0},
+       test_uint8{fn: lsh_0_uint8, fnname: "lsh_0_uint8", in: 1, want: 0},
+       test_uint8{fn: lsh_uint8_0, fnname: "lsh_uint8_0", in: 1, want: 1},
+       test_uint8{fn: lsh_0_uint8, fnname: "lsh_0_uint8", in: 255, want: 0},
+       test_uint8{fn: lsh_uint8_0, fnname: "lsh_uint8_0", in: 255, want: 255},
+       test_uint8{fn: lsh_1_uint8, fnname: "lsh_1_uint8", in: 0, want: 1},
+       test_uint8{fn: lsh_uint8_1, fnname: "lsh_uint8_1", in: 0, want: 0},
+       test_uint8{fn: lsh_1_uint8, fnname: "lsh_1_uint8", in: 1, want: 2},
+       test_uint8{fn: lsh_uint8_1, fnname: "lsh_uint8_1", in: 1, want: 2},
+       test_uint8{fn: lsh_1_uint8, fnname: "lsh_1_uint8", in: 255, want: 0},
+       test_uint8{fn: lsh_uint8_1, fnname: "lsh_uint8_1", in: 255, want: 254},
+       test_uint8{fn: lsh_255_uint8, fnname: "lsh_255_uint8", in: 0, want: 255},
+       test_uint8{fn: lsh_uint8_255, fnname: "lsh_uint8_255", in: 0, want: 0},
+       test_uint8{fn: lsh_255_uint8, fnname: "lsh_255_uint8", in: 1, want: 254},
+       test_uint8{fn: lsh_uint8_255, fnname: "lsh_uint8_255", in: 1, want: 0},
+       test_uint8{fn: lsh_255_uint8, fnname: "lsh_255_uint8", in: 255, want: 0},
+       test_uint8{fn: lsh_uint8_255, fnname: "lsh_uint8_255", in: 255, want: 0},
+       test_uint8{fn: rsh_0_uint8, fnname: "rsh_0_uint8", in: 0, want: 0},
+       test_uint8{fn: rsh_uint8_0, fnname: "rsh_uint8_0", in: 0, want: 0},
+       test_uint8{fn: rsh_0_uint8, fnname: "rsh_0_uint8", in: 1, want: 0},
+       test_uint8{fn: rsh_uint8_0, fnname: "rsh_uint8_0", in: 1, want: 1},
+       test_uint8{fn: rsh_0_uint8, fnname: "rsh_0_uint8", in: 255, want: 0},
+       test_uint8{fn: rsh_uint8_0, fnname: "rsh_uint8_0", in: 255, want: 255},
+       test_uint8{fn: rsh_1_uint8, fnname: "rsh_1_uint8", in: 0, want: 1},
+       test_uint8{fn: rsh_uint8_1, fnname: "rsh_uint8_1", in: 0, want: 0},
+       test_uint8{fn: rsh_1_uint8, fnname: "rsh_1_uint8", in: 1, want: 0},
+       test_uint8{fn: rsh_uint8_1, fnname: "rsh_uint8_1", in: 1, want: 0},
+       test_uint8{fn: rsh_1_uint8, fnname: "rsh_1_uint8", in: 255, want: 0},
+       test_uint8{fn: rsh_uint8_1, fnname: "rsh_uint8_1", in: 255, want: 127},
+       test_uint8{fn: rsh_255_uint8, fnname: "rsh_255_uint8", in: 0, want: 255},
+       test_uint8{fn: rsh_uint8_255, fnname: "rsh_uint8_255", in: 0, want: 0},
+       test_uint8{fn: rsh_255_uint8, fnname: "rsh_255_uint8", in: 1, want: 127},
+       test_uint8{fn: rsh_uint8_255, fnname: "rsh_uint8_255", in: 1, want: 0},
+       test_uint8{fn: rsh_255_uint8, fnname: "rsh_255_uint8", in: 255, want: 0},
+       test_uint8{fn: rsh_uint8_255, fnname: "rsh_uint8_255", in: 255, want: 0},
+       test_uint8{fn: mod_0_uint8, fnname: "mod_0_uint8", in: 1, want: 0},
+       test_uint8{fn: mod_0_uint8, fnname: "mod_0_uint8", in: 255, want: 0},
+       test_uint8{fn: mod_uint8_1, fnname: "mod_uint8_1", in: 0, want: 0},
+       test_uint8{fn: mod_1_uint8, fnname: "mod_1_uint8", in: 1, want: 0},
+       test_uint8{fn: mod_uint8_1, fnname: "mod_uint8_1", in: 1, want: 0},
+       test_uint8{fn: mod_1_uint8, fnname: "mod_1_uint8", in: 255, want: 1},
+       test_uint8{fn: mod_uint8_1, fnname: "mod_uint8_1", in: 255, want: 0},
+       test_uint8{fn: mod_uint8_255, fnname: "mod_uint8_255", in: 0, want: 0},
+       test_uint8{fn: mod_255_uint8, fnname: "mod_255_uint8", in: 1, want: 0},
+       test_uint8{fn: mod_uint8_255, fnname: "mod_uint8_255", in: 1, want: 1},
+       test_uint8{fn: mod_255_uint8, fnname: "mod_255_uint8", in: 255, want: 0},
+       test_uint8{fn: mod_uint8_255, fnname: "mod_uint8_255", in: 255, want: 0},
+       test_uint8{fn: and_0_uint8, fnname: "and_0_uint8", in: 0, want: 0},
+       test_uint8{fn: and_uint8_0, fnname: "and_uint8_0", in: 0, want: 0},
+       test_uint8{fn: and_0_uint8, fnname: "and_0_uint8", in: 1, want: 0},
+       test_uint8{fn: and_uint8_0, fnname: "and_uint8_0", in: 1, want: 0},
+       test_uint8{fn: and_0_uint8, fnname: "and_0_uint8", in: 255, want: 0},
+       test_uint8{fn: and_uint8_0, fnname: "and_uint8_0", in: 255, want: 0},
+       test_uint8{fn: and_1_uint8, fnname: "and_1_uint8", in: 0, want: 0},
+       test_uint8{fn: and_uint8_1, fnname: "and_uint8_1", in: 0, want: 0},
+       test_uint8{fn: and_1_uint8, fnname: "and_1_uint8", in: 1, want: 1},
+       test_uint8{fn: and_uint8_1, fnname: "and_uint8_1", in: 1, want: 1},
+       test_uint8{fn: and_1_uint8, fnname: "and_1_uint8", in: 255, want: 1},
+       test_uint8{fn: and_uint8_1, fnname: "and_uint8_1", in: 255, want: 1},
+       test_uint8{fn: and_255_uint8, fnname: "and_255_uint8", in: 0, want: 0},
+       test_uint8{fn: and_uint8_255, fnname: "and_uint8_255", in: 0, want: 0},
+       test_uint8{fn: and_255_uint8, fnname: "and_255_uint8", in: 1, want: 1},
+       test_uint8{fn: and_uint8_255, fnname: "and_uint8_255", in: 1, want: 1},
+       test_uint8{fn: and_255_uint8, fnname: "and_255_uint8", in: 255, want: 255},
+       test_uint8{fn: and_uint8_255, fnname: "and_uint8_255", in: 255, want: 255},
+       test_uint8{fn: or_0_uint8, fnname: "or_0_uint8", in: 0, want: 0},
+       test_uint8{fn: or_uint8_0, fnname: "or_uint8_0", in: 0, want: 0},
+       test_uint8{fn: or_0_uint8, fnname: "or_0_uint8", in: 1, want: 1},
+       test_uint8{fn: or_uint8_0, fnname: "or_uint8_0", in: 1, want: 1},
+       test_uint8{fn: or_0_uint8, fnname: "or_0_uint8", in: 255, want: 255},
+       test_uint8{fn: or_uint8_0, fnname: "or_uint8_0", in: 255, want: 255},
+       test_uint8{fn: or_1_uint8, fnname: "or_1_uint8", in: 0, want: 1},
+       test_uint8{fn: or_uint8_1, fnname: "or_uint8_1", in: 0, want: 1},
+       test_uint8{fn: or_1_uint8, fnname: "or_1_uint8", in: 1, want: 1},
+       test_uint8{fn: or_uint8_1, fnname: "or_uint8_1", in: 1, want: 1},
+       test_uint8{fn: or_1_uint8, fnname: "or_1_uint8", in: 255, want: 255},
+       test_uint8{fn: or_uint8_1, fnname: "or_uint8_1", in: 255, want: 255},
+       test_uint8{fn: or_255_uint8, fnname: "or_255_uint8", in: 0, want: 255},
+       test_uint8{fn: or_uint8_255, fnname: "or_uint8_255", in: 0, want: 255},
+       test_uint8{fn: or_255_uint8, fnname: "or_255_uint8", in: 1, want: 255},
+       test_uint8{fn: or_uint8_255, fnname: "or_uint8_255", in: 1, want: 255},
+       test_uint8{fn: or_255_uint8, fnname: "or_255_uint8", in: 255, want: 255},
+       test_uint8{fn: or_uint8_255, fnname: "or_uint8_255", in: 255, want: 255},
+       test_uint8{fn: xor_0_uint8, fnname: "xor_0_uint8", in: 0, want: 0},
+       test_uint8{fn: xor_uint8_0, fnname: "xor_uint8_0", in: 0, want: 0},
+       test_uint8{fn: xor_0_uint8, fnname: "xor_0_uint8", in: 1, want: 1},
+       test_uint8{fn: xor_uint8_0, fnname: "xor_uint8_0", in: 1, want: 1},
+       test_uint8{fn: xor_0_uint8, fnname: "xor_0_uint8", in: 255, want: 255},
+       test_uint8{fn: xor_uint8_0, fnname: "xor_uint8_0", in: 255, want: 255},
+       test_uint8{fn: xor_1_uint8, fnname: "xor_1_uint8", in: 0, want: 1},
+       test_uint8{fn: xor_uint8_1, fnname: "xor_uint8_1", in: 0, want: 1},
+       test_uint8{fn: xor_1_uint8, fnname: "xor_1_uint8", in: 1, want: 0},
+       test_uint8{fn: xor_uint8_1, fnname: "xor_uint8_1", in: 1, want: 0},
+       test_uint8{fn: xor_1_uint8, fnname: "xor_1_uint8", in: 255, want: 254},
+       test_uint8{fn: xor_uint8_1, fnname: "xor_uint8_1", in: 255, want: 254},
+       test_uint8{fn: xor_255_uint8, fnname: "xor_255_uint8", in: 0, want: 255},
+       test_uint8{fn: xor_uint8_255, fnname: "xor_uint8_255", in: 0, want: 255},
+       test_uint8{fn: xor_255_uint8, fnname: "xor_255_uint8", in: 1, want: 254},
+       test_uint8{fn: xor_uint8_255, fnname: "xor_uint8_255", in: 1, want: 254},
+       test_uint8{fn: xor_255_uint8, fnname: "xor_255_uint8", in: 255, want: 0},
+       test_uint8{fn: xor_uint8_255, fnname: "xor_uint8_255", in: 255, want: 0}}
+
+type test_int8 struct {
+       fn     func(int8) int8
+       fnname string
+       in     int8
+       want   int8
+}
+
+var tests_int8 = []test_int8{
+
+       test_int8{fn: add_Neg128_int8, fnname: "add_Neg128_int8", in: -128, want: 0},
+       test_int8{fn: add_int8_Neg128, fnname: "add_int8_Neg128", in: -128, want: 0},
+       test_int8{fn: add_Neg128_int8, fnname: "add_Neg128_int8", in: -127, want: 1},
+       test_int8{fn: add_int8_Neg128, fnname: "add_int8_Neg128", in: -127, want: 1},
+       test_int8{fn: add_Neg128_int8, fnname: "add_Neg128_int8", in: -1, want: 127},
+       test_int8{fn: add_int8_Neg128, fnname: "add_int8_Neg128", in: -1, want: 127},
+       test_int8{fn: add_Neg128_int8, fnname: "add_Neg128_int8", in: 0, want: -128},
+       test_int8{fn: add_int8_Neg128, fnname: "add_int8_Neg128", in: 0, want: -128},
+       test_int8{fn: add_Neg128_int8, fnname: "add_Neg128_int8", in: 1, want: -127},
+       test_int8{fn: add_int8_Neg128, fnname: "add_int8_Neg128", in: 1, want: -127},
+       test_int8{fn: add_Neg128_int8, fnname: "add_Neg128_int8", in: 126, want: -2},
+       test_int8{fn: add_int8_Neg128, fnname: "add_int8_Neg128", in: 126, want: -2},
+       test_int8{fn: add_Neg128_int8, fnname: "add_Neg128_int8", in: 127, want: -1},
+       test_int8{fn: add_int8_Neg128, fnname: "add_int8_Neg128", in: 127, want: -1},
+       test_int8{fn: add_Neg127_int8, fnname: "add_Neg127_int8", in: -128, want: 1},
+       test_int8{fn: add_int8_Neg127, fnname: "add_int8_Neg127", in: -128, want: 1},
+       test_int8{fn: add_Neg127_int8, fnname: "add_Neg127_int8", in: -127, want: 2},
+       test_int8{fn: add_int8_Neg127, fnname: "add_int8_Neg127", in: -127, want: 2},
+       test_int8{fn: add_Neg127_int8, fnname: "add_Neg127_int8", in: -1, want: -128},
+       test_int8{fn: add_int8_Neg127, fnname: "add_int8_Neg127", in: -1, want: -128},
+       test_int8{fn: add_Neg127_int8, fnname: "add_Neg127_int8", in: 0, want: -127},
+       test_int8{fn: add_int8_Neg127, fnname: "add_int8_Neg127", in: 0, want: -127},
+       test_int8{fn: add_Neg127_int8, fnname: "add_Neg127_int8", in: 1, want: -126},
+       test_int8{fn: add_int8_Neg127, fnname: "add_int8_Neg127", in: 1, want: -126},
+       test_int8{fn: add_Neg127_int8, fnname: "add_Neg127_int8", in: 126, want: -1},
+       test_int8{fn: add_int8_Neg127, fnname: "add_int8_Neg127", in: 126, want: -1},
+       test_int8{fn: add_Neg127_int8, fnname: "add_Neg127_int8", in: 127, want: 0},
+       test_int8{fn: add_int8_Neg127, fnname: "add_int8_Neg127", in: 127, want: 0},
+       test_int8{fn: add_Neg1_int8, fnname: "add_Neg1_int8", in: -128, want: 127},
+       test_int8{fn: add_int8_Neg1, fnname: "add_int8_Neg1", in: -128, want: 127},
+       test_int8{fn: add_Neg1_int8, fnname: "add_Neg1_int8", in: -127, want: -128},
+       test_int8{fn: add_int8_Neg1, fnname: "add_int8_Neg1", in: -127, want: -128},
+       test_int8{fn: add_Neg1_int8, fnname: "add_Neg1_int8", in: -1, want: -2},
+       test_int8{fn: add_int8_Neg1, fnname: "add_int8_Neg1", in: -1, want: -2},
+       test_int8{fn: add_Neg1_int8, fnname: "add_Neg1_int8", in: 0, want: -1},
+       test_int8{fn: add_int8_Neg1, fnname: "add_int8_Neg1", in: 0, want: -1},
+       test_int8{fn: add_Neg1_int8, fnname: "add_Neg1_int8", in: 1, want: 0},
+       test_int8{fn: add_int8_Neg1, fnname: "add_int8_Neg1", in: 1, want: 0},
+       test_int8{fn: add_Neg1_int8, fnname: "add_Neg1_int8", in: 126, want: 125},
+       test_int8{fn: add_int8_Neg1, fnname: "add_int8_Neg1", in: 126, want: 125},
+       test_int8{fn: add_Neg1_int8, fnname: "add_Neg1_int8", in: 127, want: 126},
+       test_int8{fn: add_int8_Neg1, fnname: "add_int8_Neg1", in: 127, want: 126},
+       test_int8{fn: add_0_int8, fnname: "add_0_int8", in: -128, want: -128},
+       test_int8{fn: add_int8_0, fnname: "add_int8_0", in: -128, want: -128},
+       test_int8{fn: add_0_int8, fnname: "add_0_int8", in: -127, want: -127},
+       test_int8{fn: add_int8_0, fnname: "add_int8_0", in: -127, want: -127},
+       test_int8{fn: add_0_int8, fnname: "add_0_int8", in: -1, want: -1},
+       test_int8{fn: add_int8_0, fnname: "add_int8_0", in: -1, want: -1},
+       test_int8{fn: add_0_int8, fnname: "add_0_int8", in: 0, want: 0},
+       test_int8{fn: add_int8_0, fnname: "add_int8_0", in: 0, want: 0},
+       test_int8{fn: add_0_int8, fnname: "add_0_int8", in: 1, want: 1},
+       test_int8{fn: add_int8_0, fnname: "add_int8_0", in: 1, want: 1},
+       test_int8{fn: add_0_int8, fnname: "add_0_int8", in: 126, want: 126},
+       test_int8{fn: add_int8_0, fnname: "add_int8_0", in: 126, want: 126},
+       test_int8{fn: add_0_int8, fnname: "add_0_int8", in: 127, want: 127},
+       test_int8{fn: add_int8_0, fnname: "add_int8_0", in: 127, want: 127},
+       test_int8{fn: add_1_int8, fnname: "add_1_int8", in: -128, want: -127},
+       test_int8{fn: add_int8_1, fnname: "add_int8_1", in: -128, want: -127},
+       test_int8{fn: add_1_int8, fnname: "add_1_int8", in: -127, want: -126},
+       test_int8{fn: add_int8_1, fnname: "add_int8_1", in: -127, want: -126},
+       test_int8{fn: add_1_int8, fnname: "add_1_int8", in: -1, want: 0},
+       test_int8{fn: add_int8_1, fnname: "add_int8_1", in: -1, want: 0},
+       test_int8{fn: add_1_int8, fnname: "add_1_int8", in: 0, want: 1},
+       test_int8{fn: add_int8_1, fnname: "add_int8_1", in: 0, want: 1},
+       test_int8{fn: add_1_int8, fnname: "add_1_int8", in: 1, want: 2},
+       test_int8{fn: add_int8_1, fnname: "add_int8_1", in: 1, want: 2},
+       test_int8{fn: add_1_int8, fnname: "add_1_int8", in: 126, want: 127},
+       test_int8{fn: add_int8_1, fnname: "add_int8_1", in: 126, want: 127},
+       test_int8{fn: add_1_int8, fnname: "add_1_int8", in: 127, want: -128},
+       test_int8{fn: add_int8_1, fnname: "add_int8_1", in: 127, want: -128},
+       test_int8{fn: add_126_int8, fnname: "add_126_int8", in: -128, want: -2},
+       test_int8{fn: add_int8_126, fnname: "add_int8_126", in: -128, want: -2},
+       test_int8{fn: add_126_int8, fnname: "add_126_int8", in: -127, want: -1},
+       test_int8{fn: add_int8_126, fnname: "add_int8_126", in: -127, want: -1},
+       test_int8{fn: add_126_int8, fnname: "add_126_int8", in: -1, want: 125},
+       test_int8{fn: add_int8_126, fnname: "add_int8_126", in: -1, want: 125},
+       test_int8{fn: add_126_int8, fnname: "add_126_int8", in: 0, want: 126},
+       test_int8{fn: add_int8_126, fnname: "add_int8_126", in: 0, want: 126},
+       test_int8{fn: add_126_int8, fnname: "add_126_int8", in: 1, want: 127},
+       test_int8{fn: add_int8_126, fnname: "add_int8_126", in: 1, want: 127},
+       test_int8{fn: add_126_int8, fnname: "add_126_int8", in: 126, want: -4},
+       test_int8{fn: add_int8_126, fnname: "add_int8_126", in: 126, want: -4},
+       test_int8{fn: add_126_int8, fnname: "add_126_int8", in: 127, want: -3},
+       test_int8{fn: add_int8_126, fnname: "add_int8_126", in: 127, want: -3},
+       test_int8{fn: add_127_int8, fnname: "add_127_int8", in: -128, want: -1},
+       test_int8{fn: add_int8_127, fnname: "add_int8_127", in: -128, want: -1},
+       test_int8{fn: add_127_int8, fnname: "add_127_int8", in: -127, want: 0},
+       test_int8{fn: add_int8_127, fnname: "add_int8_127", in: -127, want: 0},
+       test_int8{fn: add_127_int8, fnname: "add_127_int8", in: -1, want: 126},
+       test_int8{fn: add_int8_127, fnname: "add_int8_127", in: -1, want: 126},
+       test_int8{fn: add_127_int8, fnname: "add_127_int8", in: 0, want: 127},
+       test_int8{fn: add_int8_127, fnname: "add_int8_127", in: 0, want: 127},
+       test_int8{fn: add_127_int8, fnname: "add_127_int8", in: 1, want: -128},
+       test_int8{fn: add_int8_127, fnname: "add_int8_127", in: 1, want: -128},
+       test_int8{fn: add_127_int8, fnname: "add_127_int8", in: 126, want: -3},
+       test_int8{fn: add_int8_127, fnname: "add_int8_127", in: 126, want: -3},
+       test_int8{fn: add_127_int8, fnname: "add_127_int8", in: 127, want: -2},
+       test_int8{fn: add_int8_127, fnname: "add_int8_127", in: 127, want: -2},
+       test_int8{fn: sub_Neg128_int8, fnname: "sub_Neg128_int8", in: -128, want: 0},
+       test_int8{fn: sub_int8_Neg128, fnname: "sub_int8_Neg128", in: -128, want: 0},
+       test_int8{fn: sub_Neg128_int8, fnname: "sub_Neg128_int8", in: -127, want: -1},
+       test_int8{fn: sub_int8_Neg128, fnname: "sub_int8_Neg128", in: -127, want: 1},
+       test_int8{fn: sub_Neg128_int8, fnname: "sub_Neg128_int8", in: -1, want: -127},
+       test_int8{fn: sub_int8_Neg128, fnname: "sub_int8_Neg128", in: -1, want: 127},
+       test_int8{fn: sub_Neg128_int8, fnname: "sub_Neg128_int8", in: 0, want: -128},
+       test_int8{fn: sub_int8_Neg128, fnname: "sub_int8_Neg128", in: 0, want: -128},
+       test_int8{fn: sub_Neg128_int8, fnname: "sub_Neg128_int8", in: 1, want: 127},
+       test_int8{fn: sub_int8_Neg128, fnname: "sub_int8_Neg128", in: 1, want: -127},
+       test_int8{fn: sub_Neg128_int8, fnname: "sub_Neg128_int8", in: 126, want: 2},
+       test_int8{fn: sub_int8_Neg128, fnname: "sub_int8_Neg128", in: 126, want: -2},
+       test_int8{fn: sub_Neg128_int8, fnname: "sub_Neg128_int8", in: 127, want: 1},
+       test_int8{fn: sub_int8_Neg128, fnname: "sub_int8_Neg128", in: 127, want: -1},
+       test_int8{fn: sub_Neg127_int8, fnname: "sub_Neg127_int8", in: -128, want: 1},
+       test_int8{fn: sub_int8_Neg127, fnname: "sub_int8_Neg127", in: -128, want: -1},
+       test_int8{fn: sub_Neg127_int8, fnname: "sub_Neg127_int8", in: -127, want: 0},
+       test_int8{fn: sub_int8_Neg127, fnname: "sub_int8_Neg127", in: -127, want: 0},
+       test_int8{fn: sub_Neg127_int8, fnname: "sub_Neg127_int8", in: -1, want: -126},
+       test_int8{fn: sub_int8_Neg127, fnname: "sub_int8_Neg127", in: -1, want: 126},
+       test_int8{fn: sub_Neg127_int8, fnname: "sub_Neg127_int8", in: 0, want: -127},
+       test_int8{fn: sub_int8_Neg127, fnname: "sub_int8_Neg127", in: 0, want: 127},
+       test_int8{fn: sub_Neg127_int8, fnname: "sub_Neg127_int8", in: 1, want: -128},
+       test_int8{fn: sub_int8_Neg127, fnname: "sub_int8_Neg127", in: 1, want: -128},
+       test_int8{fn: sub_Neg127_int8, fnname: "sub_Neg127_int8", in: 126, want: 3},
+       test_int8{fn: sub_int8_Neg127, fnname: "sub_int8_Neg127", in: 126, want: -3},
+       test_int8{fn: sub_Neg127_int8, fnname: "sub_Neg127_int8", in: 127, want: 2},
+       test_int8{fn: sub_int8_Neg127, fnname: "sub_int8_Neg127", in: 127, want: -2},
+       test_int8{fn: sub_Neg1_int8, fnname: "sub_Neg1_int8", in: -128, want: 127},
+       test_int8{fn: sub_int8_Neg1, fnname: "sub_int8_Neg1", in: -128, want: -127},
+       test_int8{fn: sub_Neg1_int8, fnname: "sub_Neg1_int8", in: -127, want: 126},
+       test_int8{fn: sub_int8_Neg1, fnname: "sub_int8_Neg1", in: -127, want: -126},
+       test_int8{fn: sub_Neg1_int8, fnname: "sub_Neg1_int8", in: -1, want: 0},
+       test_int8{fn: sub_int8_Neg1, fnname: "sub_int8_Neg1", in: -1, want: 0},
+       test_int8{fn: sub_Neg1_int8, fnname: "sub_Neg1_int8", in: 0, want: -1},
+       test_int8{fn: sub_int8_Neg1, fnname: "sub_int8_Neg1", in: 0, want: 1},
+       test_int8{fn: sub_Neg1_int8, fnname: "sub_Neg1_int8", in: 1, want: -2},
+       test_int8{fn: sub_int8_Neg1, fnname: "sub_int8_Neg1", in: 1, want: 2},
+       test_int8{fn: sub_Neg1_int8, fnname: "sub_Neg1_int8", in: 126, want: -127},
+       test_int8{fn: sub_int8_Neg1, fnname: "sub_int8_Neg1", in: 126, want: 127},
+       test_int8{fn: sub_Neg1_int8, fnname: "sub_Neg1_int8", in: 127, want: -128},
+       test_int8{fn: sub_int8_Neg1, fnname: "sub_int8_Neg1", in: 127, want: -128},
+       test_int8{fn: sub_0_int8, fnname: "sub_0_int8", in: -128, want: -128},
+       test_int8{fn: sub_int8_0, fnname: "sub_int8_0", in: -128, want: -128},
+       test_int8{fn: sub_0_int8, fnname: "sub_0_int8", in: -127, want: 127},
+       test_int8{fn: sub_int8_0, fnname: "sub_int8_0", in: -127, want: -127},
+       test_int8{fn: sub_0_int8, fnname: "sub_0_int8", in: -1, want: 1},
+       test_int8{fn: sub_int8_0, fnname: "sub_int8_0", in: -1, want: -1},
+       test_int8{fn: sub_0_int8, fnname: "sub_0_int8", in: 0, want: 0},
+       test_int8{fn: sub_int8_0, fnname: "sub_int8_0", in: 0, want: 0},
+       test_int8{fn: sub_0_int8, fnname: "sub_0_int8", in: 1, want: -1},
+       test_int8{fn: sub_int8_0, fnname: "sub_int8_0", in: 1, want: 1},
+       test_int8{fn: sub_0_int8, fnname: "sub_0_int8", in: 126, want: -126},
+       test_int8{fn: sub_int8_0, fnname: "sub_int8_0", in: 126, want: 126},
+       test_int8{fn: sub_0_int8, fnname: "sub_0_int8", in: 127, want: -127},
+       test_int8{fn: sub_int8_0, fnname: "sub_int8_0", in: 127, want: 127},
+       test_int8{fn: sub_1_int8, fnname: "sub_1_int8", in: -128, want: -127},
+       test_int8{fn: sub_int8_1, fnname: "sub_int8_1", in: -128, want: 127},
+       test_int8{fn: sub_1_int8, fnname: "sub_1_int8", in: -127, want: -128},
+       test_int8{fn: sub_int8_1, fnname: "sub_int8_1", in: -127, want: -128},
+       test_int8{fn: sub_1_int8, fnname: "sub_1_int8", in: -1, want: 2},
+       test_int8{fn: sub_int8_1, fnname: "sub_int8_1", in: -1, want: -2},
+       test_int8{fn: sub_1_int8, fnname: "sub_1_int8", in: 0, want: 1},
+       test_int8{fn: sub_int8_1, fnname: "sub_int8_1", in: 0, want: -1},
+       test_int8{fn: sub_1_int8, fnname: "sub_1_int8", in: 1, want: 0},
+       test_int8{fn: sub_int8_1, fnname: "sub_int8_1", in: 1, want: 0},
+       test_int8{fn: sub_1_int8, fnname: "sub_1_int8", in: 126, want: -125},
+       test_int8{fn: sub_int8_1, fnname: "sub_int8_1", in: 126, want: 125},
+       test_int8{fn: sub_1_int8, fnname: "sub_1_int8", in: 127, want: -126},
+       test_int8{fn: sub_int8_1, fnname: "sub_int8_1", in: 127, want: 126},
+       test_int8{fn: sub_126_int8, fnname: "sub_126_int8", in: -128, want: -2},
+       test_int8{fn: sub_int8_126, fnname: "sub_int8_126", in: -128, want: 2},
+       test_int8{fn: sub_126_int8, fnname: "sub_126_int8", in: -127, want: -3},
+       test_int8{fn: sub_int8_126, fnname: "sub_int8_126", in: -127, want: 3},
+       test_int8{fn: sub_126_int8, fnname: "sub_126_int8", in: -1, want: 127},
+       test_int8{fn: sub_int8_126, fnname: "sub_int8_126", in: -1, want: -127},
+       test_int8{fn: sub_126_int8, fnname: "sub_126_int8", in: 0, want: 126},
+       test_int8{fn: sub_int8_126, fnname: "sub_int8_126", in: 0, want: -126},
+       test_int8{fn: sub_126_int8, fnname: "sub_126_int8", in: 1, want: 125},
+       test_int8{fn: sub_int8_126, fnname: "sub_int8_126", in: 1, want: -125},
+       test_int8{fn: sub_126_int8, fnname: "sub_126_int8", in: 126, want: 0},
+       test_int8{fn: sub_int8_126, fnname: "sub_int8_126", in: 126, want: 0},
+       test_int8{fn: sub_126_int8, fnname: "sub_126_int8", in: 127, want: -1},
+       test_int8{fn: sub_int8_126, fnname: "sub_int8_126", in: 127, want: 1},
+       test_int8{fn: sub_127_int8, fnname: "sub_127_int8", in: -128, want: -1},
+       test_int8{fn: sub_int8_127, fnname: "sub_int8_127", in: -128, want: 1},
+       test_int8{fn: sub_127_int8, fnname: "sub_127_int8", in: -127, want: -2},
+       test_int8{fn: sub_int8_127, fnname: "sub_int8_127", in: -127, want: 2},
+       test_int8{fn: sub_127_int8, fnname: "sub_127_int8", in: -1, want: -128},
+       test_int8{fn: sub_int8_127, fnname: "sub_int8_127", in: -1, want: -128},
+       test_int8{fn: sub_127_int8, fnname: "sub_127_int8", in: 0, want: 127},
+       test_int8{fn: sub_int8_127, fnname: "sub_int8_127", in: 0, want: -127},
+       test_int8{fn: sub_127_int8, fnname: "sub_127_int8", in: 1, want: 126},
+       test_int8{fn: sub_int8_127, fnname: "sub_int8_127", in: 1, want: -126},
+       test_int8{fn: sub_127_int8, fnname: "sub_127_int8", in: 126, want: 1},
+       test_int8{fn: sub_int8_127, fnname: "sub_int8_127", in: 126, want: -1},
+       test_int8{fn: sub_127_int8, fnname: "sub_127_int8", in: 127, want: 0},
+       test_int8{fn: sub_int8_127, fnname: "sub_int8_127", in: 127, want: 0},
+       test_int8{fn: div_Neg128_int8, fnname: "div_Neg128_int8", in: -128, want: 1},
+       test_int8{fn: div_int8_Neg128, fnname: "div_int8_Neg128", in: -128, want: 1},
+       test_int8{fn: div_Neg128_int8, fnname: "div_Neg128_int8", in: -127, want: 1},
+       test_int8{fn: div_int8_Neg128, fnname: "div_int8_Neg128", in: -127, want: 0},
+       test_int8{fn: div_Neg128_int8, fnname: "div_Neg128_int8", in: -1, want: -128},
+       test_int8{fn: div_int8_Neg128, fnname: "div_int8_Neg128", in: -1, want: 0},
+       test_int8{fn: div_int8_Neg128, fnname: "div_int8_Neg128", in: 0, want: 0},
+       test_int8{fn: div_Neg128_int8, fnname: "div_Neg128_int8", in: 1, want: -128},
+       test_int8{fn: div_int8_Neg128, fnname: "div_int8_Neg128", in: 1, want: 0},
+       test_int8{fn: div_Neg128_int8, fnname: "div_Neg128_int8", in: 126, want: -1},
+       test_int8{fn: div_int8_Neg128, fnname: "div_int8_Neg128", in: 126, want: 0},
+       test_int8{fn: div_Neg128_int8, fnname: "div_Neg128_int8", in: 127, want: -1},
+       test_int8{fn: div_int8_Neg128, fnname: "div_int8_Neg128", in: 127, want: 0},
+       test_int8{fn: div_Neg127_int8, fnname: "div_Neg127_int8", in: -128, want: 0},
+       test_int8{fn: div_int8_Neg127, fnname: "div_int8_Neg127", in: -128, want: 1},
+       test_int8{fn: div_Neg127_int8, fnname: "div_Neg127_int8", in: -127, want: 1},
+       test_int8{fn: div_int8_Neg127, fnname: "div_int8_Neg127", in: -127, want: 1},
+       test_int8{fn: div_Neg127_int8, fnname: "div_Neg127_int8", in: -1, want: 127},
+       test_int8{fn: div_int8_Neg127, fnname: "div_int8_Neg127", in: -1, want: 0},
+       test_int8{fn: div_int8_Neg127, fnname: "div_int8_Neg127", in: 0, want: 0},
+       test_int8{fn: div_Neg127_int8, fnname: "div_Neg127_int8", in: 1, want: -127},
+       test_int8{fn: div_int8_Neg127, fnname: "div_int8_Neg127", in: 1, want: 0},
+       test_int8{fn: div_Neg127_int8, fnname: "div_Neg127_int8", in: 126, want: -1},
+       test_int8{fn: div_int8_Neg127, fnname: "div_int8_Neg127", in: 126, want: 0},
+       test_int8{fn: div_Neg127_int8, fnname: "div_Neg127_int8", in: 127, want: -1},
+       test_int8{fn: div_int8_Neg127, fnname: "div_int8_Neg127", in: 127, want: -1},
+       test_int8{fn: div_Neg1_int8, fnname: "div_Neg1_int8", in: -128, want: 0},
+       test_int8{fn: div_int8_Neg1, fnname: "div_int8_Neg1", in: -128, want: -128},
+       test_int8{fn: div_Neg1_int8, fnname: "div_Neg1_int8", in: -127, want: 0},
+       test_int8{fn: div_int8_Neg1, fnname: "div_int8_Neg1", in: -127, want: 127},
+       test_int8{fn: div_Neg1_int8, fnname: "div_Neg1_int8", in: -1, want: 1},
+       test_int8{fn: div_int8_Neg1, fnname: "div_int8_Neg1", in: -1, want: 1},
+       test_int8{fn: div_int8_Neg1, fnname: "div_int8_Neg1", in: 0, want: 0},
+       test_int8{fn: div_Neg1_int8, fnname: "div_Neg1_int8", in: 1, want: -1},
+       test_int8{fn: div_int8_Neg1, fnname: "div_int8_Neg1", in: 1, want: -1},
+       test_int8{fn: div_Neg1_int8, fnname: "div_Neg1_int8", in: 126, want: 0},
+       test_int8{fn: div_int8_Neg1, fnname: "div_int8_Neg1", in: 126, want: -126},
+       test_int8{fn: div_Neg1_int8, fnname: "div_Neg1_int8", in: 127, want: 0},
+       test_int8{fn: div_int8_Neg1, fnname: "div_int8_Neg1", in: 127, want: -127},
+       test_int8{fn: div_0_int8, fnname: "div_0_int8", in: -128, want: 0},
+       test_int8{fn: div_0_int8, fnname: "div_0_int8", in: -127, want: 0},
+       test_int8{fn: div_0_int8, fnname: "div_0_int8", in: -1, want: 0},
+       test_int8{fn: div_0_int8, fnname: "div_0_int8", in: 1, want: 0},
+       test_int8{fn: div_0_int8, fnname: "div_0_int8", in: 126, want: 0},
+       test_int8{fn: div_0_int8, fnname: "div_0_int8", in: 127, want: 0},
+       test_int8{fn: div_1_int8, fnname: "div_1_int8", in: -128, want: 0},
+       test_int8{fn: div_int8_1, fnname: "div_int8_1", in: -128, want: -128},
+       test_int8{fn: div_1_int8, fnname: "div_1_int8", in: -127, want: 0},
+       test_int8{fn: div_int8_1, fnname: "div_int8_1", in: -127, want: -127},
+       test_int8{fn: div_1_int8, fnname: "div_1_int8", in: -1, want: -1},
+       test_int8{fn: div_int8_1, fnname: "div_int8_1", in: -1, want: -1},
+       test_int8{fn: div_int8_1, fnname: "div_int8_1", in: 0, want: 0},
+       test_int8{fn: div_1_int8, fnname: "div_1_int8", in: 1, want: 1},
+       test_int8{fn: div_int8_1, fnname: "div_int8_1", in: 1, want: 1},
+       test_int8{fn: div_1_int8, fnname: "div_1_int8", in: 126, want: 0},
+       test_int8{fn: div_int8_1, fnname: "div_int8_1", in: 126, want: 126},
+       test_int8{fn: div_1_int8, fnname: "div_1_int8", in: 127, want: 0},
+       test_int8{fn: div_int8_1, fnname: "div_int8_1", in: 127, want: 127},
+       test_int8{fn: div_126_int8, fnname: "div_126_int8", in: -128, want: 0},
+       test_int8{fn: div_int8_126, fnname: "div_int8_126", in: -128, want: -1},
+       test_int8{fn: div_126_int8, fnname: "div_126_int8", in: -127, want: 0},
+       test_int8{fn: div_int8_126, fnname: "div_int8_126", in: -127, want: -1},
+       test_int8{fn: div_126_int8, fnname: "div_126_int8", in: -1, want: -126},
+       test_int8{fn: div_int8_126, fnname: "div_int8_126", in: -1, want: 0},
+       test_int8{fn: div_int8_126, fnname: "div_int8_126", in: 0, want: 0},
+       test_int8{fn: div_126_int8, fnname: "div_126_int8", in: 1, want: 126},
+       test_int8{fn: div_int8_126, fnname: "div_int8_126", in: 1, want: 0},
+       test_int8{fn: div_126_int8, fnname: "div_126_int8", in: 126, want: 1},
+       test_int8{fn: div_int8_126, fnname: "div_int8_126", in: 126, want: 1},
+       test_int8{fn: div_126_int8, fnname: "div_126_int8", in: 127, want: 0},
+       test_int8{fn: div_int8_126, fnname: "div_int8_126", in: 127, want: 1},
+       test_int8{fn: div_127_int8, fnname: "div_127_int8", in: -128, want: 0},
+       test_int8{fn: div_int8_127, fnname: "div_int8_127", in: -128, want: -1},
+       test_int8{fn: div_127_int8, fnname: "div_127_int8", in: -127, want: -1},
+       test_int8{fn: div_int8_127, fnname: "div_int8_127", in: -127, want: -1},
+       test_int8{fn: div_127_int8, fnname: "div_127_int8", in: -1, want: -127},
+       test_int8{fn: div_int8_127, fnname: "div_int8_127", in: -1, want: 0},
+       test_int8{fn: div_int8_127, fnname: "div_int8_127", in: 0, want: 0},
+       test_int8{fn: div_127_int8, fnname: "div_127_int8", in: 1, want: 127},
+       test_int8{fn: div_int8_127, fnname: "div_int8_127", in: 1, want: 0},
+       test_int8{fn: div_127_int8, fnname: "div_127_int8", in: 126, want: 1},
+       test_int8{fn: div_int8_127, fnname: "div_int8_127", in: 126, want: 0},
+       test_int8{fn: div_127_int8, fnname: "div_127_int8", in: 127, want: 1},
+       test_int8{fn: div_int8_127, fnname: "div_int8_127", in: 127, want: 1},
+       test_int8{fn: mul_Neg128_int8, fnname: "mul_Neg128_int8", in: -128, want: 0},
+       test_int8{fn: mul_int8_Neg128, fnname: "mul_int8_Neg128", in: -128, want: 0},
+       test_int8{fn: mul_Neg128_int8, fnname: "mul_Neg128_int8", in: -127, want: -128},
+       test_int8{fn: mul_int8_Neg128, fnname: "mul_int8_Neg128", in: -127, want: -128},
+       test_int8{fn: mul_Neg128_int8, fnname: "mul_Neg128_int8", in: -1, want: -128},
+       test_int8{fn: mul_int8_Neg128, fnname: "mul_int8_Neg128", in: -1, want: -128},
+       test_int8{fn: mul_Neg128_int8, fnname: "mul_Neg128_int8", in: 0, want: 0},
+       test_int8{fn: mul_int8_Neg128, fnname: "mul_int8_Neg128", in: 0, want: 0},
+       test_int8{fn: mul_Neg128_int8, fnname: "mul_Neg128_int8", in: 1, want: -128},
+       test_int8{fn: mul_int8_Neg128, fnname: "mul_int8_Neg128", in: 1, want: -128},
+       test_int8{fn: mul_Neg128_int8, fnname: "mul_Neg128_int8", in: 126, want: 0},
+       test_int8{fn: mul_int8_Neg128, fnname: "mul_int8_Neg128", in: 126, want: 0},
+       test_int8{fn: mul_Neg128_int8, fnname: "mul_Neg128_int8", in: 127, want: -128},
+       test_int8{fn: mul_int8_Neg128, fnname: "mul_int8_Neg128", in: 127, want: -128},
+       test_int8{fn: mul_Neg127_int8, fnname: "mul_Neg127_int8", in: -128, want: -128},
+       test_int8{fn: mul_int8_Neg127, fnname: "mul_int8_Neg127", in: -128, want: -128},
+       test_int8{fn: mul_Neg127_int8, fnname: "mul_Neg127_int8", in: -127, want: 1},
+       test_int8{fn: mul_int8_Neg127, fnname: "mul_int8_Neg127", in: -127, want: 1},
+       test_int8{fn: mul_Neg127_int8, fnname: "mul_Neg127_int8", in: -1, want: 127},
+       test_int8{fn: mul_int8_Neg127, fnname: "mul_int8_Neg127", in: -1, want: 127},
+       test_int8{fn: mul_Neg127_int8, fnname: "mul_Neg127_int8", in: 0, want: 0},
+       test_int8{fn: mul_int8_Neg127, fnname: "mul_int8_Neg127", in: 0, want: 0},
+       test_int8{fn: mul_Neg127_int8, fnname: "mul_Neg127_int8", in: 1, want: -127},
+       test_int8{fn: mul_int8_Neg127, fnname: "mul_int8_Neg127", in: 1, want: -127},
+       test_int8{fn: mul_Neg127_int8, fnname: "mul_Neg127_int8", in: 126, want: 126},
+       test_int8{fn: mul_int8_Neg127, fnname: "mul_int8_Neg127", in: 126, want: 126},
+       test_int8{fn: mul_Neg127_int8, fnname: "mul_Neg127_int8", in: 127, want: -1},
+       test_int8{fn: mul_int8_Neg127, fnname: "mul_int8_Neg127", in: 127, want: -1},
+       test_int8{fn: mul_Neg1_int8, fnname: "mul_Neg1_int8", in: -128, want: -128},
+       test_int8{fn: mul_int8_Neg1, fnname: "mul_int8_Neg1", in: -128, want: -128},
+       test_int8{fn: mul_Neg1_int8, fnname: "mul_Neg1_int8", in: -127, want: 127},
+       test_int8{fn: mul_int8_Neg1, fnname: "mul_int8_Neg1", in: -127, want: 127},
+       test_int8{fn: mul_Neg1_int8, fnname: "mul_Neg1_int8", in: -1, want: 1},
+       test_int8{fn: mul_int8_Neg1, fnname: "mul_int8_Neg1", in: -1, want: 1},
+       test_int8{fn: mul_Neg1_int8, fnname: "mul_Neg1_int8", in: 0, want: 0},
+       test_int8{fn: mul_int8_Neg1, fnname: "mul_int8_Neg1", in: 0, want: 0},
+       test_int8{fn: mul_Neg1_int8, fnname: "mul_Neg1_int8", in: 1, want: -1},
+       test_int8{fn: mul_int8_Neg1, fnname: "mul_int8_Neg1", in: 1, want: -1},
+       test_int8{fn: mul_Neg1_int8, fnname: "mul_Neg1_int8", in: 126, want: -126},
+       test_int8{fn: mul_int8_Neg1, fnname: "mul_int8_Neg1", in: 126, want: -126},
+       test_int8{fn: mul_Neg1_int8, fnname: "mul_Neg1_int8", in: 127, want: -127},
+       test_int8{fn: mul_int8_Neg1, fnname: "mul_int8_Neg1", in: 127, want: -127},
+       test_int8{fn: mul_0_int8, fnname: "mul_0_int8", in: -128, want: 0},
+       test_int8{fn: mul_int8_0, fnname: "mul_int8_0", in: -128, want: 0},
+       test_int8{fn: mul_0_int8, fnname: "mul_0_int8", in: -127, want: 0},
+       test_int8{fn: mul_int8_0, fnname: "mul_int8_0", in: -127, want: 0},
+       test_int8{fn: mul_0_int8, fnname: "mul_0_int8", in: -1, want: 0},
+       test_int8{fn: mul_int8_0, fnname: "mul_int8_0", in: -1, want: 0},
+       test_int8{fn: mul_0_int8, fnname: "mul_0_int8", in: 0, want: 0},
+       test_int8{fn: mul_int8_0, fnname: "mul_int8_0", in: 0, want: 0},
+       test_int8{fn: mul_0_int8, fnname: "mul_0_int8", in: 1, want: 0},
+       test_int8{fn: mul_int8_0, fnname: "mul_int8_0", in: 1, want: 0},
+       test_int8{fn: mul_0_int8, fnname: "mul_0_int8", in: 126, want: 0},
+       test_int8{fn: mul_int8_0, fnname: "mul_int8_0", in: 126, want: 0},
+       test_int8{fn: mul_0_int8, fnname: "mul_0_int8", in: 127, want: 0},
+       test_int8{fn: mul_int8_0, fnname: "mul_int8_0", in: 127, want: 0},
+       test_int8{fn: mul_1_int8, fnname: "mul_1_int8", in: -128, want: -128},
+       test_int8{fn: mul_int8_1, fnname: "mul_int8_1", in: -128, want: -128},
+       test_int8{fn: mul_1_int8, fnname: "mul_1_int8", in: -127, want: -127},
+       test_int8{fn: mul_int8_1, fnname: "mul_int8_1", in: -127, want: -127},
+       test_int8{fn: mul_1_int8, fnname: "mul_1_int8", in: -1, want: -1},
+       test_int8{fn: mul_int8_1, fnname: "mul_int8_1", in: -1, want: -1},
+       test_int8{fn: mul_1_int8, fnname: "mul_1_int8", in: 0, want: 0},
+       test_int8{fn: mul_int8_1, fnname: "mul_int8_1", in: 0, want: 0},
+       test_int8{fn: mul_1_int8, fnname: "mul_1_int8", in: 1, want: 1},
+       test_int8{fn: mul_int8_1, fnname: "mul_int8_1", in: 1, want: 1},
+       test_int8{fn: mul_1_int8, fnname: "mul_1_int8", in: 126, want: 126},
+       test_int8{fn: mul_int8_1, fnname: "mul_int8_1", in: 126, want: 126},
+       test_int8{fn: mul_1_int8, fnname: "mul_1_int8", in: 127, want: 127},
+       test_int8{fn: mul_int8_1, fnname: "mul_int8_1", in: 127, want: 127},
+       test_int8{fn: mul_126_int8, fnname: "mul_126_int8", in: -128, want: 0},
+       test_int8{fn: mul_int8_126, fnname: "mul_int8_126", in: -128, want: 0},
+       test_int8{fn: mul_126_int8, fnname: "mul_126_int8", in: -127, want: 126},
+       test_int8{fn: mul_int8_126, fnname: "mul_int8_126", in: -127, want: 126},
+       test_int8{fn: mul_126_int8, fnname: "mul_126_int8", in: -1, want: -126},
+       test_int8{fn: mul_int8_126, fnname: "mul_int8_126", in: -1, want: -126},
+       test_int8{fn: mul_126_int8, fnname: "mul_126_int8", in: 0, want: 0},
+       test_int8{fn: mul_int8_126, fnname: "mul_int8_126", in: 0, want: 0},
+       test_int8{fn: mul_126_int8, fnname: "mul_126_int8", in: 1, want: 126},
+       test_int8{fn: mul_int8_126, fnname: "mul_int8_126", in: 1, want: 126},
+       test_int8{fn: mul_126_int8, fnname: "mul_126_int8", in: 126, want: 4},
+       test_int8{fn: mul_int8_126, fnname: "mul_int8_126", in: 126, want: 4},
+       test_int8{fn: mul_126_int8, fnname: "mul_126_int8", in: 127, want: -126},
+       test_int8{fn: mul_int8_126, fnname: "mul_int8_126", in: 127, want: -126},
+       test_int8{fn: mul_127_int8, fnname: "mul_127_int8", in: -128, want: -128},
+       test_int8{fn: mul_int8_127, fnname: "mul_int8_127", in: -128, want: -128},
+       test_int8{fn: mul_127_int8, fnname: "mul_127_int8", in: -127, want: -1},
+       test_int8{fn: mul_int8_127, fnname: "mul_int8_127", in: -127, want: -1},
+       test_int8{fn: mul_127_int8, fnname: "mul_127_int8", in: -1, want: -127},
+       test_int8{fn: mul_int8_127, fnname: "mul_int8_127", in: -1, want: -127},
+       test_int8{fn: mul_127_int8, fnname: "mul_127_int8", in: 0, want: 0},
+       test_int8{fn: mul_int8_127, fnname: "mul_int8_127", in: 0, want: 0},
+       test_int8{fn: mul_127_int8, fnname: "mul_127_int8", in: 1, want: 127},
+       test_int8{fn: mul_int8_127, fnname: "mul_int8_127", in: 1, want: 127},
+       test_int8{fn: mul_127_int8, fnname: "mul_127_int8", in: 126, want: -126},
+       test_int8{fn: mul_int8_127, fnname: "mul_int8_127", in: 126, want: -126},
+       test_int8{fn: mul_127_int8, fnname: "mul_127_int8", in: 127, want: 1},
+       test_int8{fn: mul_int8_127, fnname: "mul_int8_127", in: 127, want: 1},
+       test_int8{fn: mod_Neg128_int8, fnname: "mod_Neg128_int8", in: -128, want: 0},
+       test_int8{fn: mod_int8_Neg128, fnname: "mod_int8_Neg128", in: -128, want: 0},
+       test_int8{fn: mod_Neg128_int8, fnname: "mod_Neg128_int8", in: -127, want: -1},
+       test_int8{fn: mod_int8_Neg128, fnname: "mod_int8_Neg128", in: -127, want: -127},
+       test_int8{fn: mod_Neg128_int8, fnname: "mod_Neg128_int8", in: -1, want: 0},
+       test_int8{fn: mod_int8_Neg128, fnname: "mod_int8_Neg128", in: -1, want: -1},
+       test_int8{fn: mod_int8_Neg128, fnname: "mod_int8_Neg128", in: 0, want: 0},
+       test_int8{fn: mod_Neg128_int8, fnname: "mod_Neg128_int8", in: 1, want: 0},
+       test_int8{fn: mod_int8_Neg128, fnname: "mod_int8_Neg128", in: 1, want: 1},
+       test_int8{fn: mod_Neg128_int8, fnname: "mod_Neg128_int8", in: 126, want: -2},
+       test_int8{fn: mod_int8_Neg128, fnname: "mod_int8_Neg128", in: 126, want: 126},
+       test_int8{fn: mod_Neg128_int8, fnname: "mod_Neg128_int8", in: 127, want: -1},
+       test_int8{fn: mod_int8_Neg128, fnname: "mod_int8_Neg128", in: 127, want: 127},
+       test_int8{fn: mod_Neg127_int8, fnname: "mod_Neg127_int8", in: -128, want: -127},
+       test_int8{fn: mod_int8_Neg127, fnname: "mod_int8_Neg127", in: -128, want: -1},
+       test_int8{fn: mod_Neg127_int8, fnname: "mod_Neg127_int8", in: -127, want: 0},
+       test_int8{fn: mod_int8_Neg127, fnname: "mod_int8_Neg127", in: -127, want: 0},
+       test_int8{fn: mod_Neg127_int8, fnname: "mod_Neg127_int8", in: -1, want: 0},
+       test_int8{fn: mod_int8_Neg127, fnname: "mod_int8_Neg127", in: -1, want: -1},
+       test_int8{fn: mod_int8_Neg127, fnname: "mod_int8_Neg127", in: 0, want: 0},
+       test_int8{fn: mod_Neg127_int8, fnname: "mod_Neg127_int8", in: 1, want: 0},
+       test_int8{fn: mod_int8_Neg127, fnname: "mod_int8_Neg127", in: 1, want: 1},
+       test_int8{fn: mod_Neg127_int8, fnname: "mod_Neg127_int8", in: 126, want: -1},
+       test_int8{fn: mod_int8_Neg127, fnname: "mod_int8_Neg127", in: 126, want: 126},
+       test_int8{fn: mod_Neg127_int8, fnname: "mod_Neg127_int8", in: 127, want: 0},
+       test_int8{fn: mod_int8_Neg127, fnname: "mod_int8_Neg127", in: 127, want: 0},
+       test_int8{fn: mod_Neg1_int8, fnname: "mod_Neg1_int8", in: -128, want: -1},
+       test_int8{fn: mod_int8_Neg1, fnname: "mod_int8_Neg1", in: -128, want: 0},
+       test_int8{fn: mod_Neg1_int8, fnname: "mod_Neg1_int8", in: -127, want: -1},
+       test_int8{fn: mod_int8_Neg1, fnname: "mod_int8_Neg1", in: -127, want: 0},
+       test_int8{fn: mod_Neg1_int8, fnname: "mod_Neg1_int8", in: -1, want: 0},
+       test_int8{fn: mod_int8_Neg1, fnname: "mod_int8_Neg1", in: -1, want: 0},
+       test_int8{fn: mod_int8_Neg1, fnname: "mod_int8_Neg1", in: 0, want: 0},
+       test_int8{fn: mod_Neg1_int8, fnname: "mod_Neg1_int8", in: 1, want: 0},
+       test_int8{fn: mod_int8_Neg1, fnname: "mod_int8_Neg1", in: 1, want: 0},
+       test_int8{fn: mod_Neg1_int8, fnname: "mod_Neg1_int8", in: 126, want: -1},
+       test_int8{fn: mod_int8_Neg1, fnname: "mod_int8_Neg1", in: 126, want: 0},
+       test_int8{fn: mod_Neg1_int8, fnname: "mod_Neg1_int8", in: 127, want: -1},
+       test_int8{fn: mod_int8_Neg1, fnname: "mod_int8_Neg1", in: 127, want: 0},
+       test_int8{fn: mod_0_int8, fnname: "mod_0_int8", in: -128, want: 0},
+       test_int8{fn: mod_0_int8, fnname: "mod_0_int8", in: -127, want: 0},
+       test_int8{fn: mod_0_int8, fnname: "mod_0_int8", in: -1, want: 0},
+       test_int8{fn: mod_0_int8, fnname: "mod_0_int8", in: 1, want: 0},
+       test_int8{fn: mod_0_int8, fnname: "mod_0_int8", in: 126, want: 0},
+       test_int8{fn: mod_0_int8, fnname: "mod_0_int8", in: 127, want: 0},
+       test_int8{fn: mod_1_int8, fnname: "mod_1_int8", in: -128, want: 1},
+       test_int8{fn: mod_int8_1, fnname: "mod_int8_1", in: -128, want: 0},
+       test_int8{fn: mod_1_int8, fnname: "mod_1_int8", in: -127, want: 1},
+       test_int8{fn: mod_int8_1, fnname: "mod_int8_1", in: -127, want: 0},
+       test_int8{fn: mod_1_int8, fnname: "mod_1_int8", in: -1, want: 0},
+       test_int8{fn: mod_int8_1, fnname: "mod_int8_1", in: -1, want: 0},
+       test_int8{fn: mod_int8_1, fnname: "mod_int8_1", in: 0, want: 0},
+       test_int8{fn: mod_1_int8, fnname: "mod_1_int8", in: 1, want: 0},
+       test_int8{fn: mod_int8_1, fnname: "mod_int8_1", in: 1, want: 0},
+       test_int8{fn: mod_1_int8, fnname: "mod_1_int8", in: 126, want: 1},
+       test_int8{fn: mod_int8_1, fnname: "mod_int8_1", in: 126, want: 0},
+       test_int8{fn: mod_1_int8, fnname: "mod_1_int8", in: 127, want: 1},
+       test_int8{fn: mod_int8_1, fnname: "mod_int8_1", in: 127, want: 0},
+       test_int8{fn: mod_126_int8, fnname: "mod_126_int8", in: -128, want: 126},
+       test_int8{fn: mod_int8_126, fnname: "mod_int8_126", in: -128, want: -2},
+       test_int8{fn: mod_126_int8, fnname: "mod_126_int8", in: -127, want: 126},
+       test_int8{fn: mod_int8_126, fnname: "mod_int8_126", in: -127, want: -1},
+       test_int8{fn: mod_126_int8, fnname: "mod_126_int8", in: -1, want: 0},
+       test_int8{fn: mod_int8_126, fnname: "mod_int8_126", in: -1, want: -1},
+       test_int8{fn: mod_int8_126, fnname: "mod_int8_126", in: 0, want: 0},
+       test_int8{fn: mod_126_int8, fnname: "mod_126_int8", in: 1, want: 0},
+       test_int8{fn: mod_int8_126, fnname: "mod_int8_126", in: 1, want: 1},
+       test_int8{fn: mod_126_int8, fnname: "mod_126_int8", in: 126, want: 0},
+       test_int8{fn: mod_int8_126, fnname: "mod_int8_126", in: 126, want: 0},
+       test_int8{fn: mod_126_int8, fnname: "mod_126_int8", in: 127, want: 126},
+       test_int8{fn: mod_int8_126, fnname: "mod_int8_126", in: 127, want: 1},
+       test_int8{fn: mod_127_int8, fnname: "mod_127_int8", in: -128, want: 127},
+       test_int8{fn: mod_int8_127, fnname: "mod_int8_127", in: -128, want: -1},
+       test_int8{fn: mod_127_int8, fnname: "mod_127_int8", in: -127, want: 0},
+       test_int8{fn: mod_int8_127, fnname: "mod_int8_127", in: -127, want: 0},
+       test_int8{fn: mod_127_int8, fnname: "mod_127_int8", in: -1, want: 0},
+       test_int8{fn: mod_int8_127, fnname: "mod_int8_127", in: -1, want: -1},
+       test_int8{fn: mod_int8_127, fnname: "mod_int8_127", in: 0, want: 0},
+       test_int8{fn: mod_127_int8, fnname: "mod_127_int8", in: 1, want: 0},
+       test_int8{fn: mod_int8_127, fnname: "mod_int8_127", in: 1, want: 1},
+       test_int8{fn: mod_127_int8, fnname: "mod_127_int8", in: 126, want: 1},
+       test_int8{fn: mod_int8_127, fnname: "mod_int8_127", in: 126, want: 126},
+       test_int8{fn: mod_127_int8, fnname: "mod_127_int8", in: 127, want: 0},
+       test_int8{fn: mod_int8_127, fnname: "mod_int8_127", in: 127, want: 0},
+       test_int8{fn: and_Neg128_int8, fnname: "and_Neg128_int8", in: -128, want: -128},
+       test_int8{fn: and_int8_Neg128, fnname: "and_int8_Neg128", in: -128, want: -128},
+       test_int8{fn: and_Neg128_int8, fnname: "and_Neg128_int8", in: -127, want: -128},
+       test_int8{fn: and_int8_Neg128, fnname: "and_int8_Neg128", in: -127, want: -128},
+       test_int8{fn: and_Neg128_int8, fnname: "and_Neg128_int8", in: -1, want: -128},
+       test_int8{fn: and_int8_Neg128, fnname: "and_int8_Neg128", in: -1, want: -128},
+       test_int8{fn: and_Neg128_int8, fnname: "and_Neg128_int8", in: 0, want: 0},
+       test_int8{fn: and_int8_Neg128, fnname: "and_int8_Neg128", in: 0, want: 0},
+       test_int8{fn: and_Neg128_int8, fnname: "and_Neg128_int8", in: 1, want: 0},
+       test_int8{fn: and_int8_Neg128, fnname: "and_int8_Neg128", in: 1, want: 0},
+       test_int8{fn: and_Neg128_int8, fnname: "and_Neg128_int8", in: 126, want: 0},
+       test_int8{fn: and_int8_Neg128, fnname: "and_int8_Neg128", in: 126, want: 0},
+       test_int8{fn: and_Neg128_int8, fnname: "and_Neg128_int8", in: 127, want: 0},
+       test_int8{fn: and_int8_Neg128, fnname: "and_int8_Neg128", in: 127, want: 0},
+       test_int8{fn: and_Neg127_int8, fnname: "and_Neg127_int8", in: -128, want: -128},
+       test_int8{fn: and_int8_Neg127, fnname: "and_int8_Neg127", in: -128, want: -128},
+       test_int8{fn: and_Neg127_int8, fnname: "and_Neg127_int8", in: -127, want: -127},
+       test_int8{fn: and_int8_Neg127, fnname: "and_int8_Neg127", in: -127, want: -127},
+       test_int8{fn: and_Neg127_int8, fnname: "and_Neg127_int8", in: -1, want: -127},
+       test_int8{fn: and_int8_Neg127, fnname: "and_int8_Neg127", in: -1, want: -127},
+       test_int8{fn: and_Neg127_int8, fnname: "and_Neg127_int8", in: 0, want: 0},
+       test_int8{fn: and_int8_Neg127, fnname: "and_int8_Neg127", in: 0, want: 0},
+       test_int8{fn: and_Neg127_int8, fnname: "and_Neg127_int8", in: 1, want: 1},
+       test_int8{fn: and_int8_Neg127, fnname: "and_int8_Neg127", in: 1, want: 1},
+       test_int8{fn: and_Neg127_int8, fnname: "and_Neg127_int8", in: 126, want: 0},
+       test_int8{fn: and_int8_Neg127, fnname: "and_int8_Neg127", in: 126, want: 0},
+       test_int8{fn: and_Neg127_int8, fnname: "and_Neg127_int8", in: 127, want: 1},
+       test_int8{fn: and_int8_Neg127, fnname: "and_int8_Neg127", in: 127, want: 1},
+       test_int8{fn: and_Neg1_int8, fnname: "and_Neg1_int8", in: -128, want: -128},
+       test_int8{fn: and_int8_Neg1, fnname: "and_int8_Neg1", in: -128, want: -128},
+       test_int8{fn: and_Neg1_int8, fnname: "and_Neg1_int8", in: -127, want: -127},
+       test_int8{fn: and_int8_Neg1, fnname: "and_int8_Neg1", in: -127, want: -127},
+       test_int8{fn: and_Neg1_int8, fnname: "and_Neg1_int8", in: -1, want: -1},
+       test_int8{fn: and_int8_Neg1, fnname: "and_int8_Neg1", in: -1, want: -1},
+       test_int8{fn: and_Neg1_int8, fnname: "and_Neg1_int8", in: 0, want: 0},
+       test_int8{fn: and_int8_Neg1, fnname: "and_int8_Neg1", in: 0, want: 0},
+       test_int8{fn: and_Neg1_int8, fnname: "and_Neg1_int8", in: 1, want: 1},
+       test_int8{fn: and_int8_Neg1, fnname: "and_int8_Neg1", in: 1, want: 1},
+       test_int8{fn: and_Neg1_int8, fnname: "and_Neg1_int8", in: 126, want: 126},
+       test_int8{fn: and_int8_Neg1, fnname: "and_int8_Neg1", in: 126, want: 126},
+       test_int8{fn: and_Neg1_int8, fnname: "and_Neg1_int8", in: 127, want: 127},
+       test_int8{fn: and_int8_Neg1, fnname: "and_int8_Neg1", in: 127, want: 127},
+       test_int8{fn: and_0_int8, fnname: "and_0_int8", in: -128, want: 0},
+       test_int8{fn: and_int8_0, fnname: "and_int8_0", in: -128, want: 0},
+       test_int8{fn: and_0_int8, fnname: "and_0_int8", in: -127, want: 0},
+       test_int8{fn: and_int8_0, fnname: "and_int8_0", in: -127, want: 0},
+       test_int8{fn: and_0_int8, fnname: "and_0_int8", in: -1, want: 0},
+       test_int8{fn: and_int8_0, fnname: "and_int8_0", in: -1, want: 0},
+       test_int8{fn: and_0_int8, fnname: "and_0_int8", in: 0, want: 0},
+       test_int8{fn: and_int8_0, fnname: "and_int8_0", in: 0, want: 0},
+       test_int8{fn: and_0_int8, fnname: "and_0_int8", in: 1, want: 0},
+       test_int8{fn: and_int8_0, fnname: "and_int8_0", in: 1, want: 0},
+       test_int8{fn: and_0_int8, fnname: "and_0_int8", in: 126, want: 0},
+       test_int8{fn: and_int8_0, fnname: "and_int8_0", in: 126, want: 0},
+       test_int8{fn: and_0_int8, fnname: "and_0_int8", in: 127, want: 0},
+       test_int8{fn: and_int8_0, fnname: "and_int8_0", in: 127, want: 0},
+       test_int8{fn: and_1_int8, fnname: "and_1_int8", in: -128, want: 0},
+       test_int8{fn: and_int8_1, fnname: "and_int8_1", in: -128, want: 0},
+       test_int8{fn: and_1_int8, fnname: "and_1_int8", in: -127, want: 1},
+       test_int8{fn: and_int8_1, fnname: "and_int8_1", in: -127, want: 1},
+       test_int8{fn: and_1_int8, fnname: "and_1_int8", in: -1, want: 1},
+       test_int8{fn: and_int8_1, fnname: "and_int8_1", in: -1, want: 1},
+       test_int8{fn: and_1_int8, fnname: "and_1_int8", in: 0, want: 0},
+       test_int8{fn: and_int8_1, fnname: "and_int8_1", in: 0, want: 0},
+       test_int8{fn: and_1_int8, fnname: "and_1_int8", in: 1, want: 1},
+       test_int8{fn: and_int8_1, fnname: "and_int8_1", in: 1, want: 1},
+       test_int8{fn: and_1_int8, fnname: "and_1_int8", in: 126, want: 0},
+       test_int8{fn: and_int8_1, fnname: "and_int8_1", in: 126, want: 0},
+       test_int8{fn: and_1_int8, fnname: "and_1_int8", in: 127, want: 1},
+       test_int8{fn: and_int8_1, fnname: "and_int8_1", in: 127, want: 1},
+       test_int8{fn: and_126_int8, fnname: "and_126_int8", in: -128, want: 0},
+       test_int8{fn: and_int8_126, fnname: "and_int8_126", in: -128, want: 0},
+       test_int8{fn: and_126_int8, fnname: "and_126_int8", in: -127, want: 0},
+       test_int8{fn: and_int8_126, fnname: "and_int8_126", in: -127, want: 0},
+       test_int8{fn: and_126_int8, fnname: "and_126_int8", in: -1, want: 126},
+       test_int8{fn: and_int8_126, fnname: "and_int8_126", in: -1, want: 126},
+       test_int8{fn: and_126_int8, fnname: "and_126_int8", in: 0, want: 0},
+       test_int8{fn: and_int8_126, fnname: "and_int8_126", in: 0, want: 0},
+       test_int8{fn: and_126_int8, fnname: "and_126_int8", in: 1, want: 0},
+       test_int8{fn: and_int8_126, fnname: "and_int8_126", in: 1, want: 0},
+       test_int8{fn: and_126_int8, fnname: "and_126_int8", in: 126, want: 126},
+       test_int8{fn: and_int8_126, fnname: "and_int8_126", in: 126, want: 126},
+       test_int8{fn: and_126_int8, fnname: "and_126_int8", in: 127, want: 126},
+       test_int8{fn: and_int8_126, fnname: "and_int8_126", in: 127, want: 126},
+       test_int8{fn: and_127_int8, fnname: "and_127_int8", in: -128, want: 0},
+       test_int8{fn: and_int8_127, fnname: "and_int8_127", in: -128, want: 0},
+       test_int8{fn: and_127_int8, fnname: "and_127_int8", in: -127, want: 1},
+       test_int8{fn: and_int8_127, fnname: "and_int8_127", in: -127, want: 1},
+       test_int8{fn: and_127_int8, fnname: "and_127_int8", in: -1, want: 127},
+       test_int8{fn: and_int8_127, fnname: "and_int8_127", in: -1, want: 127},
+       test_int8{fn: and_127_int8, fnname: "and_127_int8", in: 0, want: 0},
+       test_int8{fn: and_int8_127, fnname: "and_int8_127", in: 0, want: 0},
+       test_int8{fn: and_127_int8, fnname: "and_127_int8", in: 1, want: 1},
+       test_int8{fn: and_int8_127, fnname: "and_int8_127", in: 1, want: 1},
+       test_int8{fn: and_127_int8, fnname: "and_127_int8", in: 126, want: 126},
+       test_int8{fn: and_int8_127, fnname: "and_int8_127", in: 126, want: 126},
+       test_int8{fn: and_127_int8, fnname: "and_127_int8", in: 127, want: 127},
+       test_int8{fn: and_int8_127, fnname: "and_int8_127", in: 127, want: 127},
+       test_int8{fn: or_Neg128_int8, fnname: "or_Neg128_int8", in: -128, want: -128},
+       test_int8{fn: or_int8_Neg128, fnname: "or_int8_Neg128", in: -128, want: -128},
+       test_int8{fn: or_Neg128_int8, fnname: "or_Neg128_int8", in: -127, want: -127},
+       test_int8{fn: or_int8_Neg128, fnname: "or_int8_Neg128", in: -127, want: -127},
+       test_int8{fn: or_Neg128_int8, fnname: "or_Neg128_int8", in: -1, want: -1},
+       test_int8{fn: or_int8_Neg128, fnname: "or_int8_Neg128", in: -1, want: -1},
+       test_int8{fn: or_Neg128_int8, fnname: "or_Neg128_int8", in: 0, want: -128},
+       test_int8{fn: or_int8_Neg128, fnname: "or_int8_Neg128", in: 0, want: -128},
+       test_int8{fn: or_Neg128_int8, fnname: "or_Neg128_int8", in: 1, want: -127},
+       test_int8{fn: or_int8_Neg128, fnname: "or_int8_Neg128", in: 1, want: -127},
+       test_int8{fn: or_Neg128_int8, fnname: "or_Neg128_int8", in: 126, want: -2},
+       test_int8{fn: or_int8_Neg128, fnname: "or_int8_Neg128", in: 126, want: -2},
+       test_int8{fn: or_Neg128_int8, fnname: "or_Neg128_int8", in: 127, want: -1},
+       test_int8{fn: or_int8_Neg128, fnname: "or_int8_Neg128", in: 127, want: -1},
+       test_int8{fn: or_Neg127_int8, fnname: "or_Neg127_int8", in: -128, want: -127},
+       test_int8{fn: or_int8_Neg127, fnname: "or_int8_Neg127", in: -128, want: -127},
+       test_int8{fn: or_Neg127_int8, fnname: "or_Neg127_int8", in: -127, want: -127},
+       test_int8{fn: or_int8_Neg127, fnname: "or_int8_Neg127", in: -127, want: -127},
+       test_int8{fn: or_Neg127_int8, fnname: "or_Neg127_int8", in: -1, want: -1},
+       test_int8{fn: or_int8_Neg127, fnname: "or_int8_Neg127", in: -1, want: -1},
+       test_int8{fn: or_Neg127_int8, fnname: "or_Neg127_int8", in: 0, want: -127},
+       test_int8{fn: or_int8_Neg127, fnname: "or_int8_Neg127", in: 0, want: -127},
+       test_int8{fn: or_Neg127_int8, fnname: "or_Neg127_int8", in: 1, want: -127},
+       test_int8{fn: or_int8_Neg127, fnname: "or_int8_Neg127", in: 1, want: -127},
+       test_int8{fn: or_Neg127_int8, fnname: "or_Neg127_int8", in: 126, want: -1},
+       test_int8{fn: or_int8_Neg127, fnname: "or_int8_Neg127", in: 126, want: -1},
+       test_int8{fn: or_Neg127_int8, fnname: "or_Neg127_int8", in: 127, want: -1},
+       test_int8{fn: or_int8_Neg127, fnname: "or_int8_Neg127", in: 127, want: -1},
+       test_int8{fn: or_Neg1_int8, fnname: "or_Neg1_int8", in: -128, want: -1},
+       test_int8{fn: or_int8_Neg1, fnname: "or_int8_Neg1", in: -128, want: -1},
+       test_int8{fn: or_Neg1_int8, fnname: "or_Neg1_int8", in: -127, want: -1},
+       test_int8{fn: or_int8_Neg1, fnname: "or_int8_Neg1", in: -127, want: -1},
+       test_int8{fn: or_Neg1_int8, fnname: "or_Neg1_int8", in: -1, want: -1},
+       test_int8{fn: or_int8_Neg1, fnname: "or_int8_Neg1", in: -1, want: -1},
+       test_int8{fn: or_Neg1_int8, fnname: "or_Neg1_int8", in: 0, want: -1},
+       test_int8{fn: or_int8_Neg1, fnname: "or_int8_Neg1", in: 0, want: -1},
+       test_int8{fn: or_Neg1_int8, fnname: "or_Neg1_int8", in: 1, want: -1},
+       test_int8{fn: or_int8_Neg1, fnname: "or_int8_Neg1", in: 1, want: -1},
+       test_int8{fn: or_Neg1_int8, fnname: "or_Neg1_int8", in: 126, want: -1},
+       test_int8{fn: or_int8_Neg1, fnname: "or_int8_Neg1", in: 126, want: -1},
+       test_int8{fn: or_Neg1_int8, fnname: "or_Neg1_int8", in: 127, want: -1},
+       test_int8{fn: or_int8_Neg1, fnname: "or_int8_Neg1", in: 127, want: -1},
+       test_int8{fn: or_0_int8, fnname: "or_0_int8", in: -128, want: -128},
+       test_int8{fn: or_int8_0, fnname: "or_int8_0", in: -128, want: -128},
+       test_int8{fn: or_0_int8, fnname: "or_0_int8", in: -127, want: -127},
+       test_int8{fn: or_int8_0, fnname: "or_int8_0", in: -127, want: -127},
+       test_int8{fn: or_0_int8, fnname: "or_0_int8", in: -1, want: -1},
+       test_int8{fn: or_int8_0, fnname: "or_int8_0", in: -1, want: -1},
+       test_int8{fn: or_0_int8, fnname: "or_0_int8", in: 0, want: 0},
+       test_int8{fn: or_int8_0, fnname: "or_int8_0", in: 0, want: 0},
+       test_int8{fn: or_0_int8, fnname: "or_0_int8", in: 1, want: 1},
+       test_int8{fn: or_int8_0, fnname: "or_int8_0", in: 1, want: 1},
+       test_int8{fn: or_0_int8, fnname: "or_0_int8", in: 126, want: 126},
+       test_int8{fn: or_int8_0, fnname: "or_int8_0", in: 126, want: 126},
+       test_int8{fn: or_0_int8, fnname: "or_0_int8", in: 127, want: 127},
+       test_int8{fn: or_int8_0, fnname: "or_int8_0", in: 127, want: 127},
+       test_int8{fn: or_1_int8, fnname: "or_1_int8", in: -128, want: -127},
+       test_int8{fn: or_int8_1, fnname: "or_int8_1", in: -128, want: -127},
+       test_int8{fn: or_1_int8, fnname: "or_1_int8", in: -127, want: -127},
+       test_int8{fn: or_int8_1, fnname: "or_int8_1", in: -127, want: -127},
+       test_int8{fn: or_1_int8, fnname: "or_1_int8", in: -1, want: -1},
+       test_int8{fn: or_int8_1, fnname: "or_int8_1", in: -1, want: -1},
+       test_int8{fn: or_1_int8, fnname: "or_1_int8", in: 0, want: 1},
+       test_int8{fn: or_int8_1, fnname: "or_int8_1", in: 0, want: 1},
+       test_int8{fn: or_1_int8, fnname: "or_1_int8", in: 1, want: 1},
+       test_int8{fn: or_int8_1, fnname: "or_int8_1", in: 1, want: 1},
+       test_int8{fn: or_1_int8, fnname: "or_1_int8", in: 126, want: 127},
+       test_int8{fn: or_int8_1, fnname: "or_int8_1", in: 126, want: 127},
+       test_int8{fn: or_1_int8, fnname: "or_1_int8", in: 127, want: 127},
+       test_int8{fn: or_int8_1, fnname: "or_int8_1", in: 127, want: 127},
+       test_int8{fn: or_126_int8, fnname: "or_126_int8", in: -128, want: -2},
+       test_int8{fn: or_int8_126, fnname: "or_int8_126", in: -128, want: -2},
+       test_int8{fn: or_126_int8, fnname: "or_126_int8", in: -127, want: -1},
+       test_int8{fn: or_int8_126, fnname: "or_int8_126", in: -127, want: -1},
+       test_int8{fn: or_126_int8, fnname: "or_126_int8", in: -1, want: -1},
+       test_int8{fn: or_int8_126, fnname: "or_int8_126", in: -1, want: -1},
+       test_int8{fn: or_126_int8, fnname: "or_126_int8", in: 0, want: 126},
+       test_int8{fn: or_int8_126, fnname: "or_int8_126", in: 0, want: 126},
+       test_int8{fn: or_126_int8, fnname: "or_126_int8", in: 1, want: 127},
+       test_int8{fn: or_int8_126, fnname: "or_int8_126", in: 1, want: 127},
+       test_int8{fn: or_126_int8, fnname: "or_126_int8", in: 126, want: 126},
+       test_int8{fn: or_int8_126, fnname: "or_int8_126", in: 126, want: 126},
+       test_int8{fn: or_126_int8, fnname: "or_126_int8", in: 127, want: 127},
+       test_int8{fn: or_int8_126, fnname: "or_int8_126", in: 127, want: 127},
+       test_int8{fn: or_127_int8, fnname: "or_127_int8", in: -128, want: -1},
+       test_int8{fn: or_int8_127, fnname: "or_int8_127", in: -128, want: -1},
+       test_int8{fn: or_127_int8, fnname: "or_127_int8", in: -127, want: -1},
+       test_int8{fn: or_int8_127, fnname: "or_int8_127", in: -127, want: -1},
+       test_int8{fn: or_127_int8, fnname: "or_127_int8", in: -1, want: -1},
+       test_int8{fn: or_int8_127, fnname: "or_int8_127", in: -1, want: -1},
+       test_int8{fn: or_127_int8, fnname: "or_127_int8", in: 0, want: 127},
+       test_int8{fn: or_int8_127, fnname: "or_int8_127", in: 0, want: 127},
+       test_int8{fn: or_127_int8, fnname: "or_127_int8", in: 1, want: 127},
+       test_int8{fn: or_int8_127, fnname: "or_int8_127", in: 1, want: 127},
+       test_int8{fn: or_127_int8, fnname: "or_127_int8", in: 126, want: 127},
+       test_int8{fn: or_int8_127, fnname: "or_int8_127", in: 126, want: 127},
+       test_int8{fn: or_127_int8, fnname: "or_127_int8", in: 127, want: 127},
+       test_int8{fn: or_int8_127, fnname: "or_int8_127", in: 127, want: 127},
+       test_int8{fn: xor_Neg128_int8, fnname: "xor_Neg128_int8", in: -128, want: 0},
+       test_int8{fn: xor_int8_Neg128, fnname: "xor_int8_Neg128", in: -128, want: 0},
+       test_int8{fn: xor_Neg128_int8, fnname: "xor_Neg128_int8", in: -127, want: 1},
+       test_int8{fn: xor_int8_Neg128, fnname: "xor_int8_Neg128", in: -127, want: 1},
+       test_int8{fn: xor_Neg128_int8, fnname: "xor_Neg128_int8", in: -1, want: 127},
+       test_int8{fn: xor_int8_Neg128, fnname: "xor_int8_Neg128", in: -1, want: 127},
+       test_int8{fn: xor_Neg128_int8, fnname: "xor_Neg128_int8", in: 0, want: -128},
+       test_int8{fn: xor_int8_Neg128, fnname: "xor_int8_Neg128", in: 0, want: -128},
+       test_int8{fn: xor_Neg128_int8, fnname: "xor_Neg128_int8", in: 1, want: -127},
+       test_int8{fn: xor_int8_Neg128, fnname: "xor_int8_Neg128", in: 1, want: -127},
+       test_int8{fn: xor_Neg128_int8, fnname: "xor_Neg128_int8", in: 126, want: -2},
+       test_int8{fn: xor_int8_Neg128, fnname: "xor_int8_Neg128", in: 126, want: -2},
+       test_int8{fn: xor_Neg128_int8, fnname: "xor_Neg128_int8", in: 127, want: -1},
+       test_int8{fn: xor_int8_Neg128, fnname: "xor_int8_Neg128", in: 127, want: -1},
+       test_int8{fn: xor_Neg127_int8, fnname: "xor_Neg127_int8", in: -128, want: 1},
+       test_int8{fn: xor_int8_Neg127, fnname: "xor_int8_Neg127", in: -128, want: 1},
+       test_int8{fn: xor_Neg127_int8, fnname: "xor_Neg127_int8", in: -127, want: 0},
+       test_int8{fn: xor_int8_Neg127, fnname: "xor_int8_Neg127", in: -127, want: 0},
+       test_int8{fn: xor_Neg127_int8, fnname: "xor_Neg127_int8", in: -1, want: 126},
+       test_int8{fn: xor_int8_Neg127, fnname: "xor_int8_Neg127", in: -1, want: 126},
+       test_int8{fn: xor_Neg127_int8, fnname: "xor_Neg127_int8", in: 0, want: -127},
+       test_int8{fn: xor_int8_Neg127, fnname: "xor_int8_Neg127", in: 0, want: -127},
+       test_int8{fn: xor_Neg127_int8, fnname: "xor_Neg127_int8", in: 1, want: -128},
+       test_int8{fn: xor_int8_Neg127, fnname: "xor_int8_Neg127", in: 1, want: -128},
+       test_int8{fn: xor_Neg127_int8, fnname: "xor_Neg127_int8", in: 126, want: -1},
+       test_int8{fn: xor_int8_Neg127, fnname: "xor_int8_Neg127", in: 126, want: -1},
+       test_int8{fn: xor_Neg127_int8, fnname: "xor_Neg127_int8", in: 127, want: -2},
+       test_int8{fn: xor_int8_Neg127, fnname: "xor_int8_Neg127", in: 127, want: -2},
+       test_int8{fn: xor_Neg1_int8, fnname: "xor_Neg1_int8", in: -128, want: 127},
+       test_int8{fn: xor_int8_Neg1, fnname: "xor_int8_Neg1", in: -128, want: 127},
+       test_int8{fn: xor_Neg1_int8, fnname: "xor_Neg1_int8", in: -127, want: 126},
+       test_int8{fn: xor_int8_Neg1, fnname: "xor_int8_Neg1", in: -127, want: 126},
+       test_int8{fn: xor_Neg1_int8, fnname: "xor_Neg1_int8", in: -1, want: 0},
+       test_int8{fn: xor_int8_Neg1, fnname: "xor_int8_Neg1", in: -1, want: 0},
+       test_int8{fn: xor_Neg1_int8, fnname: "xor_Neg1_int8", in: 0, want: -1},
+       test_int8{fn: xor_int8_Neg1, fnname: "xor_int8_Neg1", in: 0, want: -1},
+       test_int8{fn: xor_Neg1_int8, fnname: "xor_Neg1_int8", in: 1, want: -2},
+       test_int8{fn: xor_int8_Neg1, fnname: "xor_int8_Neg1", in: 1, want: -2},
+       test_int8{fn: xor_Neg1_int8, fnname: "xor_Neg1_int8", in: 126, want: -127},
+       test_int8{fn: xor_int8_Neg1, fnname: "xor_int8_Neg1", in: 126, want: -127},
+       test_int8{fn: xor_Neg1_int8, fnname: "xor_Neg1_int8", in: 127, want: -128},
+       test_int8{fn: xor_int8_Neg1, fnname: "xor_int8_Neg1", in: 127, want: -128},
+       test_int8{fn: xor_0_int8, fnname: "xor_0_int8", in: -128, want: -128},
+       test_int8{fn: xor_int8_0, fnname: "xor_int8_0", in: -128, want: -128},
+       test_int8{fn: xor_0_int8, fnname: "xor_0_int8", in: -127, want: -127},
+       test_int8{fn: xor_int8_0, fnname: "xor_int8_0", in: -127, want: -127},
+       test_int8{fn: xor_0_int8, fnname: "xor_0_int8", in: -1, want: -1},
+       test_int8{fn: xor_int8_0, fnname: "xor_int8_0", in: -1, want: -1},
+       test_int8{fn: xor_0_int8, fnname: "xor_0_int8", in: 0, want: 0},
+       test_int8{fn: xor_int8_0, fnname: "xor_int8_0", in: 0, want: 0},
+       test_int8{fn: xor_0_int8, fnname: "xor_0_int8", in: 1, want: 1},
+       test_int8{fn: xor_int8_0, fnname: "xor_int8_0", in: 1, want: 1},
+       test_int8{fn: xor_0_int8, fnname: "xor_0_int8", in: 126, want: 126},
+       test_int8{fn: xor_int8_0, fnname: "xor_int8_0", in: 126, want: 126},
+       test_int8{fn: xor_0_int8, fnname: "xor_0_int8", in: 127, want: 127},
+       test_int8{fn: xor_int8_0, fnname: "xor_int8_0", in: 127, want: 127},
+       test_int8{fn: xor_1_int8, fnname: "xor_1_int8", in: -128, want: -127},
+       test_int8{fn: xor_int8_1, fnname: "xor_int8_1", in: -128, want: -127},
+       test_int8{fn: xor_1_int8, fnname: "xor_1_int8", in: -127, want: -128},
+       test_int8{fn: xor_int8_1, fnname: "xor_int8_1", in: -127, want: -128},
+       test_int8{fn: xor_1_int8, fnname: "xor_1_int8", in: -1, want: -2},
+       test_int8{fn: xor_int8_1, fnname: "xor_int8_1", in: -1, want: -2},
+       test_int8{fn: xor_1_int8, fnname: "xor_1_int8", in: 0, want: 1},
+       test_int8{fn: xor_int8_1, fnname: "xor_int8_1", in: 0, want: 1},
+       test_int8{fn: xor_1_int8, fnname: "xor_1_int8", in: 1, want: 0},
+       test_int8{fn: xor_int8_1, fnname: "xor_int8_1", in: 1, want: 0},
+       test_int8{fn: xor_1_int8, fnname: "xor_1_int8", in: 126, want: 127},
+       test_int8{fn: xor_int8_1, fnname: "xor_int8_1", in: 126, want: 127},
+       test_int8{fn: xor_1_int8, fnname: "xor_1_int8", in: 127, want: 126},
+       test_int8{fn: xor_int8_1, fnname: "xor_int8_1", in: 127, want: 126},
+       test_int8{fn: xor_126_int8, fnname: "xor_126_int8", in: -128, want: -2},
+       test_int8{fn: xor_int8_126, fnname: "xor_int8_126", in: -128, want: -2},
+       test_int8{fn: xor_126_int8, fnname: "xor_126_int8", in: -127, want: -1},
+       test_int8{fn: xor_int8_126, fnname: "xor_int8_126", in: -127, want: -1},
+       test_int8{fn: xor_126_int8, fnname: "xor_126_int8", in: -1, want: -127},
+       test_int8{fn: xor_int8_126, fnname: "xor_int8_126", in: -1, want: -127},
+       test_int8{fn: xor_126_int8, fnname: "xor_126_int8", in: 0, want: 126},
+       test_int8{fn: xor_int8_126, fnname: "xor_int8_126", in: 0, want: 126},
+       test_int8{fn: xor_126_int8, fnname: "xor_126_int8", in: 1, want: 127},
+       test_int8{fn: xor_int8_126, fnname: "xor_int8_126", in: 1, want: 127},
+       test_int8{fn: xor_126_int8, fnname: "xor_126_int8", in: 126, want: 0},
+       test_int8{fn: xor_int8_126, fnname: "xor_int8_126", in: 126, want: 0},
+       test_int8{fn: xor_126_int8, fnname: "xor_126_int8", in: 127, want: 1},
+       test_int8{fn: xor_int8_126, fnname: "xor_int8_126", in: 127, want: 1},
+       test_int8{fn: xor_127_int8, fnname: "xor_127_int8", in: -128, want: -1},
+       test_int8{fn: xor_int8_127, fnname: "xor_int8_127", in: -128, want: -1},
+       test_int8{fn: xor_127_int8, fnname: "xor_127_int8", in: -127, want: -2},
+       test_int8{fn: xor_int8_127, fnname: "xor_int8_127", in: -127, want: -2},
+       test_int8{fn: xor_127_int8, fnname: "xor_127_int8", in: -1, want: -128},
+       test_int8{fn: xor_int8_127, fnname: "xor_int8_127", in: -1, want: -128},
+       test_int8{fn: xor_127_int8, fnname: "xor_127_int8", in: 0, want: 127},
+       test_int8{fn: xor_int8_127, fnname: "xor_int8_127", in: 0, want: 127},
+       test_int8{fn: xor_127_int8, fnname: "xor_127_int8", in: 1, want: 126},
+       test_int8{fn: xor_int8_127, fnname: "xor_int8_127", in: 1, want: 126},
+       test_int8{fn: xor_127_int8, fnname: "xor_127_int8", in: 126, want: 1},
+       test_int8{fn: xor_int8_127, fnname: "xor_int8_127", in: 126, want: 1},
+       test_int8{fn: xor_127_int8, fnname: "xor_127_int8", in: 127, want: 0},
+       test_int8{fn: xor_int8_127, fnname: "xor_int8_127", in: 127, want: 0}}
 
-       if got := add_uint64_1_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("add_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775809\n", `+`, got)
-               failed = true
-       }
+var failed bool
 
-       if got := add_1_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("add_uint64 1%s18446744073709551615 = %d, wanted 0\n", `+`, got)
-               failed = true
+func main() {
+       for _, test := range tests_uint64 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+       for _, test := range tests_int64 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+       for _, test := range tests_uint32 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+       for _, test := range tests_int32 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+       for _, test := range tests_uint16 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+       for _, test := range tests_int16 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+       for _, test := range tests_uint8 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+       for _, test := range tests_int8 {
+               if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
        }
 
-       if got := add_uint64_1_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("add_uint64 18446744073709551615%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_uint64_ssa(0); got != 4294967296 {
-               fmt.Printf("add_uint64 4294967296%s0 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_4294967296_ssa(0); got != 4294967296 {
-               fmt.Printf("add_uint64 0%s4294967296 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_uint64_ssa(1); got != 4294967297 {
-               fmt.Printf("add_uint64 4294967296%s1 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_4294967296_ssa(1); got != 4294967297 {
-               fmt.Printf("add_uint64 1%s4294967296 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_uint64_ssa(4294967296); got != 8589934592 {
-               fmt.Printf("add_uint64 4294967296%s4294967296 = %d, wanted 8589934592\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_4294967296_ssa(4294967296); got != 8589934592 {
-               fmt.Printf("add_uint64 4294967296%s4294967296 = %d, wanted 8589934592\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_uint64_ssa(9223372036854775808); got != 9223372041149743104 {
-               fmt.Printf("add_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_4294967296_ssa(9223372036854775808); got != 9223372041149743104 {
-               fmt.Printf("add_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372041149743104\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_uint64_ssa(18446744073709551615); got != 4294967295 {
-               fmt.Printf("add_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_4294967296_ssa(18446744073709551615); got != 4294967295 {
-               fmt.Printf("add_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775808_uint64_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("add_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_9223372036854775808_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("add_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775808_uint64_ssa(1); got != 9223372036854775809 {
-               fmt.Printf("add_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775809\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_9223372036854775808_ssa(1); got != 9223372036854775809 {
-               fmt.Printf("add_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775808_uint64_ssa(4294967296); got != 9223372041149743104 {
-               fmt.Printf("add_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372041149743104\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_9223372036854775808_ssa(4294967296); got != 9223372041149743104 {
-               fmt.Printf("add_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775808_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("add_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_9223372036854775808_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("add_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775808_uint64_ssa(18446744073709551615); got != 9223372036854775807 {
-               fmt.Printf("add_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_9223372036854775808_ssa(18446744073709551615); got != 9223372036854775807 {
-               fmt.Printf("add_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_18446744073709551615_uint64_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("add_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_18446744073709551615_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("add_uint64 0%s18446744073709551615 = %d, wanted 18446744073709551615\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_18446744073709551615_uint64_ssa(1); got != 0 {
-               fmt.Printf("add_uint64 18446744073709551615%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_18446744073709551615_ssa(1); got != 0 {
-               fmt.Printf("add_uint64 1%s18446744073709551615 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_18446744073709551615_uint64_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("add_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_18446744073709551615_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("add_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_18446744073709551615_uint64_ssa(9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("add_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_18446744073709551615_ssa(9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("add_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_18446744073709551615_uint64_ssa(18446744073709551615); got != 18446744073709551614 {
-               fmt.Printf("add_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 18446744073709551614\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint64_18446744073709551615_ssa(18446744073709551615); got != 18446744073709551614 {
-               fmt.Printf("add_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 18446744073709551614\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("sub_uint64 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("sub_uint64 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint64_ssa(1); got != 18446744073709551615 {
-               fmt.Printf("sub_uint64 0%s1 = %d, wanted 18446744073709551615\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_0_ssa(1); got != 1 {
-               fmt.Printf("sub_uint64 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint64_ssa(4294967296); got != 18446744069414584320 {
-               fmt.Printf("sub_uint64 0%s4294967296 = %d, wanted 18446744069414584320\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("sub_uint64 4294967296%s0 = %d, wanted 4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("sub_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_0_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("sub_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint64_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("sub_uint64 0%s18446744073709551615 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_0_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("sub_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint64_ssa(0); got != 1 {
-               fmt.Printf("sub_uint64 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_1_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("sub_uint64 0%s1 = %d, wanted 18446744073709551615\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint64_ssa(1); got != 0 {
-               fmt.Printf("sub_uint64 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_1_ssa(1); got != 0 {
-               fmt.Printf("sub_uint64 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint64_ssa(4294967296); got != 18446744069414584321 {
-               fmt.Printf("sub_uint64 1%s4294967296 = %d, wanted 18446744069414584321\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_1_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("sub_uint64 4294967296%s1 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint64_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("sub_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_1_ssa(9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("sub_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint64_ssa(18446744073709551615); got != 2 {
-               fmt.Printf("sub_uint64 1%s18446744073709551615 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_1_ssa(18446744073709551615); got != 18446744073709551614 {
-               fmt.Printf("sub_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551614\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_uint64_ssa(0); got != 4294967296 {
-               fmt.Printf("sub_uint64 4294967296%s0 = %d, wanted 4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_4294967296_ssa(0); got != 18446744069414584320 {
-               fmt.Printf("sub_uint64 0%s4294967296 = %d, wanted 18446744069414584320\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_uint64_ssa(1); got != 4294967295 {
-               fmt.Printf("sub_uint64 4294967296%s1 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_4294967296_ssa(1); got != 18446744069414584321 {
-               fmt.Printf("sub_uint64 1%s4294967296 = %d, wanted 18446744069414584321\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("sub_uint64 4294967296%s4294967296 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("sub_uint64 4294967296%s4294967296 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_uint64_ssa(9223372036854775808); got != 9223372041149743104 {
-               fmt.Printf("sub_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_4294967296_ssa(9223372036854775808); got != 9223372032559808512 {
-               fmt.Printf("sub_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_uint64_ssa(18446744073709551615); got != 4294967297 {
-               fmt.Printf("sub_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_4294967296_ssa(18446744073709551615); got != 18446744069414584319 {
-               fmt.Printf("sub_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744069414584319\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775808_uint64_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("sub_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_9223372036854775808_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("sub_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775808_uint64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("sub_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_9223372036854775808_ssa(1); got != 9223372036854775809 {
-               fmt.Printf("sub_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775808_uint64_ssa(4294967296); got != 9223372032559808512 {
-               fmt.Printf("sub_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_9223372036854775808_ssa(4294967296); got != 9223372041149743104 {
-               fmt.Printf("sub_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775808_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("sub_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_9223372036854775808_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("sub_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775808_uint64_ssa(18446744073709551615); got != 9223372036854775809 {
-               fmt.Printf("sub_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775809\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_9223372036854775808_ssa(18446744073709551615); got != 9223372036854775807 {
-               fmt.Printf("sub_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_18446744073709551615_uint64_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("sub_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_18446744073709551615_ssa(0); got != 1 {
-               fmt.Printf("sub_uint64 0%s18446744073709551615 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_18446744073709551615_uint64_ssa(1); got != 18446744073709551614 {
-               fmt.Printf("sub_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551614\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_18446744073709551615_ssa(1); got != 2 {
-               fmt.Printf("sub_uint64 1%s18446744073709551615 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_18446744073709551615_uint64_ssa(4294967296); got != 18446744069414584319 {
-               fmt.Printf("sub_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744069414584319\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_18446744073709551615_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("sub_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_18446744073709551615_uint64_ssa(9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("sub_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_18446744073709551615_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("sub_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775809\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_18446744073709551615_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("sub_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint64_18446744073709551615_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("sub_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_0_uint64_ssa(1); got != 0 {
-               fmt.Printf("div_uint64 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("div_uint64 0%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("div_uint64 0%s9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("div_uint64 0%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_1_ssa(0); got != 0 {
-               fmt.Printf("div_uint64 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint64_ssa(1); got != 1 {
-               fmt.Printf("div_uint64 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_1_ssa(1); got != 1 {
-               fmt.Printf("div_uint64 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("div_uint64 1%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_1_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("div_uint64 4294967296%s1 = %d, wanted 4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("div_uint64 1%s9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_1_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("div_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775808\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("div_uint64 1%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_1_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("div_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551615\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("div_uint64 0%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_uint64_ssa(1); got != 4294967296 {
-               fmt.Printf("div_uint64 4294967296%s1 = %d, wanted 4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_4294967296_ssa(1); got != 0 {
-               fmt.Printf("div_uint64 1%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_uint64_ssa(4294967296); got != 1 {
-               fmt.Printf("div_uint64 4294967296%s4294967296 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_4294967296_ssa(4294967296); got != 1 {
-               fmt.Printf("div_uint64 4294967296%s4294967296 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("div_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_4294967296_ssa(9223372036854775808); got != 2147483648 {
-               fmt.Printf("div_uint64 9223372036854775808%s4294967296 = %d, wanted 2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("div_uint64 4294967296%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_4294967296_ssa(18446744073709551615); got != 4294967295 {
-               fmt.Printf("div_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967295\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("div_uint64 0%s9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775808_uint64_ssa(1); got != 9223372036854775808 {
-               fmt.Printf("div_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775808\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_9223372036854775808_ssa(1); got != 0 {
-               fmt.Printf("div_uint64 1%s9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775808_uint64_ssa(4294967296); got != 2147483648 {
-               fmt.Printf("div_uint64 9223372036854775808%s4294967296 = %d, wanted 2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("div_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775808_uint64_ssa(9223372036854775808); got != 1 {
-               fmt.Printf("div_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_9223372036854775808_ssa(9223372036854775808); got != 1 {
-               fmt.Printf("div_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775808_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("div_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_9223372036854775808_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("div_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_18446744073709551615_ssa(0); got != 0 {
-               fmt.Printf("div_uint64 0%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_18446744073709551615_uint64_ssa(1); got != 18446744073709551615 {
-               fmt.Printf("div_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551615\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_18446744073709551615_ssa(1); got != 0 {
-               fmt.Printf("div_uint64 1%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_18446744073709551615_uint64_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("div_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967295\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_18446744073709551615_ssa(4294967296); got != 0 {
-               fmt.Printf("div_uint64 4294967296%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_18446744073709551615_uint64_ssa(9223372036854775808); got != 1 {
-               fmt.Printf("div_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_18446744073709551615_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("div_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_18446744073709551615_uint64_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("div_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint64_18446744073709551615_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("div_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint64_ssa(1); got != 0 {
-               fmt.Printf("mul_uint64 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_0_ssa(1); got != 0 {
-               fmt.Printf("mul_uint64 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_uint64 0%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_0_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_uint64 4294967296%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mul_uint64 0%s9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_0_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mul_uint64 9223372036854775808%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("mul_uint64 0%s18446744073709551615 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_0_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("mul_uint64 18446744073709551615%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint64_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_1_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint64_ssa(1); got != 1 {
-               fmt.Printf("mul_uint64 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_1_ssa(1); got != 1 {
-               fmt.Printf("mul_uint64 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mul_uint64 1%s4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_1_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mul_uint64 4294967296%s1 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_1_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("mul_uint64 1%s18446744073709551615 = %d, wanted 18446744073709551615\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_1_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("mul_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551615\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_uint64_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 4294967296%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 0%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_uint64_ssa(1); got != 4294967296 {
-               fmt.Printf("mul_uint64 4294967296%s1 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_4294967296_ssa(1); got != 4294967296 {
-               fmt.Printf("mul_uint64 1%s4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_uint64 4294967296%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_uint64 4294967296%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mul_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_4294967296_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mul_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_uint64_ssa(18446744073709551615); got != 18446744069414584320 {
-               fmt.Printf("mul_uint64 4294967296%s18446744073709551615 = %d, wanted 18446744069414584320\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_4294967296_ssa(18446744073709551615); got != 18446744069414584320 {
-               fmt.Printf("mul_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744069414584320\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775808_uint64_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 9223372036854775808%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 0%s9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775808_uint64_ssa(1); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_9223372036854775808_ssa(1); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775808_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775808_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mul_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_9223372036854775808_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mul_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775808_uint64_ssa(18446744073709551615); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_9223372036854775808_ssa(18446744073709551615); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_18446744073709551615_uint64_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 18446744073709551615%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_18446744073709551615_ssa(0); got != 0 {
-               fmt.Printf("mul_uint64 0%s18446744073709551615 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_18446744073709551615_uint64_ssa(1); got != 18446744073709551615 {
-               fmt.Printf("mul_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551615\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_18446744073709551615_ssa(1); got != 18446744073709551615 {
-               fmt.Printf("mul_uint64 1%s18446744073709551615 = %d, wanted 18446744073709551615\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_18446744073709551615_uint64_ssa(4294967296); got != 18446744069414584320 {
-               fmt.Printf("mul_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744069414584320\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_18446744073709551615_ssa(4294967296); got != 18446744069414584320 {
-               fmt.Printf("mul_uint64 4294967296%s18446744073709551615 = %d, wanted 18446744069414584320\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_18446744073709551615_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_18446744073709551615_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("mul_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_18446744073709551615_uint64_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("mul_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint64_18446744073709551615_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("mul_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint64 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint64 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint64_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint64 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_0_ssa(1); got != 1 {
-               fmt.Printf("lsh_uint64 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 0%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("lsh_uint64 4294967296%s0 = %d, wanted 4294967296\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 0%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_0_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 0%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_0_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint64_ssa(0); got != 1 {
-               fmt.Printf("lsh_uint64 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_1_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint64 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint64_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint64 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_1_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint64 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 1%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_1_ssa(4294967296); got != 8589934592 {
-               fmt.Printf("lsh_uint64 4294967296%s1 = %d, wanted 8589934592\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 1%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_1_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 1%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_1_ssa(18446744073709551615); got != 18446744073709551614 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551614\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967296_uint64_ssa(0); got != 4294967296 {
-               fmt.Printf("lsh_uint64 4294967296%s0 = %d, wanted 4294967296\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint64 0%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967296_uint64_ssa(1); got != 8589934592 {
-               fmt.Printf("lsh_uint64 4294967296%s1 = %d, wanted 8589934592\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_4294967296_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint64 1%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967296_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 4294967296%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 4294967296%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967296_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_4294967296_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967296_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 4294967296%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_4294967296_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_9223372036854775808_uint64_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint64 0%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_9223372036854775808_uint64_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_9223372036854775808_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint64 1%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_9223372036854775808_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_9223372036854775808_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_9223372036854775808_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_9223372036854775808_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_9223372036854775808_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_18446744073709551615_uint64_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_18446744073709551615_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint64 0%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_18446744073709551615_uint64_ssa(1); got != 18446744073709551614 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551614\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_18446744073709551615_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint64 1%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_18446744073709551615_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s4294967296 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_18446744073709551615_ssa(4294967296); got != 0 {
-               fmt.Printf("lsh_uint64 4294967296%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_18446744073709551615_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_18446744073709551615_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("lsh_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_18446744073709551615_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint64_18446744073709551615_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("lsh_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint64 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint64 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint64_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint64 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_0_ssa(1); got != 1 {
-               fmt.Printf("rsh_uint64 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 0%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("rsh_uint64 4294967296%s0 = %d, wanted 4294967296\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 0%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_0_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 0%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_0_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint64_ssa(0); got != 1 {
-               fmt.Printf("rsh_uint64 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_1_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint64 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint64_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint64 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_1_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint64 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 1%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_1_ssa(4294967296); got != 2147483648 {
-               fmt.Printf("rsh_uint64 4294967296%s1 = %d, wanted 2147483648\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 1%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_1_ssa(9223372036854775808); got != 4611686018427387904 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s1 = %d, wanted 4611686018427387904\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 1%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_1_ssa(18446744073709551615); got != 9223372036854775807 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s1 = %d, wanted 9223372036854775807\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967296_uint64_ssa(0); got != 4294967296 {
-               fmt.Printf("rsh_uint64 4294967296%s0 = %d, wanted 4294967296\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint64 0%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967296_uint64_ssa(1); got != 2147483648 {
-               fmt.Printf("rsh_uint64 4294967296%s1 = %d, wanted 2147483648\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_4294967296_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint64 1%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967296_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 4294967296%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 4294967296%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967296_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_4294967296_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967296_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 4294967296%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_4294967296_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_9223372036854775808_uint64_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint64 0%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_9223372036854775808_uint64_ssa(1); got != 4611686018427387904 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s1 = %d, wanted 4611686018427387904\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_9223372036854775808_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint64 1%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_9223372036854775808_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_9223372036854775808_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_9223372036854775808_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_9223372036854775808_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_9223372036854775808_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_18446744073709551615_uint64_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_18446744073709551615_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint64 0%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_18446744073709551615_uint64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s1 = %d, wanted 9223372036854775807\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_18446744073709551615_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint64 1%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_18446744073709551615_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s4294967296 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_18446744073709551615_ssa(4294967296); got != 0 {
-               fmt.Printf("rsh_uint64 4294967296%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_18446744073709551615_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_18446744073709551615_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("rsh_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_18446744073709551615_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint64_18446744073709551615_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("rsh_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint64_ssa(1); got != 0 {
-               fmt.Printf("mod_uint64 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_uint64 0%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mod_uint64 0%s9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("mod_uint64 0%s18446744073709551615 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_1_ssa(0); got != 0 {
-               fmt.Printf("mod_uint64 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint64_ssa(1); got != 0 {
-               fmt.Printf("mod_uint64 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_1_ssa(1); got != 0 {
-               fmt.Printf("mod_uint64 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint64_ssa(4294967296); got != 1 {
-               fmt.Printf("mod_uint64 1%s4294967296 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_1_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_uint64 4294967296%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint64_ssa(9223372036854775808); got != 1 {
-               fmt.Printf("mod_uint64 1%s9223372036854775808 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_1_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mod_uint64 9223372036854775808%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint64_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("mod_uint64 1%s18446744073709551615 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_1_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("mod_uint64 18446744073709551615%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("mod_uint64 0%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_uint64_ssa(1); got != 0 {
-               fmt.Printf("mod_uint64 4294967296%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_4294967296_ssa(1); got != 1 {
-               fmt.Printf("mod_uint64 1%s4294967296 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_uint64 4294967296%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_uint64 4294967296%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_uint64_ssa(9223372036854775808); got != 4294967296 {
-               fmt.Printf("mod_uint64 4294967296%s9223372036854775808 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_4294967296_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mod_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_uint64_ssa(18446744073709551615); got != 4294967296 {
-               fmt.Printf("mod_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_4294967296_ssa(18446744073709551615); got != 4294967295 {
-               fmt.Printf("mod_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("mod_uint64 0%s9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775808_uint64_ssa(1); got != 0 {
-               fmt.Printf("mod_uint64 9223372036854775808%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_9223372036854775808_ssa(1); got != 1 {
-               fmt.Printf("mod_uint64 1%s9223372036854775808 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775808_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_9223372036854775808_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mod_uint64 4294967296%s9223372036854775808 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775808_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mod_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_9223372036854775808_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("mod_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775808_uint64_ssa(18446744073709551615); got != 9223372036854775808 {
-               fmt.Printf("mod_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775808\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_9223372036854775808_ssa(18446744073709551615); got != 9223372036854775807 {
-               fmt.Printf("mod_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_18446744073709551615_ssa(0); got != 0 {
-               fmt.Printf("mod_uint64 0%s18446744073709551615 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_18446744073709551615_uint64_ssa(1); got != 0 {
-               fmt.Printf("mod_uint64 18446744073709551615%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_18446744073709551615_ssa(1); got != 1 {
-               fmt.Printf("mod_uint64 1%s18446744073709551615 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_18446744073709551615_uint64_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("mod_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_18446744073709551615_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mod_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_18446744073709551615_uint64_ssa(9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("mod_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_18446744073709551615_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("mod_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775808\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_18446744073709551615_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("mod_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint64_18446744073709551615_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("mod_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint64_ssa(1); got != 0 {
-               fmt.Printf("and_uint64 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_0_ssa(1); got != 0 {
-               fmt.Printf("and_uint64 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("and_uint64 0%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_0_ssa(4294967296); got != 0 {
-               fmt.Printf("and_uint64 4294967296%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("and_uint64 0%s9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_0_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("and_uint64 9223372036854775808%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("and_uint64 0%s18446744073709551615 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_0_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("and_uint64 18446744073709551615%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint64_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_1_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint64_ssa(1); got != 1 {
-               fmt.Printf("and_uint64 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_1_ssa(1); got != 1 {
-               fmt.Printf("and_uint64 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("and_uint64 1%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_1_ssa(4294967296); got != 0 {
-               fmt.Printf("and_uint64 4294967296%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("and_uint64 1%s9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_1_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("and_uint64 9223372036854775808%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint64_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("and_uint64 1%s18446744073709551615 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_1_ssa(18446744073709551615); got != 1 {
-               fmt.Printf("and_uint64 18446744073709551615%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_uint64_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 4294967296%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 0%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_uint64_ssa(1); got != 0 {
-               fmt.Printf("and_uint64 4294967296%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_4294967296_ssa(1); got != 0 {
-               fmt.Printf("and_uint64 1%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_uint64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_uint64 4294967296%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_4294967296_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_uint64 4294967296%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("and_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_4294967296_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("and_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_uint64_ssa(18446744073709551615); got != 4294967296 {
-               fmt.Printf("and_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_4294967296_ssa(18446744073709551615); got != 4294967296 {
-               fmt.Printf("and_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775808_uint64_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 9223372036854775808%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 0%s9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775808_uint64_ssa(1); got != 0 {
-               fmt.Printf("and_uint64 9223372036854775808%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_9223372036854775808_ssa(1); got != 0 {
-               fmt.Printf("and_uint64 1%s9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775808_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("and_uint64 9223372036854775808%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("and_uint64 4294967296%s9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775808_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("and_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_9223372036854775808_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("and_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775808_uint64_ssa(18446744073709551615); got != 9223372036854775808 {
-               fmt.Printf("and_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_9223372036854775808_ssa(18446744073709551615); got != 9223372036854775808 {
-               fmt.Printf("and_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_18446744073709551615_uint64_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 18446744073709551615%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_18446744073709551615_ssa(0); got != 0 {
-               fmt.Printf("and_uint64 0%s18446744073709551615 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_18446744073709551615_uint64_ssa(1); got != 1 {
-               fmt.Printf("and_uint64 18446744073709551615%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_18446744073709551615_ssa(1); got != 1 {
-               fmt.Printf("and_uint64 1%s18446744073709551615 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_18446744073709551615_uint64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_uint64 18446744073709551615%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_18446744073709551615_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_uint64 4294967296%s18446744073709551615 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_18446744073709551615_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("and_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_18446744073709551615_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("and_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_18446744073709551615_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("and_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 18446744073709551615\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint64_18446744073709551615_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("and_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 18446744073709551615\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("or_uint64 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("or_uint64 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint64_ssa(1); got != 1 {
-               fmt.Printf("or_uint64 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_0_ssa(1); got != 1 {
-               fmt.Printf("or_uint64 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_uint64 0%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_uint64 4294967296%s0 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("or_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_0_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("or_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 0%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_0_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint64_ssa(0); got != 1 {
-               fmt.Printf("or_uint64 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_1_ssa(0); got != 1 {
-               fmt.Printf("or_uint64 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint64_ssa(1); got != 1 {
-               fmt.Printf("or_uint64 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_1_ssa(1); got != 1 {
-               fmt.Printf("or_uint64 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint64_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("or_uint64 1%s4294967296 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_1_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("or_uint64 4294967296%s1 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint64_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("or_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_1_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("or_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775809\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 1%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_1_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_uint64_ssa(0); got != 4294967296 {
-               fmt.Printf("or_uint64 4294967296%s0 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_4294967296_ssa(0); got != 4294967296 {
-               fmt.Printf("or_uint64 0%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_uint64_ssa(1); got != 4294967297 {
-               fmt.Printf("or_uint64 4294967296%s1 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_4294967296_ssa(1); got != 4294967297 {
-               fmt.Printf("or_uint64 1%s4294967296 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_uint64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_uint64 4294967296%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_4294967296_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_uint64 4294967296%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_uint64_ssa(9223372036854775808); got != 9223372041149743104 {
-               fmt.Printf("or_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_4294967296_ssa(9223372036854775808); got != 9223372041149743104 {
-               fmt.Printf("or_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372041149743104\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 4294967296%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_4294967296_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775808_uint64_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("or_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_9223372036854775808_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("or_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775808_uint64_ssa(1); got != 9223372036854775809 {
-               fmt.Printf("or_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775809\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_9223372036854775808_ssa(1); got != 9223372036854775809 {
-               fmt.Printf("or_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775808_uint64_ssa(4294967296); got != 9223372041149743104 {
-               fmt.Printf("or_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372041149743104\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_9223372036854775808_ssa(4294967296); got != 9223372041149743104 {
-               fmt.Printf("or_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775808_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("or_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_9223372036854775808_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("or_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775808_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_9223372036854775808_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_18446744073709551615_uint64_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_18446744073709551615_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 0%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_18446744073709551615_uint64_ssa(1); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_18446744073709551615_ssa(1); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 1%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_18446744073709551615_uint64_ssa(4294967296); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_18446744073709551615_ssa(4294967296); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 4294967296%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_18446744073709551615_uint64_ssa(9223372036854775808); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_18446744073709551615_ssa(9223372036854775808); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_18446744073709551615_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint64_18446744073709551615_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("or_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 18446744073709551615\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint64_ssa(0); got != 0 {
-               fmt.Printf("xor_uint64 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_0_ssa(0); got != 0 {
-               fmt.Printf("xor_uint64 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint64_ssa(1); got != 1 {
-               fmt.Printf("xor_uint64 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_0_ssa(1); got != 1 {
-               fmt.Printf("xor_uint64 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("xor_uint64 0%s4294967296 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("xor_uint64 4294967296%s0 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint64_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("xor_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_0_ssa(9223372036854775808); got != 9223372036854775808 {
-               fmt.Printf("xor_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint64_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("xor_uint64 0%s18446744073709551615 = %d, wanted 18446744073709551615\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_0_ssa(18446744073709551615); got != 18446744073709551615 {
-               fmt.Printf("xor_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint64_ssa(0); got != 1 {
-               fmt.Printf("xor_uint64 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_1_ssa(0); got != 1 {
-               fmt.Printf("xor_uint64 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint64_ssa(1); got != 0 {
-               fmt.Printf("xor_uint64 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_1_ssa(1); got != 0 {
-               fmt.Printf("xor_uint64 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint64_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("xor_uint64 1%s4294967296 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_1_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("xor_uint64 4294967296%s1 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint64_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("xor_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_1_ssa(9223372036854775808); got != 9223372036854775809 {
-               fmt.Printf("xor_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775809\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint64_ssa(18446744073709551615); got != 18446744073709551614 {
-               fmt.Printf("xor_uint64 1%s18446744073709551615 = %d, wanted 18446744073709551614\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_1_ssa(18446744073709551615); got != 18446744073709551614 {
-               fmt.Printf("xor_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551614\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_uint64_ssa(0); got != 4294967296 {
-               fmt.Printf("xor_uint64 4294967296%s0 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_4294967296_ssa(0); got != 4294967296 {
-               fmt.Printf("xor_uint64 0%s4294967296 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_uint64_ssa(1); got != 4294967297 {
-               fmt.Printf("xor_uint64 4294967296%s1 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_4294967296_ssa(1); got != 4294967297 {
-               fmt.Printf("xor_uint64 1%s4294967296 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_uint64_ssa(4294967296); got != 0 {
-               fmt.Printf("xor_uint64 4294967296%s4294967296 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("xor_uint64 4294967296%s4294967296 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_uint64_ssa(9223372036854775808); got != 9223372041149743104 {
-               fmt.Printf("xor_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_4294967296_ssa(9223372036854775808); got != 9223372041149743104 {
-               fmt.Printf("xor_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372041149743104\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_uint64_ssa(18446744073709551615); got != 18446744069414584319 {
-               fmt.Printf("xor_uint64 4294967296%s18446744073709551615 = %d, wanted 18446744069414584319\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_4294967296_ssa(18446744073709551615); got != 18446744069414584319 {
-               fmt.Printf("xor_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744069414584319\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775808_uint64_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("xor_uint64 9223372036854775808%s0 = %d, wanted 9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_9223372036854775808_ssa(0); got != 9223372036854775808 {
-               fmt.Printf("xor_uint64 0%s9223372036854775808 = %d, wanted 9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775808_uint64_ssa(1); got != 9223372036854775809 {
-               fmt.Printf("xor_uint64 9223372036854775808%s1 = %d, wanted 9223372036854775809\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_9223372036854775808_ssa(1); got != 9223372036854775809 {
-               fmt.Printf("xor_uint64 1%s9223372036854775808 = %d, wanted 9223372036854775809\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775808_uint64_ssa(4294967296); got != 9223372041149743104 {
-               fmt.Printf("xor_uint64 9223372036854775808%s4294967296 = %d, wanted 9223372041149743104\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_9223372036854775808_ssa(4294967296); got != 9223372041149743104 {
-               fmt.Printf("xor_uint64 4294967296%s9223372036854775808 = %d, wanted 9223372041149743104\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775808_uint64_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("xor_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_9223372036854775808_ssa(9223372036854775808); got != 0 {
-               fmt.Printf("xor_uint64 9223372036854775808%s9223372036854775808 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775808_uint64_ssa(18446744073709551615); got != 9223372036854775807 {
-               fmt.Printf("xor_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_9223372036854775808_ssa(18446744073709551615); got != 9223372036854775807 {
-               fmt.Printf("xor_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_18446744073709551615_uint64_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("xor_uint64 18446744073709551615%s0 = %d, wanted 18446744073709551615\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_18446744073709551615_ssa(0); got != 18446744073709551615 {
-               fmt.Printf("xor_uint64 0%s18446744073709551615 = %d, wanted 18446744073709551615\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_18446744073709551615_uint64_ssa(1); got != 18446744073709551614 {
-               fmt.Printf("xor_uint64 18446744073709551615%s1 = %d, wanted 18446744073709551614\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_18446744073709551615_ssa(1); got != 18446744073709551614 {
-               fmt.Printf("xor_uint64 1%s18446744073709551615 = %d, wanted 18446744073709551614\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_18446744073709551615_uint64_ssa(4294967296); got != 18446744069414584319 {
-               fmt.Printf("xor_uint64 18446744073709551615%s4294967296 = %d, wanted 18446744069414584319\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_18446744073709551615_ssa(4294967296); got != 18446744069414584319 {
-               fmt.Printf("xor_uint64 4294967296%s18446744073709551615 = %d, wanted 18446744069414584319\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_18446744073709551615_uint64_ssa(9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("xor_uint64 18446744073709551615%s9223372036854775808 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_18446744073709551615_ssa(9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("xor_uint64 9223372036854775808%s18446744073709551615 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_18446744073709551615_uint64_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("xor_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint64_18446744073709551615_ssa(18446744073709551615); got != 0 {
-               fmt.Printf("xor_uint64 18446744073709551615%s18446744073709551615 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("add_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("add_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("add_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("add_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("add_int64 -9223372036854775808%s-4294967296 = %d, wanted 9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("add_int64 -4294967296%s-9223372036854775808 = %d, wanted 9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("add_int64 -9223372036854775808%s-1 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("add_int64 -1%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("add_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("add_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("add_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("add_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(4294967296); got != -9223372032559808512 {
-               fmt.Printf("add_int64 -9223372036854775808%s4294967296 = %d, wanted -9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(4294967296); got != -9223372032559808512 {
-               fmt.Printf("add_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("add_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("add_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775808_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("add_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775808_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("add_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("add_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("add_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != 2 {
-               fmt.Printf("add_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != 2 {
-               fmt.Printf("add_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(-4294967296); got != 9223372032559808513 {
-               fmt.Printf("add_int64 -9223372036854775807%s-4294967296 = %d, wanted 9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(-4294967296); got != 9223372032559808513 {
-               fmt.Printf("add_int64 -4294967296%s-9223372036854775807 = %d, wanted 9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("add_int64 -9223372036854775807%s-1 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("add_int64 -1%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("add_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("add_int64 0%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(1); got != -9223372036854775806 {
-               fmt.Printf("add_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(1); got != -9223372036854775806 {
-               fmt.Printf("add_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(4294967296); got != -9223372032559808511 {
-               fmt.Printf("add_int64 -9223372036854775807%s4294967296 = %d, wanted -9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(4294967296); got != -9223372032559808511 {
-               fmt.Printf("add_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("add_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("add_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg9223372036854775807_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("add_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg9223372036854775807_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("add_int64 9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(-9223372036854775808); got != 9223372032559808512 {
-               fmt.Printf("add_int64 -4294967296%s-9223372036854775808 = %d, wanted 9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(-9223372036854775808); got != 9223372032559808512 {
-               fmt.Printf("add_int64 -9223372036854775808%s-4294967296 = %d, wanted 9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(-9223372036854775807); got != 9223372032559808513 {
-               fmt.Printf("add_int64 -4294967296%s-9223372036854775807 = %d, wanted 9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(-9223372036854775807); got != 9223372032559808513 {
-               fmt.Printf("add_int64 -9223372036854775807%s-4294967296 = %d, wanted 9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(-4294967296); got != -8589934592 {
-               fmt.Printf("add_int64 -4294967296%s-4294967296 = %d, wanted -8589934592\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(-4294967296); got != -8589934592 {
-               fmt.Printf("add_int64 -4294967296%s-4294967296 = %d, wanted -8589934592\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(-1); got != -4294967297 {
-               fmt.Printf("add_int64 -4294967296%s-1 = %d, wanted -4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(-1); got != -4294967297 {
-               fmt.Printf("add_int64 -1%s-4294967296 = %d, wanted -4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(0); got != -4294967296 {
-               fmt.Printf("add_int64 -4294967296%s0 = %d, wanted -4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(0); got != -4294967296 {
-               fmt.Printf("add_int64 0%s-4294967296 = %d, wanted -4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(1); got != -4294967295 {
-               fmt.Printf("add_int64 -4294967296%s1 = %d, wanted -4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(1); got != -4294967295 {
-               fmt.Printf("add_int64 1%s-4294967296 = %d, wanted -4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("add_int64 -4294967296%s4294967296 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("add_int64 4294967296%s-4294967296 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(9223372036854775806); got != 9223372032559808510 {
-               fmt.Printf("add_int64 -4294967296%s9223372036854775806 = %d, wanted 9223372032559808510\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(9223372036854775806); got != 9223372032559808510 {
-               fmt.Printf("add_int64 9223372036854775806%s-4294967296 = %d, wanted 9223372032559808510\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg4294967296_int64_ssa(9223372036854775807); got != 9223372032559808511 {
-               fmt.Printf("add_int64 -4294967296%s9223372036854775807 = %d, wanted 9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg4294967296_ssa(9223372036854775807); got != 9223372032559808511 {
-               fmt.Printf("add_int64 9223372036854775807%s-4294967296 = %d, wanted 9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(-9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("add_int64 -1%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(-9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("add_int64 -9223372036854775808%s-1 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("add_int64 -1%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("add_int64 -9223372036854775807%s-1 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(-4294967296); got != -4294967297 {
-               fmt.Printf("add_int64 -1%s-4294967296 = %d, wanted -4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(-4294967296); got != -4294967297 {
-               fmt.Printf("add_int64 -4294967296%s-1 = %d, wanted -4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(-1); got != -2 {
-               fmt.Printf("add_int64 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(-1); got != -2 {
-               fmt.Printf("add_int64 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(0); got != -1 {
-               fmt.Printf("add_int64 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(0); got != -1 {
-               fmt.Printf("add_int64 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(1); got != 0 {
-               fmt.Printf("add_int64 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(1); got != 0 {
-               fmt.Printf("add_int64 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("add_int64 -1%s4294967296 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("add_int64 4294967296%s-1 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(9223372036854775806); got != 9223372036854775805 {
-               fmt.Printf("add_int64 -1%s9223372036854775806 = %d, wanted 9223372036854775805\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(9223372036854775806); got != 9223372036854775805 {
-               fmt.Printf("add_int64 9223372036854775806%s-1 = %d, wanted 9223372036854775805\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int64_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("add_int64 -1%s9223372036854775807 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_Neg1_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("add_int64 9223372036854775807%s-1 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("add_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("add_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("add_int64 0%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("add_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("add_int64 0%s-4294967296 = %d, wanted -4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("add_int64 -4294967296%s0 = %d, wanted -4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(-1); got != -1 {
-               fmt.Printf("add_int64 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(-1); got != -1 {
-               fmt.Printf("add_int64 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(0); got != 0 {
-               fmt.Printf("add_int64 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(0); got != 0 {
-               fmt.Printf("add_int64 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(1); got != 1 {
-               fmt.Printf("add_int64 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(1); got != 1 {
-               fmt.Printf("add_int64 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("add_int64 0%s4294967296 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("add_int64 4294967296%s0 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("add_int64 0%s9223372036854775806 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("add_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("add_int64 0%s9223372036854775807 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_0_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("add_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("add_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("add_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(-9223372036854775807); got != -9223372036854775806 {
-               fmt.Printf("add_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(-9223372036854775807); got != -9223372036854775806 {
-               fmt.Printf("add_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("add_int64 1%s-4294967296 = %d, wanted -4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("add_int64 -4294967296%s1 = %d, wanted -4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(-1); got != 0 {
-               fmt.Printf("add_int64 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(-1); got != 0 {
-               fmt.Printf("add_int64 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(0); got != 1 {
-               fmt.Printf("add_int64 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(0); got != 1 {
-               fmt.Printf("add_int64 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(1); got != 2 {
-               fmt.Printf("add_int64 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(1); got != 2 {
-               fmt.Printf("add_int64 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("add_int64 1%s4294967296 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("add_int64 4294967296%s1 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("add_int64 1%s9223372036854775806 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("add_int64 9223372036854775806%s1 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int64_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("add_int64 1%s9223372036854775807 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_1_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("add_int64 9223372036854775807%s1 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("add_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("add_int64 -9223372036854775808%s4294967296 = %d, wanted -9223372032559808512\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(-9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("add_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(-9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("add_int64 -9223372036854775807%s4294967296 = %d, wanted -9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("add_int64 4294967296%s-4294967296 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(-4294967296); got != 0 {
-               fmt.Printf("add_int64 -4294967296%s4294967296 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(-1); got != 4294967295 {
-               fmt.Printf("add_int64 4294967296%s-1 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(-1); got != 4294967295 {
-               fmt.Printf("add_int64 -1%s4294967296 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(0); got != 4294967296 {
-               fmt.Printf("add_int64 4294967296%s0 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(0); got != 4294967296 {
-               fmt.Printf("add_int64 0%s4294967296 = %d, wanted 4294967296\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(1); got != 4294967297 {
-               fmt.Printf("add_int64 4294967296%s1 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(1); got != 4294967297 {
-               fmt.Printf("add_int64 1%s4294967296 = %d, wanted 4294967297\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(4294967296); got != 8589934592 {
-               fmt.Printf("add_int64 4294967296%s4294967296 = %d, wanted 8589934592\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(4294967296); got != 8589934592 {
-               fmt.Printf("add_int64 4294967296%s4294967296 = %d, wanted 8589934592\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(9223372036854775806); got != -9223372032559808514 {
-               fmt.Printf("add_int64 4294967296%s9223372036854775806 = %d, wanted -9223372032559808514\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(9223372036854775806); got != -9223372032559808514 {
-               fmt.Printf("add_int64 9223372036854775806%s4294967296 = %d, wanted -9223372032559808514\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967296_int64_ssa(9223372036854775807); got != -9223372032559808513 {
-               fmt.Printf("add_int64 4294967296%s9223372036854775807 = %d, wanted -9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_4294967296_ssa(9223372036854775807); got != -9223372032559808513 {
-               fmt.Printf("add_int64 9223372036854775807%s4294967296 = %d, wanted -9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("add_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("add_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("add_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("add_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(-4294967296); got != 9223372032559808510 {
-               fmt.Printf("add_int64 9223372036854775806%s-4294967296 = %d, wanted 9223372032559808510\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(-4294967296); got != 9223372032559808510 {
-               fmt.Printf("add_int64 -4294967296%s9223372036854775806 = %d, wanted 9223372032559808510\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(-1); got != 9223372036854775805 {
-               fmt.Printf("add_int64 9223372036854775806%s-1 = %d, wanted 9223372036854775805\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(-1); got != 9223372036854775805 {
-               fmt.Printf("add_int64 -1%s9223372036854775806 = %d, wanted 9223372036854775805\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(0); got != 9223372036854775806 {
-               fmt.Printf("add_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(0); got != 9223372036854775806 {
-               fmt.Printf("add_int64 0%s9223372036854775806 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("add_int64 9223372036854775806%s1 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("add_int64 1%s9223372036854775806 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(4294967296); got != -9223372032559808514 {
-               fmt.Printf("add_int64 9223372036854775806%s4294967296 = %d, wanted -9223372032559808514\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(4294967296); got != -9223372032559808514 {
-               fmt.Printf("add_int64 4294967296%s9223372036854775806 = %d, wanted -9223372032559808514\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(9223372036854775806); got != -4 {
-               fmt.Printf("add_int64 9223372036854775806%s9223372036854775806 = %d, wanted -4\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(9223372036854775806); got != -4 {
-               fmt.Printf("add_int64 9223372036854775806%s9223372036854775806 = %d, wanted -4\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775806_int64_ssa(9223372036854775807); got != -3 {
-               fmt.Printf("add_int64 9223372036854775806%s9223372036854775807 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775806_ssa(9223372036854775807); got != -3 {
-               fmt.Printf("add_int64 9223372036854775807%s9223372036854775806 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("add_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("add_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("add_int64 9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("add_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(-4294967296); got != 9223372032559808511 {
-               fmt.Printf("add_int64 9223372036854775807%s-4294967296 = %d, wanted 9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(-4294967296); got != 9223372032559808511 {
-               fmt.Printf("add_int64 -4294967296%s9223372036854775807 = %d, wanted 9223372032559808511\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(-1); got != 9223372036854775806 {
-               fmt.Printf("add_int64 9223372036854775807%s-1 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(-1); got != 9223372036854775806 {
-               fmt.Printf("add_int64 -1%s9223372036854775807 = %d, wanted 9223372036854775806\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("add_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("add_int64 0%s9223372036854775807 = %d, wanted 9223372036854775807\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("add_int64 9223372036854775807%s1 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("add_int64 1%s9223372036854775807 = %d, wanted -9223372036854775808\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(4294967296); got != -9223372032559808513 {
-               fmt.Printf("add_int64 9223372036854775807%s4294967296 = %d, wanted -9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(4294967296); got != -9223372032559808513 {
-               fmt.Printf("add_int64 4294967296%s9223372036854775807 = %d, wanted -9223372032559808513\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(9223372036854775806); got != -3 {
-               fmt.Printf("add_int64 9223372036854775807%s9223372036854775806 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(9223372036854775806); got != -3 {
-               fmt.Printf("add_int64 9223372036854775806%s9223372036854775807 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_9223372036854775807_int64_ssa(9223372036854775807); got != -2 {
-               fmt.Printf("add_int64 9223372036854775807%s9223372036854775807 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int64_9223372036854775807_ssa(9223372036854775807); got != -2 {
-               fmt.Printf("add_int64 9223372036854775807%s9223372036854775807 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(-4294967296); got != -9223372032559808512 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-4294967296 = %d, wanted -9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("sub_int64 -4294967296%s-9223372036854775808 = %d, wanted 9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 -1%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 -9223372036854775808%s1 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(4294967296); got != 9223372032559808512 {
-               fmt.Printf("sub_int64 -9223372036854775808%s4294967296 = %d, wanted 9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(4294967296); got != -9223372032559808512 {
-               fmt.Printf("sub_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(9223372036854775806); got != 2 {
-               fmt.Printf("sub_int64 -9223372036854775808%s9223372036854775806 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("sub_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775808_int64_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("sub_int64 -9223372036854775808%s9223372036854775807 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775808_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("sub_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(-4294967296); got != -9223372032559808511 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-4294967296 = %d, wanted -9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(-4294967296); got != 9223372032559808511 {
-               fmt.Printf("sub_int64 -4294967296%s-9223372036854775807 = %d, wanted 9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(-1); got != -9223372036854775806 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-1 = %d, wanted -9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(-1); got != 9223372036854775806 {
-               fmt.Printf("sub_int64 -1%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 0%s-9223372036854775807 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(4294967296); got != 9223372032559808513 {
-               fmt.Printf("sub_int64 -9223372036854775807%s4294967296 = %d, wanted 9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(4294967296); got != -9223372032559808513 {
-               fmt.Printf("sub_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(9223372036854775806); got != 3 {
-               fmt.Printf("sub_int64 -9223372036854775807%s9223372036854775806 = %d, wanted 3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(9223372036854775806); got != -3 {
-               fmt.Printf("sub_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg9223372036854775807_int64_ssa(9223372036854775807); got != 2 {
-               fmt.Printf("sub_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg9223372036854775807_ssa(9223372036854775807); got != -2 {
-               fmt.Printf("sub_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(-9223372036854775808); got != 9223372032559808512 {
-               fmt.Printf("sub_int64 -4294967296%s-9223372036854775808 = %d, wanted 9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-4294967296 = %d, wanted -9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(-9223372036854775807); got != 9223372032559808511 {
-               fmt.Printf("sub_int64 -4294967296%s-9223372036854775807 = %d, wanted 9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(-9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-4294967296 = %d, wanted -9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("sub_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(-4294967296); got != 0 {
-               fmt.Printf("sub_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(-1); got != -4294967295 {
-               fmt.Printf("sub_int64 -4294967296%s-1 = %d, wanted -4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(-1); got != 4294967295 {
-               fmt.Printf("sub_int64 -1%s-4294967296 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(0); got != -4294967296 {
-               fmt.Printf("sub_int64 -4294967296%s0 = %d, wanted -4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(0); got != 4294967296 {
-               fmt.Printf("sub_int64 0%s-4294967296 = %d, wanted 4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(1); got != -4294967297 {
-               fmt.Printf("sub_int64 -4294967296%s1 = %d, wanted -4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(1); got != 4294967297 {
-               fmt.Printf("sub_int64 1%s-4294967296 = %d, wanted 4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(4294967296); got != -8589934592 {
-               fmt.Printf("sub_int64 -4294967296%s4294967296 = %d, wanted -8589934592\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(4294967296); got != 8589934592 {
-               fmt.Printf("sub_int64 4294967296%s-4294967296 = %d, wanted 8589934592\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(9223372036854775806); got != 9223372032559808514 {
-               fmt.Printf("sub_int64 -4294967296%s9223372036854775806 = %d, wanted 9223372032559808514\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(9223372036854775806); got != -9223372032559808514 {
-               fmt.Printf("sub_int64 9223372036854775806%s-4294967296 = %d, wanted -9223372032559808514\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg4294967296_int64_ssa(9223372036854775807); got != 9223372032559808513 {
-               fmt.Printf("sub_int64 -4294967296%s9223372036854775807 = %d, wanted 9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg4294967296_ssa(9223372036854775807); got != -9223372032559808513 {
-               fmt.Printf("sub_int64 9223372036854775807%s-4294967296 = %d, wanted -9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(-9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 -1%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(-9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("sub_int64 -1%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(-9223372036854775807); got != -9223372036854775806 {
-               fmt.Printf("sub_int64 -9223372036854775807%s-1 = %d, wanted -9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(-4294967296); got != 4294967295 {
-               fmt.Printf("sub_int64 -1%s-4294967296 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("sub_int64 -4294967296%s-1 = %d, wanted -4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(-1); got != 0 {
-               fmt.Printf("sub_int64 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("sub_int64 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(0); got != -1 {
-               fmt.Printf("sub_int64 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(0); got != 1 {
-               fmt.Printf("sub_int64 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(1); got != -2 {
-               fmt.Printf("sub_int64 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(1); got != 2 {
-               fmt.Printf("sub_int64 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(4294967296); got != -4294967297 {
-               fmt.Printf("sub_int64 -1%s4294967296 = %d, wanted -4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("sub_int64 4294967296%s-1 = %d, wanted 4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(9223372036854775806); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 -1%s9223372036854775806 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 9223372036854775806%s-1 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int64_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 -1%s9223372036854775807 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_Neg1_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(-9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 0%s-9223372036854775807 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("sub_int64 0%s-4294967296 = %d, wanted 4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("sub_int64 -4294967296%s0 = %d, wanted -4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(-1); got != 1 {
-               fmt.Printf("sub_int64 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(-1); got != -1 {
-               fmt.Printf("sub_int64 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(0); got != 0 {
-               fmt.Printf("sub_int64 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(0); got != 0 {
-               fmt.Printf("sub_int64 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(1); got != -1 {
-               fmt.Printf("sub_int64 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(1); got != 1 {
-               fmt.Printf("sub_int64 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("sub_int64 0%s4294967296 = %d, wanted -4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("sub_int64 4294967296%s0 = %d, wanted 4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(9223372036854775806); got != -9223372036854775806 {
-               fmt.Printf("sub_int64 0%s9223372036854775806 = %d, wanted -9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("sub_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int64_ssa(9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 0%s9223372036854775807 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_0_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(-9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 -9223372036854775808%s1 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(-4294967296); got != 4294967297 {
-               fmt.Printf("sub_int64 1%s-4294967296 = %d, wanted 4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(-4294967296); got != -4294967297 {
-               fmt.Printf("sub_int64 -4294967296%s1 = %d, wanted -4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(-1); got != 2 {
-               fmt.Printf("sub_int64 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(-1); got != -2 {
-               fmt.Printf("sub_int64 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(0); got != 1 {
-               fmt.Printf("sub_int64 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(0); got != -1 {
-               fmt.Printf("sub_int64 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(1); got != 0 {
-               fmt.Printf("sub_int64 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(1); got != 0 {
-               fmt.Printf("sub_int64 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(4294967296); got != -4294967295 {
-               fmt.Printf("sub_int64 1%s4294967296 = %d, wanted -4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("sub_int64 4294967296%s1 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(9223372036854775806); got != -9223372036854775805 {
-               fmt.Printf("sub_int64 1%s9223372036854775806 = %d, wanted -9223372036854775805\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(9223372036854775806); got != 9223372036854775805 {
-               fmt.Printf("sub_int64 9223372036854775806%s1 = %d, wanted 9223372036854775805\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int64_ssa(9223372036854775807); got != -9223372036854775806 {
-               fmt.Printf("sub_int64 1%s9223372036854775807 = %d, wanted -9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_1_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("sub_int64 9223372036854775807%s1 = %d, wanted 9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("sub_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(-9223372036854775808); got != 9223372032559808512 {
-               fmt.Printf("sub_int64 -9223372036854775808%s4294967296 = %d, wanted 9223372032559808512\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(-9223372036854775807); got != -9223372032559808513 {
-               fmt.Printf("sub_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(-9223372036854775807); got != 9223372032559808513 {
-               fmt.Printf("sub_int64 -9223372036854775807%s4294967296 = %d, wanted 9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(-4294967296); got != 8589934592 {
-               fmt.Printf("sub_int64 4294967296%s-4294967296 = %d, wanted 8589934592\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(-4294967296); got != -8589934592 {
-               fmt.Printf("sub_int64 -4294967296%s4294967296 = %d, wanted -8589934592\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(-1); got != 4294967297 {
-               fmt.Printf("sub_int64 4294967296%s-1 = %d, wanted 4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(-1); got != -4294967297 {
-               fmt.Printf("sub_int64 -1%s4294967296 = %d, wanted -4294967297\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(0); got != 4294967296 {
-               fmt.Printf("sub_int64 4294967296%s0 = %d, wanted 4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(0); got != -4294967296 {
-               fmt.Printf("sub_int64 0%s4294967296 = %d, wanted -4294967296\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(1); got != 4294967295 {
-               fmt.Printf("sub_int64 4294967296%s1 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(1); got != -4294967295 {
-               fmt.Printf("sub_int64 1%s4294967296 = %d, wanted -4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("sub_int64 4294967296%s4294967296 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("sub_int64 4294967296%s4294967296 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(9223372036854775806); got != -9223372032559808510 {
-               fmt.Printf("sub_int64 4294967296%s9223372036854775806 = %d, wanted -9223372032559808510\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(9223372036854775806); got != 9223372032559808510 {
-               fmt.Printf("sub_int64 9223372036854775806%s4294967296 = %d, wanted 9223372032559808510\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967296_int64_ssa(9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("sub_int64 4294967296%s9223372036854775807 = %d, wanted -9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_4294967296_ssa(9223372036854775807); got != 9223372032559808511 {
-               fmt.Printf("sub_int64 9223372036854775807%s4294967296 = %d, wanted 9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("sub_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(-9223372036854775808); got != 2 {
-               fmt.Printf("sub_int64 -9223372036854775808%s9223372036854775806 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(-9223372036854775807); got != -3 {
-               fmt.Printf("sub_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(-9223372036854775807); got != 3 {
-               fmt.Printf("sub_int64 -9223372036854775807%s9223372036854775806 = %d, wanted 3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(-4294967296); got != -9223372032559808514 {
-               fmt.Printf("sub_int64 9223372036854775806%s-4294967296 = %d, wanted -9223372032559808514\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(-4294967296); got != 9223372032559808514 {
-               fmt.Printf("sub_int64 -4294967296%s9223372036854775806 = %d, wanted 9223372032559808514\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 9223372036854775806%s-1 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 -1%s9223372036854775806 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(0); got != 9223372036854775806 {
-               fmt.Printf("sub_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(0); got != -9223372036854775806 {
-               fmt.Printf("sub_int64 0%s9223372036854775806 = %d, wanted -9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(1); got != 9223372036854775805 {
-               fmt.Printf("sub_int64 9223372036854775806%s1 = %d, wanted 9223372036854775805\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(1); got != -9223372036854775805 {
-               fmt.Printf("sub_int64 1%s9223372036854775806 = %d, wanted -9223372036854775805\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(4294967296); got != 9223372032559808510 {
-               fmt.Printf("sub_int64 9223372036854775806%s4294967296 = %d, wanted 9223372032559808510\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(4294967296); got != -9223372032559808510 {
-               fmt.Printf("sub_int64 4294967296%s9223372036854775806 = %d, wanted -9223372032559808510\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("sub_int64 9223372036854775806%s9223372036854775806 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("sub_int64 9223372036854775806%s9223372036854775806 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775806_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("sub_int64 9223372036854775806%s9223372036854775807 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775806_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("sub_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("sub_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("sub_int64 -9223372036854775808%s9223372036854775807 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(-9223372036854775807); got != -2 {
-               fmt.Printf("sub_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(-9223372036854775807); got != 2 {
-               fmt.Printf("sub_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(-4294967296); got != -9223372032559808513 {
-               fmt.Printf("sub_int64 9223372036854775807%s-4294967296 = %d, wanted -9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(-4294967296); got != 9223372032559808513 {
-               fmt.Printf("sub_int64 -4294967296%s9223372036854775807 = %d, wanted 9223372032559808513\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("sub_int64 -1%s9223372036854775807 = %d, wanted -9223372036854775808\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("sub_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("sub_int64 0%s9223372036854775807 = %d, wanted -9223372036854775807\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(1); got != 9223372036854775806 {
-               fmt.Printf("sub_int64 9223372036854775807%s1 = %d, wanted 9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(1); got != -9223372036854775806 {
-               fmt.Printf("sub_int64 1%s9223372036854775807 = %d, wanted -9223372036854775806\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(4294967296); got != 9223372032559808511 {
-               fmt.Printf("sub_int64 9223372036854775807%s4294967296 = %d, wanted 9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(4294967296); got != -9223372032559808511 {
-               fmt.Printf("sub_int64 4294967296%s9223372036854775807 = %d, wanted -9223372032559808511\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("sub_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("sub_int64 9223372036854775806%s9223372036854775807 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_9223372036854775807_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("sub_int64 9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int64_9223372036854775807_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("sub_int64 9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("div_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("div_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("div_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(-4294967296); got != 2147483648 {
-               fmt.Printf("div_int64 -9223372036854775808%s-4294967296 = %d, wanted 2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(-4294967296); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("div_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775808\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(-1); got != 0 {
-               fmt.Printf("div_int64 -1%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("div_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775808\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(1); got != 0 {
-               fmt.Printf("div_int64 1%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(4294967296); got != -2147483648 {
-               fmt.Printf("div_int64 -9223372036854775808%s4294967296 = %d, wanted -2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("div_int64 4294967296%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775808_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775808_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 9223372036854775807%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("div_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("div_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("div_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(-4294967296); got != 2147483647 {
-               fmt.Printf("div_int64 -9223372036854775807%s-4294967296 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(-4294967296); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("div_int64 -9223372036854775807%s-1 = %d, wanted 9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(-1); got != 0 {
-               fmt.Printf("div_int64 -1%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("div_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(1); got != 0 {
-               fmt.Printf("div_int64 1%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(4294967296); got != -2147483647 {
-               fmt.Printf("div_int64 -9223372036854775807%s4294967296 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(4294967296); got != 0 {
-               fmt.Printf("div_int64 4294967296%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg9223372036854775807_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg9223372036854775807_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("div_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(-9223372036854775808); got != 2147483648 {
-               fmt.Printf("div_int64 -9223372036854775808%s-4294967296 = %d, wanted 2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(-9223372036854775807); got != 2147483647 {
-               fmt.Printf("div_int64 -9223372036854775807%s-4294967296 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(-4294967296); got != 1 {
-               fmt.Printf("div_int64 -4294967296%s-4294967296 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(-4294967296); got != 1 {
-               fmt.Printf("div_int64 -4294967296%s-4294967296 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(-1); got != 4294967296 {
-               fmt.Printf("div_int64 -4294967296%s-1 = %d, wanted 4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(-1); got != 0 {
-               fmt.Printf("div_int64 -1%s-4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s-4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(1); got != -4294967296 {
-               fmt.Printf("div_int64 -4294967296%s1 = %d, wanted -4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(1); got != 0 {
-               fmt.Printf("div_int64 1%s-4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(4294967296); got != -1 {
-               fmt.Printf("div_int64 -4294967296%s4294967296 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(4294967296); got != -1 {
-               fmt.Printf("div_int64 4294967296%s-4294967296 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(9223372036854775806); got != -2147483647 {
-               fmt.Printf("div_int64 9223372036854775806%s-4294967296 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg4294967296_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg4294967296_ssa(9223372036854775807); got != -2147483647 {
-               fmt.Printf("div_int64 9223372036854775807%s-4294967296 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 -1%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("div_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775808\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 -1%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(-9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("div_int64 -9223372036854775807%s-1 = %d, wanted 9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("div_int64 -1%s-4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("div_int64 -4294967296%s-1 = %d, wanted 4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(-1); got != 1 {
-               fmt.Printf("div_int64 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("div_int64 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(1); got != -1 {
-               fmt.Printf("div_int64 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(1); got != -1 {
-               fmt.Printf("div_int64 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("div_int64 -1%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("div_int64 4294967296%s-1 = %d, wanted -4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 -1%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(9223372036854775806); got != -9223372036854775806 {
-               fmt.Printf("div_int64 9223372036854775806%s-1 = %d, wanted -9223372036854775806\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 -1%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_Neg1_ssa(9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("div_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 0%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 0%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("div_int64 0%s-4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(-1); got != 0 {
-               fmt.Printf("div_int64 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(1); got != 0 {
-               fmt.Printf("div_int64 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("div_int64 0%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 0%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 0%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 1%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("div_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775808\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 1%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("div_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("div_int64 1%s-4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("div_int64 -4294967296%s1 = %d, wanted -4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(-1); got != -1 {
-               fmt.Printf("div_int64 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(-1); got != -1 {
-               fmt.Printf("div_int64 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(1); got != 1 {
-               fmt.Printf("div_int64 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(1); got != 1 {
-               fmt.Printf("div_int64 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("div_int64 1%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("div_int64 4294967296%s1 = %d, wanted 4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 1%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("div_int64 9223372036854775806%s1 = %d, wanted 9223372036854775806\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 1%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_1_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("div_int64 9223372036854775807%s1 = %d, wanted 9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 4294967296%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(-9223372036854775808); got != -2147483648 {
-               fmt.Printf("div_int64 -9223372036854775808%s4294967296 = %d, wanted -2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 4294967296%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(-9223372036854775807); got != -2147483647 {
-               fmt.Printf("div_int64 -9223372036854775807%s4294967296 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(-4294967296); got != -1 {
-               fmt.Printf("div_int64 4294967296%s-4294967296 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(-4294967296); got != -1 {
-               fmt.Printf("div_int64 -4294967296%s4294967296 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(-1); got != -4294967296 {
-               fmt.Printf("div_int64 4294967296%s-1 = %d, wanted -4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(-1); got != 0 {
-               fmt.Printf("div_int64 -1%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(1); got != 4294967296 {
-               fmt.Printf("div_int64 4294967296%s1 = %d, wanted 4294967296\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(1); got != 0 {
-               fmt.Printf("div_int64 1%s4294967296 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(4294967296); got != 1 {
-               fmt.Printf("div_int64 4294967296%s4294967296 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(4294967296); got != 1 {
-               fmt.Printf("div_int64 4294967296%s4294967296 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 4294967296%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(9223372036854775806); got != 2147483647 {
-               fmt.Printf("div_int64 9223372036854775806%s4294967296 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967296_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 4294967296%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_4294967296_ssa(9223372036854775807); got != 2147483647 {
-               fmt.Printf("div_int64 9223372036854775807%s4294967296 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(-4294967296); got != -2147483647 {
-               fmt.Printf("div_int64 9223372036854775806%s-4294967296 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(-4294967296); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(-1); got != -9223372036854775806 {
-               fmt.Printf("div_int64 9223372036854775806%s-1 = %d, wanted -9223372036854775806\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(-1); got != 0 {
-               fmt.Printf("div_int64 -1%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(1); got != 9223372036854775806 {
-               fmt.Printf("div_int64 9223372036854775806%s1 = %d, wanted 9223372036854775806\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(1); got != 0 {
-               fmt.Printf("div_int64 1%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(4294967296); got != 2147483647 {
-               fmt.Printf("div_int64 9223372036854775806%s4294967296 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(4294967296); got != 0 {
-               fmt.Printf("div_int64 4294967296%s9223372036854775806 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("div_int64 9223372036854775806%s9223372036854775806 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("div_int64 9223372036854775806%s9223372036854775806 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775806_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("div_int64 9223372036854775806%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775806_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("div_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("div_int64 9223372036854775807%s-9223372036854775808 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("div_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("div_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(-4294967296); got != -2147483647 {
-               fmt.Printf("div_int64 9223372036854775807%s-4294967296 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(-4294967296); got != 0 {
-               fmt.Printf("div_int64 -4294967296%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("div_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(-1); got != 0 {
-               fmt.Printf("div_int64 -1%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("div_int64 0%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("div_int64 9223372036854775807%s1 = %d, wanted 9223372036854775807\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(1); got != 0 {
-               fmt.Printf("div_int64 1%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(4294967296); got != 2147483647 {
-               fmt.Printf("div_int64 9223372036854775807%s4294967296 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(4294967296); got != 0 {
-               fmt.Printf("div_int64 4294967296%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("div_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("div_int64 9223372036854775806%s9223372036854775807 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_9223372036854775807_int64_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("div_int64 9223372036854775807%s9223372036854775807 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int64_9223372036854775807_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("div_int64 9223372036854775807%s9223372036854775807 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -1%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s9223372036854775806 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mul_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775808_int64_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775808_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s-9223372036854775807 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-1 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 -1%s-9223372036854775807 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775807%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s-9223372036854775807 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 -9223372036854775807%s4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 4294967296%s-9223372036854775807 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 -9223372036854775807%s9223372036854775806 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg9223372036854775807_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("mul_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg9223372036854775807_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("mul_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(-9223372036854775807); got != -4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s-9223372036854775807 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(-9223372036854775807); got != -4294967296 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(-1); got != 4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s-1 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(-1); got != 4294967296 {
-               fmt.Printf("mul_int64 -1%s-4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(1); got != -4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s1 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(1); got != -4294967296 {
-               fmt.Printf("mul_int64 1%s-4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(9223372036854775806); got != 8589934592 {
-               fmt.Printf("mul_int64 -4294967296%s9223372036854775806 = %d, wanted 8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(9223372036854775806); got != 8589934592 {
-               fmt.Printf("mul_int64 9223372036854775806%s-4294967296 = %d, wanted 8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg4294967296_int64_ssa(9223372036854775807); got != 4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s9223372036854775807 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg4294967296_ssa(9223372036854775807); got != 4294967296 {
-               fmt.Printf("mul_int64 9223372036854775807%s-4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -1%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(-9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 -1%s-9223372036854775807 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(-9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 -9223372036854775807%s-1 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 -1%s-4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s-1 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(-1); got != 1 {
-               fmt.Printf("mul_int64 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("mul_int64 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(1); got != -1 {
-               fmt.Printf("mul_int64 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(1); got != -1 {
-               fmt.Printf("mul_int64 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 -1%s4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 4294967296%s-1 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(9223372036854775806); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 -1%s9223372036854775806 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(9223372036854775806); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s-1 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int64_ssa(9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 -1%s9223372036854775807 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_Neg1_ssa(9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 0%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mul_int64 0%s-9223372036854775807 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775807%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 0%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(-1); got != 0 {
-               fmt.Printf("mul_int64 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(-1); got != 0 {
-               fmt.Printf("mul_int64 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(1); got != 0 {
-               fmt.Printf("mul_int64 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(1); got != 0 {
-               fmt.Printf("mul_int64 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 0%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mul_int64 0%s9223372036854775806 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mul_int64 9223372036854775806%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mul_int64 0%s9223372036854775807 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_0_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mul_int64 9223372036854775807%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 1%s-4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s1 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(-1); got != -1 {
-               fmt.Printf("mul_int64 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(-1); got != -1 {
-               fmt.Printf("mul_int64 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(1); got != 1 {
-               fmt.Printf("mul_int64 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(1); got != 1 {
-               fmt.Printf("mul_int64 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 1%s4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 4294967296%s1 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 1%s9223372036854775806 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s1 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 1%s9223372036854775807 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_1_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 9223372036854775807%s1 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(-9223372036854775807); got != 4294967296 {
-               fmt.Printf("mul_int64 4294967296%s-9223372036854775807 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(-9223372036854775807); got != 4294967296 {
-               fmt.Printf("mul_int64 -9223372036854775807%s4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s-4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(-4294967296); got != 0 {
-               fmt.Printf("mul_int64 -4294967296%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(-1); got != -4294967296 {
-               fmt.Printf("mul_int64 4294967296%s-1 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(-1); got != -4294967296 {
-               fmt.Printf("mul_int64 -1%s4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(1); got != 4294967296 {
-               fmt.Printf("mul_int64 4294967296%s1 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(1); got != 4294967296 {
-               fmt.Printf("mul_int64 1%s4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("mul_int64 4294967296%s4294967296 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(9223372036854775806); got != -8589934592 {
-               fmt.Printf("mul_int64 4294967296%s9223372036854775806 = %d, wanted -8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(9223372036854775806); got != -8589934592 {
-               fmt.Printf("mul_int64 9223372036854775806%s4294967296 = %d, wanted -8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967296_int64_ssa(9223372036854775807); got != -4294967296 {
-               fmt.Printf("mul_int64 4294967296%s9223372036854775807 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_4294967296_ssa(9223372036854775807); got != -4294967296 {
-               fmt.Printf("mul_int64 9223372036854775807%s4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mul_int64 -9223372036854775808%s9223372036854775806 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(-9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(-9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 -9223372036854775807%s9223372036854775806 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(-4294967296); got != 8589934592 {
-               fmt.Printf("mul_int64 9223372036854775806%s-4294967296 = %d, wanted 8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(-4294967296); got != 8589934592 {
-               fmt.Printf("mul_int64 -4294967296%s9223372036854775806 = %d, wanted 8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(-1); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s-1 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(-1); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 -1%s9223372036854775806 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 9223372036854775806%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s9223372036854775806 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(1); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s1 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(1); got != 9223372036854775806 {
-               fmt.Printf("mul_int64 1%s9223372036854775806 = %d, wanted 9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(4294967296); got != -8589934592 {
-               fmt.Printf("mul_int64 9223372036854775806%s4294967296 = %d, wanted -8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(4294967296); got != -8589934592 {
-               fmt.Printf("mul_int64 4294967296%s9223372036854775806 = %d, wanted -8589934592\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(9223372036854775806); got != 4 {
-               fmt.Printf("mul_int64 9223372036854775806%s9223372036854775806 = %d, wanted 4\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(9223372036854775806); got != 4 {
-               fmt.Printf("mul_int64 9223372036854775806%s9223372036854775806 = %d, wanted 4\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775806_int64_ssa(9223372036854775807); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s9223372036854775807 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775806_ssa(9223372036854775807); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775807%s9223372036854775806 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("mul_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -9223372036854775808\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("mul_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("mul_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 9223372036854775807%s-4294967296 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("mul_int64 -4294967296%s9223372036854775807 = %d, wanted 4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("mul_int64 -1%s9223372036854775807 = %d, wanted -9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 9223372036854775807%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("mul_int64 0%s9223372036854775807 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 9223372036854775807%s1 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("mul_int64 1%s9223372036854775807 = %d, wanted 9223372036854775807\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 9223372036854775807%s4294967296 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("mul_int64 4294967296%s9223372036854775807 = %d, wanted -4294967296\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(9223372036854775806); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775807%s9223372036854775806 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(9223372036854775806); got != -9223372036854775806 {
-               fmt.Printf("mul_int64 9223372036854775806%s9223372036854775807 = %d, wanted -9223372036854775806\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_9223372036854775807_int64_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("mul_int64 9223372036854775807%s9223372036854775807 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int64_9223372036854775807_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("mul_int64 9223372036854775807%s9223372036854775807 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s-9223372036854775808 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(-1); got != -1 {
-               fmt.Printf("mod_int64 -1%s-9223372036854775808 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s-9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(1); got != 1 {
-               fmt.Printf("mod_int64 1%s-9223372036854775808 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s-9223372036854775808 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("mod_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("mod_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 9223372036854775806\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775808_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("mod_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775808_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("mod_int64 9223372036854775807%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-4294967296 = %d, wanted -4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s-9223372036854775807 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(-1); got != -1 {
-               fmt.Printf("mod_int64 -1%s-9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s-9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(1); got != 1 {
-               fmt.Printf("mod_int64 1%s-9223372036854775807 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(4294967296); got != -4294967295 {
-               fmt.Printf("mod_int64 -9223372036854775807%s4294967296 = %d, wanted -4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s-9223372036854775807 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("mod_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("mod_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg9223372036854775807_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg9223372036854775807_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(-9223372036854775808); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s-9223372036854775808 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(-9223372036854775807); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s-9223372036854775807 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(-9223372036854775807); got != -4294967295 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-4294967296 = %d, wanted -4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(-1); got != -1 {
-               fmt.Printf("mod_int64 -1%s-4294967296 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(1); got != 1 {
-               fmt.Printf("mod_int64 1%s-4294967296 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(9223372036854775806); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s9223372036854775806 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(9223372036854775806); got != 4294967294 {
-               fmt.Printf("mod_int64 9223372036854775806%s-4294967296 = %d, wanted 4294967294\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg4294967296_int64_ssa(9223372036854775807); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s9223372036854775807 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg4294967296_ssa(9223372036854775807); got != 4294967295 {
-               fmt.Printf("mod_int64 9223372036854775807%s-4294967296 = %d, wanted 4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("mod_int64 -1%s-9223372036854775808 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("mod_int64 -1%s-9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(-4294967296); got != -1 {
-               fmt.Printf("mod_int64 -1%s-4294967296 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(4294967296); got != -1 {
-               fmt.Printf("mod_int64 -1%s4294967296 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("mod_int64 -1%s9223372036854775806 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775806%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("mod_int64 -1%s9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_Neg1_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mod_int64 0%s-9223372036854775808 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 0%s-9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 0%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 0%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mod_int64 0%s9223372036854775806 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 0%s9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("mod_int64 1%s-9223372036854775808 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("mod_int64 1%s-9223372036854775807 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(-4294967296); got != 1 {
-               fmt.Printf("mod_int64 1%s-4294967296 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(4294967296); got != 1 {
-               fmt.Printf("mod_int64 1%s4294967296 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("mod_int64 1%s9223372036854775806 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775806%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int64_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("mod_int64 1%s9223372036854775807 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_1_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(-9223372036854775808); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s-9223372036854775808 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775808%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(-9223372036854775807); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s-9223372036854775807 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(-9223372036854775807); got != -4294967295 {
-               fmt.Printf("mod_int64 -9223372036854775807%s4294967296 = %d, wanted -4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s-4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(-4294967296); got != 0 {
-               fmt.Printf("mod_int64 -4294967296%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(-1); got != -1 {
-               fmt.Printf("mod_int64 -1%s4294967296 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(1); got != 1 {
-               fmt.Printf("mod_int64 1%s4294967296 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("mod_int64 4294967296%s4294967296 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(9223372036854775806); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s9223372036854775806 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(9223372036854775806); got != 4294967294 {
-               fmt.Printf("mod_int64 9223372036854775806%s4294967296 = %d, wanted 4294967294\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967296_int64_ssa(9223372036854775807); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s9223372036854775807 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_4294967296_ssa(9223372036854775807); got != 4294967295 {
-               fmt.Printf("mod_int64 9223372036854775807%s4294967296 = %d, wanted 4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(-9223372036854775808); got != 9223372036854775806 {
-               fmt.Printf("mod_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 9223372036854775806\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("mod_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(-9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("mod_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("mod_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(-4294967296); got != 4294967294 {
-               fmt.Printf("mod_int64 9223372036854775806%s-4294967296 = %d, wanted 4294967294\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s9223372036854775806 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775806%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(-1); got != -1 {
-               fmt.Printf("mod_int64 -1%s9223372036854775806 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s9223372036854775806 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775806%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(1); got != 1 {
-               fmt.Printf("mod_int64 1%s9223372036854775806 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(4294967296); got != 4294967294 {
-               fmt.Printf("mod_int64 9223372036854775806%s4294967296 = %d, wanted 4294967294\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s9223372036854775806 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775806%s9223372036854775806 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775806%s9223372036854775806 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775806_int64_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("mod_int64 9223372036854775806%s9223372036854775807 = %d, wanted 9223372036854775806\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775806_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("mod_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(-9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("mod_int64 9223372036854775807%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("mod_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(-4294967296); got != 4294967295 {
-               fmt.Printf("mod_int64 9223372036854775807%s-4294967296 = %d, wanted 4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("mod_int64 -4294967296%s9223372036854775807 = %d, wanted -4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(-1); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(-1); got != -1 {
-               fmt.Printf("mod_int64 -1%s9223372036854775807 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("mod_int64 0%s9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(1); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(1); got != 1 {
-               fmt.Printf("mod_int64 1%s9223372036854775807 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(4294967296); got != 4294967295 {
-               fmt.Printf("mod_int64 9223372036854775807%s4294967296 = %d, wanted 4294967295\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("mod_int64 4294967296%s9223372036854775807 = %d, wanted 4294967296\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("mod_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("mod_int64 9223372036854775806%s9223372036854775807 = %d, wanted 9223372036854775806\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_9223372036854775807_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int64_9223372036854775807_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("mod_int64 9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(-4294967296); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-4294967296 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(-4294967296); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -4294967296%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -1%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(1); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(1); got != 0 {
-               fmt.Printf("and_int64 1%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 4294967296%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775808_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775808_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 9223372036854775807%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("and_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("and_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(-4294967296); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775807%s-4294967296 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(-4294967296); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -4294967296%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("and_int64 -9223372036854775807%s-1 = %d, wanted -9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("and_int64 -1%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775807%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s-9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(1); got != 1 {
-               fmt.Printf("and_int64 -9223372036854775807%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(1); got != 1 {
-               fmt.Printf("and_int64 1%s-9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775807%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 4294967296%s-9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775807%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg9223372036854775807_int64_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg9223372036854775807_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 9223372036854775807%s-9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -4294967296%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-4294967296 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -4294967296%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775807%s-4294967296 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("and_int64 -4294967296%s-4294967296 = %d, wanted -4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("and_int64 -4294967296%s-4294967296 = %d, wanted -4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(-1); got != -4294967296 {
-               fmt.Printf("and_int64 -4294967296%s-1 = %d, wanted -4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(-1); got != -4294967296 {
-               fmt.Printf("and_int64 -1%s-4294967296 = %d, wanted -4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 -4294967296%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s-4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(1); got != 0 {
-               fmt.Printf("and_int64 -4294967296%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(1); got != 0 {
-               fmt.Printf("and_int64 1%s-4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 -4294967296%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s-4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(9223372036854775806); got != 9223372032559808512 {
-               fmt.Printf("and_int64 -4294967296%s9223372036854775806 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(9223372036854775806); got != 9223372032559808512 {
-               fmt.Printf("and_int64 9223372036854775806%s-4294967296 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg4294967296_int64_ssa(9223372036854775807); got != 9223372032559808512 {
-               fmt.Printf("and_int64 -4294967296%s9223372036854775807 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg4294967296_ssa(9223372036854775807); got != 9223372032559808512 {
-               fmt.Printf("and_int64 9223372036854775807%s-4294967296 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -1%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("and_int64 -9223372036854775808%s-1 = %d, wanted -9223372036854775808\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("and_int64 -1%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("and_int64 -9223372036854775807%s-1 = %d, wanted -9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("and_int64 -1%s-4294967296 = %d, wanted -4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("and_int64 -4294967296%s-1 = %d, wanted -4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(-1); got != -1 {
-               fmt.Printf("and_int64 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("and_int64 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(1); got != 1 {
-               fmt.Printf("and_int64 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(1); got != 1 {
-               fmt.Printf("and_int64 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 -1%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s-1 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("and_int64 -1%s9223372036854775806 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775806%s-1 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("and_int64 -1%s9223372036854775807 = %d, wanted 9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_Neg1_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("and_int64 9223372036854775807%s-1 = %d, wanted 9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 0%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 0%s-9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775807%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("and_int64 0%s-4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(-4294967296); got != 0 {
-               fmt.Printf("and_int64 -4294967296%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(-1); got != 0 {
-               fmt.Printf("and_int64 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(-1); got != 0 {
-               fmt.Printf("and_int64 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(1); got != 0 {
-               fmt.Printf("and_int64 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(1); got != 0 {
-               fmt.Printf("and_int64 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 0%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 4294967296%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 0%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 0%s9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_0_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 9223372036854775807%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 1%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 1%s-9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 -9223372036854775807%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("and_int64 1%s-4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(-4294967296); got != 0 {
-               fmt.Printf("and_int64 -4294967296%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(-1); got != 1 {
-               fmt.Printf("and_int64 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(-1); got != 1 {
-               fmt.Printf("and_int64 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(1); got != 1 {
-               fmt.Printf("and_int64 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(1); got != 1 {
-               fmt.Printf("and_int64 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 1%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(4294967296); got != 0 {
-               fmt.Printf("and_int64 4294967296%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 1%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int64_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 1%s9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_1_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 9223372036854775807%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 4294967296%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 4294967296%s-9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775807%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s-4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(-4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 -4294967296%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(-1); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s-1 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(-1); got != 4294967296 {
-               fmt.Printf("and_int64 -1%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 4294967296%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(1); got != 0 {
-               fmt.Printf("and_int64 4294967296%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(1); got != 0 {
-               fmt.Printf("and_int64 1%s4294967296 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(9223372036854775806); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s9223372036854775806 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(9223372036854775806); got != 4294967296 {
-               fmt.Printf("and_int64 9223372036854775806%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967296_int64_ssa(9223372036854775807); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s9223372036854775807 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_4294967296_ssa(9223372036854775807); got != 4294967296 {
-               fmt.Printf("and_int64 9223372036854775807%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s-9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775807%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("and_int64 9223372036854775806%s-4294967296 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("and_int64 -4294967296%s9223372036854775806 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(-1); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775806%s-1 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(-1); got != 9223372036854775806 {
-               fmt.Printf("and_int64 -1%s9223372036854775806 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(1); got != 0 {
-               fmt.Printf("and_int64 9223372036854775806%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(1); got != 0 {
-               fmt.Printf("and_int64 1%s9223372036854775806 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 9223372036854775806%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s9223372036854775806 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775806%s9223372036854775806 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775806%s9223372036854775806 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775806_int64_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775806%s9223372036854775807 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775806_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775807%s9223372036854775806 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 9223372036854775807%s-9223372036854775808 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("and_int64 -9223372036854775808%s9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 9223372036854775807%s-9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("and_int64 -9223372036854775807%s9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("and_int64 9223372036854775807%s-4294967296 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("and_int64 -4294967296%s9223372036854775807 = %d, wanted 9223372032559808512\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("and_int64 9223372036854775807%s-1 = %d, wanted 9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("and_int64 -1%s9223372036854775807 = %d, wanted 9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(0); got != 0 {
-               fmt.Printf("and_int64 9223372036854775807%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(0); got != 0 {
-               fmt.Printf("and_int64 0%s9223372036854775807 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(1); got != 1 {
-               fmt.Printf("and_int64 9223372036854775807%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(1); got != 1 {
-               fmt.Printf("and_int64 1%s9223372036854775807 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 9223372036854775807%s4294967296 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("and_int64 4294967296%s9223372036854775807 = %d, wanted 4294967296\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775807%s9223372036854775806 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("and_int64 9223372036854775806%s9223372036854775807 = %d, wanted 9223372036854775806\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_9223372036854775807_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("and_int64 9223372036854775807%s9223372036854775807 = %d, wanted 9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int64_9223372036854775807_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("and_int64 9223372036854775807%s9223372036854775807 = %d, wanted 9223372036854775807\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("or_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("or_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 -9223372036854775808%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s-9223372036854775808 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775808%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s-9223372036854775808 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("or_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("or_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("or_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(4294967296); got != -9223372032559808512 {
-               fmt.Printf("or_int64 -9223372036854775808%s4294967296 = %d, wanted -9223372032559808512\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(4294967296); got != -9223372032559808512 {
-               fmt.Printf("or_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("or_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("or_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775808_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775808_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("or_int64 -9223372036854775807%s-4294967296 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("or_int64 -4294967296%s-9223372036854775807 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775807%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s-9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("or_int64 0%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("or_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(4294967296); got != -9223372032559808511 {
-               fmt.Printf("or_int64 -9223372036854775807%s4294967296 = %d, wanted -9223372032559808511\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(4294967296); got != -9223372032559808511 {
-               fmt.Printf("or_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808511\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("or_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg9223372036854775807_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg9223372036854775807_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(-9223372036854775808); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s-9223372036854775808 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(-9223372036854775808); got != -4294967296 {
-               fmt.Printf("or_int64 -9223372036854775808%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(-9223372036854775807); got != -4294967295 {
-               fmt.Printf("or_int64 -4294967296%s-9223372036854775807 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(-9223372036854775807); got != -4294967295 {
-               fmt.Printf("or_int64 -9223372036854775807%s-4294967296 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -4294967296%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s-4294967296 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(0); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s0 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(0); got != -4294967296 {
-               fmt.Printf("or_int64 0%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(1); got != -4294967295 {
-               fmt.Printf("or_int64 -4294967296%s1 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(1); got != -4294967295 {
-               fmt.Printf("or_int64 1%s-4294967296 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 4294967296%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("or_int64 -4294967296%s9223372036854775806 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("or_int64 9223372036854775806%s-4294967296 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg4294967296_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -4294967296%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg4294967296_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-4294967296 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("or_int64 -1%s-9223372036854775808 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775808%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -1%s-9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775807%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(-4294967296); got != -1 {
-               fmt.Printf("or_int64 -1%s-4294967296 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(-4294967296); got != -1 {
-               fmt.Printf("or_int64 -4294967296%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(0); got != -1 {
-               fmt.Printf("or_int64 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(0); got != -1 {
-               fmt.Printf("or_int64 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(1); got != -1 {
-               fmt.Printf("or_int64 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(1); got != -1 {
-               fmt.Printf("or_int64 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(4294967296); got != -1 {
-               fmt.Printf("or_int64 -1%s4294967296 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(4294967296); got != -1 {
-               fmt.Printf("or_int64 4294967296%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("or_int64 -1%s9223372036854775806 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("or_int64 9223372036854775806%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -1%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_Neg1_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("or_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("or_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 0%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 0%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s0 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(0); got != 0 {
-               fmt.Printf("or_int64 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(0); got != 0 {
-               fmt.Printf("or_int64 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(1); got != 1 {
-               fmt.Printf("or_int64 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(1); got != 1 {
-               fmt.Printf("or_int64 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_int64 0%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_int64 4294967296%s0 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("or_int64 0%s9223372036854775806 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("or_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 0%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_0_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("or_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("or_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("or_int64 1%s-4294967296 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("or_int64 -4294967296%s1 = %d, wanted -4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(0); got != 1 {
-               fmt.Printf("or_int64 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(0); got != 1 {
-               fmt.Printf("or_int64 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(1); got != 1 {
-               fmt.Printf("or_int64 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(1); got != 1 {
-               fmt.Printf("or_int64 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("or_int64 1%s4294967296 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("or_int64 4294967296%s1 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("or_int64 1%s9223372036854775806 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775806%s1 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 1%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_1_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s1 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("or_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("or_int64 -9223372036854775808%s4294967296 = %d, wanted -9223372032559808512\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(-9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("or_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808511\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(-9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("or_int64 -9223372036854775807%s4294967296 = %d, wanted -9223372032559808511\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 4294967296%s-4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("or_int64 -4294967296%s4294967296 = %d, wanted -4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 4294967296%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s4294967296 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(0); got != 4294967296 {
-               fmt.Printf("or_int64 4294967296%s0 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(0); got != 4294967296 {
-               fmt.Printf("or_int64 0%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(1); got != 4294967297 {
-               fmt.Printf("or_int64 4294967296%s1 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(1); got != 4294967297 {
-               fmt.Printf("or_int64 1%s4294967296 = %d, wanted 4294967297\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_int64 4294967296%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("or_int64 4294967296%s4294967296 = %d, wanted 4294967296\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("or_int64 4294967296%s9223372036854775806 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("or_int64 9223372036854775806%s4294967296 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967296_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 4294967296%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_4294967296_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s4294967296 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("or_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("or_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(-4294967296); got != -2 {
-               fmt.Printf("or_int64 9223372036854775806%s-4294967296 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(-4294967296); got != -2 {
-               fmt.Printf("or_int64 -4294967296%s9223372036854775806 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 9223372036854775806%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s9223372036854775806 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(0); got != 9223372036854775806 {
-               fmt.Printf("or_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(0); got != 9223372036854775806 {
-               fmt.Printf("or_int64 0%s9223372036854775806 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775806%s1 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("or_int64 1%s9223372036854775806 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(4294967296); got != 9223372036854775806 {
-               fmt.Printf("or_int64 9223372036854775806%s4294967296 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(4294967296); got != 9223372036854775806 {
-               fmt.Printf("or_int64 4294967296%s9223372036854775806 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("or_int64 9223372036854775806%s9223372036854775806 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("or_int64 9223372036854775806%s9223372036854775806 = %d, wanted 9223372036854775806\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775806_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775806%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775806_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s9223372036854775806 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("or_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(-4294967296); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-4294967296 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(-4294967296); got != -1 {
-               fmt.Printf("or_int64 -4294967296%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 9223372036854775807%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(-1); got != -1 {
-               fmt.Printf("or_int64 -1%s9223372036854775807 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("or_int64 0%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s1 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("or_int64 1%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(4294967296); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s4294967296 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(4294967296); got != 9223372036854775807 {
-               fmt.Printf("or_int64 4294967296%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s9223372036854775806 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775806%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_9223372036854775807_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int64_9223372036854775807_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("or_int64 9223372036854775807%s9223372036854775807 = %d, wanted 9223372036854775807\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(-9223372036854775808); got != 0 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-9223372036854775808 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(-9223372036854775807); got != 1 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-4294967296 = %d, wanted 9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(-4294967296); got != 9223372032559808512 {
-               fmt.Printf("xor_int64 -4294967296%s-9223372036854775808 = %d, wanted 9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-1 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(-1); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 -1%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(0); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(1); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(4294967296); got != -9223372032559808512 {
-               fmt.Printf("xor_int64 -9223372036854775808%s4294967296 = %d, wanted -9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(4294967296); got != -9223372032559808512 {
-               fmt.Printf("xor_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("xor_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(9223372036854775806); got != -2 {
-               fmt.Printf("xor_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775808_int64_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("xor_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775808_ssa(9223372036854775807); got != -1 {
-               fmt.Printf("xor_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-9223372036854775808 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(-9223372036854775808); got != 1 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-9223372036854775807 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(-9223372036854775807); got != 0 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-9223372036854775807 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(-4294967296); got != 9223372032559808513 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-4294967296 = %d, wanted 9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(-4294967296); got != 9223372032559808513 {
-               fmt.Printf("xor_int64 -4294967296%s-9223372036854775807 = %d, wanted 9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(-1); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-1 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(-1); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 -1%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(0); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 0%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(1); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(4294967296); got != -9223372032559808511 {
-               fmt.Printf("xor_int64 -9223372036854775807%s4294967296 = %d, wanted -9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(4294967296); got != -9223372032559808511 {
-               fmt.Printf("xor_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("xor_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(9223372036854775806); got != -1 {
-               fmt.Printf("xor_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg9223372036854775807_int64_ssa(9223372036854775807); got != -2 {
-               fmt.Printf("xor_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg9223372036854775807_ssa(9223372036854775807); got != -2 {
-               fmt.Printf("xor_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(-9223372036854775808); got != 9223372032559808512 {
-               fmt.Printf("xor_int64 -4294967296%s-9223372036854775808 = %d, wanted 9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(-9223372036854775808); got != 9223372032559808512 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-4294967296 = %d, wanted 9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(-9223372036854775807); got != 9223372032559808513 {
-               fmt.Printf("xor_int64 -4294967296%s-9223372036854775807 = %d, wanted 9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(-9223372036854775807); got != 9223372032559808513 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-4294967296 = %d, wanted 9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(-4294967296); got != 0 {
-               fmt.Printf("xor_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(-4294967296); got != 0 {
-               fmt.Printf("xor_int64 -4294967296%s-4294967296 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(-1); got != 4294967295 {
-               fmt.Printf("xor_int64 -4294967296%s-1 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(-1); got != 4294967295 {
-               fmt.Printf("xor_int64 -1%s-4294967296 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(0); got != -4294967296 {
-               fmt.Printf("xor_int64 -4294967296%s0 = %d, wanted -4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(0); got != -4294967296 {
-               fmt.Printf("xor_int64 0%s-4294967296 = %d, wanted -4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(1); got != -4294967295 {
-               fmt.Printf("xor_int64 -4294967296%s1 = %d, wanted -4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(1); got != -4294967295 {
-               fmt.Printf("xor_int64 1%s-4294967296 = %d, wanted -4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(4294967296); got != -8589934592 {
-               fmt.Printf("xor_int64 -4294967296%s4294967296 = %d, wanted -8589934592\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(4294967296); got != -8589934592 {
-               fmt.Printf("xor_int64 4294967296%s-4294967296 = %d, wanted -8589934592\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(9223372036854775806); got != -9223372032559808514 {
-               fmt.Printf("xor_int64 -4294967296%s9223372036854775806 = %d, wanted -9223372032559808514\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(9223372036854775806); got != -9223372032559808514 {
-               fmt.Printf("xor_int64 9223372036854775806%s-4294967296 = %d, wanted -9223372032559808514\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg4294967296_int64_ssa(9223372036854775807); got != -9223372032559808513 {
-               fmt.Printf("xor_int64 -4294967296%s9223372036854775807 = %d, wanted -9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg4294967296_ssa(9223372036854775807); got != -9223372032559808513 {
-               fmt.Printf("xor_int64 9223372036854775807%s-4294967296 = %d, wanted -9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(-9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 -1%s-9223372036854775808 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(-9223372036854775808); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 -9223372036854775808%s-1 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(-9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 -1%s-9223372036854775807 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(-9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 -9223372036854775807%s-1 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(-4294967296); got != 4294967295 {
-               fmt.Printf("xor_int64 -1%s-4294967296 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(-4294967296); got != 4294967295 {
-               fmt.Printf("xor_int64 -4294967296%s-1 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(-1); got != 0 {
-               fmt.Printf("xor_int64 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("xor_int64 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(0); got != -1 {
-               fmt.Printf("xor_int64 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(0); got != -1 {
-               fmt.Printf("xor_int64 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(1); got != -2 {
-               fmt.Printf("xor_int64 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(1); got != -2 {
-               fmt.Printf("xor_int64 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(4294967296); got != -4294967297 {
-               fmt.Printf("xor_int64 -1%s4294967296 = %d, wanted -4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(4294967296); got != -4294967297 {
-               fmt.Printf("xor_int64 4294967296%s-1 = %d, wanted -4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(9223372036854775806); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 -1%s9223372036854775806 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(9223372036854775806); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 9223372036854775806%s-1 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int64_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 -1%s9223372036854775807 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_Neg1_ssa(9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 0%s-9223372036854775808 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(-9223372036854775808); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 -9223372036854775808%s0 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 0%s-9223372036854775807 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(-9223372036854775807); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 -9223372036854775807%s0 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("xor_int64 0%s-4294967296 = %d, wanted -4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(-4294967296); got != -4294967296 {
-               fmt.Printf("xor_int64 -4294967296%s0 = %d, wanted -4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(-1); got != -1 {
-               fmt.Printf("xor_int64 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(-1); got != -1 {
-               fmt.Printf("xor_int64 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(0); got != 0 {
-               fmt.Printf("xor_int64 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(0); got != 0 {
-               fmt.Printf("xor_int64 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(1); got != 1 {
-               fmt.Printf("xor_int64 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(1); got != 1 {
-               fmt.Printf("xor_int64 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("xor_int64 0%s4294967296 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(4294967296); got != 4294967296 {
-               fmt.Printf("xor_int64 4294967296%s0 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 0%s9223372036854775806 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(9223372036854775806); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int64_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 0%s9223372036854775807 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_0_ssa(9223372036854775807); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 1%s-9223372036854775808 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(-9223372036854775808); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 -9223372036854775808%s1 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 1%s-9223372036854775807 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(-9223372036854775807); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 -9223372036854775807%s1 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("xor_int64 1%s-4294967296 = %d, wanted -4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(-4294967296); got != -4294967295 {
-               fmt.Printf("xor_int64 -4294967296%s1 = %d, wanted -4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(-1); got != -2 {
-               fmt.Printf("xor_int64 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(-1); got != -2 {
-               fmt.Printf("xor_int64 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(0); got != 1 {
-               fmt.Printf("xor_int64 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(0); got != 1 {
-               fmt.Printf("xor_int64 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(1); got != 0 {
-               fmt.Printf("xor_int64 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(1); got != 0 {
-               fmt.Printf("xor_int64 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("xor_int64 1%s4294967296 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(4294967296); got != 4294967297 {
-               fmt.Printf("xor_int64 4294967296%s1 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 1%s9223372036854775806 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(9223372036854775806); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 9223372036854775806%s1 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int64_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 1%s9223372036854775807 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_1_ssa(9223372036854775807); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 9223372036854775807%s1 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("xor_int64 4294967296%s-9223372036854775808 = %d, wanted -9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(-9223372036854775808); got != -9223372032559808512 {
-               fmt.Printf("xor_int64 -9223372036854775808%s4294967296 = %d, wanted -9223372032559808512\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(-9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("xor_int64 4294967296%s-9223372036854775807 = %d, wanted -9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(-9223372036854775807); got != -9223372032559808511 {
-               fmt.Printf("xor_int64 -9223372036854775807%s4294967296 = %d, wanted -9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(-4294967296); got != -8589934592 {
-               fmt.Printf("xor_int64 4294967296%s-4294967296 = %d, wanted -8589934592\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(-4294967296); got != -8589934592 {
-               fmt.Printf("xor_int64 -4294967296%s4294967296 = %d, wanted -8589934592\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(-1); got != -4294967297 {
-               fmt.Printf("xor_int64 4294967296%s-1 = %d, wanted -4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(-1); got != -4294967297 {
-               fmt.Printf("xor_int64 -1%s4294967296 = %d, wanted -4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(0); got != 4294967296 {
-               fmt.Printf("xor_int64 4294967296%s0 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(0); got != 4294967296 {
-               fmt.Printf("xor_int64 0%s4294967296 = %d, wanted 4294967296\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(1); got != 4294967297 {
-               fmt.Printf("xor_int64 4294967296%s1 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(1); got != 4294967297 {
-               fmt.Printf("xor_int64 1%s4294967296 = %d, wanted 4294967297\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(4294967296); got != 0 {
-               fmt.Printf("xor_int64 4294967296%s4294967296 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(4294967296); got != 0 {
-               fmt.Printf("xor_int64 4294967296%s4294967296 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(9223372036854775806); got != 9223372032559808510 {
-               fmt.Printf("xor_int64 4294967296%s9223372036854775806 = %d, wanted 9223372032559808510\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(9223372036854775806); got != 9223372032559808510 {
-               fmt.Printf("xor_int64 9223372036854775806%s4294967296 = %d, wanted 9223372032559808510\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967296_int64_ssa(9223372036854775807); got != 9223372032559808511 {
-               fmt.Printf("xor_int64 4294967296%s9223372036854775807 = %d, wanted 9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_4294967296_ssa(9223372036854775807); got != 9223372032559808511 {
-               fmt.Printf("xor_int64 9223372036854775807%s4294967296 = %d, wanted 9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("xor_int64 9223372036854775806%s-9223372036854775808 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(-9223372036854775808); got != -2 {
-               fmt.Printf("xor_int64 -9223372036854775808%s9223372036854775806 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("xor_int64 9223372036854775806%s-9223372036854775807 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(-9223372036854775807); got != -1 {
-               fmt.Printf("xor_int64 -9223372036854775807%s9223372036854775806 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(-4294967296); got != -9223372032559808514 {
-               fmt.Printf("xor_int64 9223372036854775806%s-4294967296 = %d, wanted -9223372032559808514\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(-4294967296); got != -9223372032559808514 {
-               fmt.Printf("xor_int64 -4294967296%s9223372036854775806 = %d, wanted -9223372032559808514\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 9223372036854775806%s-1 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(-1); got != -9223372036854775807 {
-               fmt.Printf("xor_int64 -1%s9223372036854775806 = %d, wanted -9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(0); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 9223372036854775806%s0 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(0); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 0%s9223372036854775806 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 9223372036854775806%s1 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(1); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 1%s9223372036854775806 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(4294967296); got != 9223372032559808510 {
-               fmt.Printf("xor_int64 9223372036854775806%s4294967296 = %d, wanted 9223372032559808510\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(4294967296); got != 9223372032559808510 {
-               fmt.Printf("xor_int64 4294967296%s9223372036854775806 = %d, wanted 9223372032559808510\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("xor_int64 9223372036854775806%s9223372036854775806 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(9223372036854775806); got != 0 {
-               fmt.Printf("xor_int64 9223372036854775806%s9223372036854775806 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775806_int64_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("xor_int64 9223372036854775806%s9223372036854775807 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775806_ssa(9223372036854775807); got != 1 {
-               fmt.Printf("xor_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("xor_int64 9223372036854775807%s-9223372036854775808 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(-9223372036854775808); got != -1 {
-               fmt.Printf("xor_int64 -9223372036854775808%s9223372036854775807 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(-9223372036854775807); got != -2 {
-               fmt.Printf("xor_int64 9223372036854775807%s-9223372036854775807 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(-9223372036854775807); got != -2 {
-               fmt.Printf("xor_int64 -9223372036854775807%s9223372036854775807 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(-4294967296); got != -9223372032559808513 {
-               fmt.Printf("xor_int64 9223372036854775807%s-4294967296 = %d, wanted -9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(-4294967296); got != -9223372032559808513 {
-               fmt.Printf("xor_int64 -4294967296%s9223372036854775807 = %d, wanted -9223372032559808513\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 9223372036854775807%s-1 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(-1); got != -9223372036854775808 {
-               fmt.Printf("xor_int64 -1%s9223372036854775807 = %d, wanted -9223372036854775808\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 9223372036854775807%s0 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(0); got != 9223372036854775807 {
-               fmt.Printf("xor_int64 0%s9223372036854775807 = %d, wanted 9223372036854775807\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(1); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 9223372036854775807%s1 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(1); got != 9223372036854775806 {
-               fmt.Printf("xor_int64 1%s9223372036854775807 = %d, wanted 9223372036854775806\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(4294967296); got != 9223372032559808511 {
-               fmt.Printf("xor_int64 9223372036854775807%s4294967296 = %d, wanted 9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(4294967296); got != 9223372032559808511 {
-               fmt.Printf("xor_int64 4294967296%s9223372036854775807 = %d, wanted 9223372032559808511\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("xor_int64 9223372036854775807%s9223372036854775806 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(9223372036854775806); got != 1 {
-               fmt.Printf("xor_int64 9223372036854775806%s9223372036854775807 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_9223372036854775807_int64_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("xor_int64 9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int64_9223372036854775807_ssa(9223372036854775807); got != 0 {
-               fmt.Printf("xor_int64 9223372036854775807%s9223372036854775807 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := add_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("add_uint32 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("add_uint32 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint32_ssa(1); got != 1 {
-               fmt.Printf("add_uint32 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_0_ssa(1); got != 1 {
-               fmt.Printf("add_uint32 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint32_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("add_uint32 0%s4294967295 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_0_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("add_uint32 4294967295%s0 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint32_ssa(0); got != 1 {
-               fmt.Printf("add_uint32 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_1_ssa(0); got != 1 {
-               fmt.Printf("add_uint32 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint32_ssa(1); got != 2 {
-               fmt.Printf("add_uint32 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_1_ssa(1); got != 2 {
-               fmt.Printf("add_uint32 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("add_uint32 1%s4294967295 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_1_ssa(4294967295); got != 0 {
-               fmt.Printf("add_uint32 4294967295%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967295_uint32_ssa(0); got != 4294967295 {
-               fmt.Printf("add_uint32 4294967295%s0 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_4294967295_ssa(0); got != 4294967295 {
-               fmt.Printf("add_uint32 0%s4294967295 = %d, wanted 4294967295\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967295_uint32_ssa(1); got != 0 {
-               fmt.Printf("add_uint32 4294967295%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_4294967295_ssa(1); got != 0 {
-               fmt.Printf("add_uint32 1%s4294967295 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_4294967295_uint32_ssa(4294967295); got != 4294967294 {
-               fmt.Printf("add_uint32 4294967295%s4294967295 = %d, wanted 4294967294\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint32_4294967295_ssa(4294967295); got != 4294967294 {
-               fmt.Printf("add_uint32 4294967295%s4294967295 = %d, wanted 4294967294\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("sub_uint32 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("sub_uint32 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint32_ssa(1); got != 4294967295 {
-               fmt.Printf("sub_uint32 0%s1 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_0_ssa(1); got != 1 {
-               fmt.Printf("sub_uint32 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint32_ssa(4294967295); got != 1 {
-               fmt.Printf("sub_uint32 0%s4294967295 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_0_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("sub_uint32 4294967295%s0 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint32_ssa(0); got != 1 {
-               fmt.Printf("sub_uint32 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_1_ssa(0); got != 4294967295 {
-               fmt.Printf("sub_uint32 0%s1 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint32_ssa(1); got != 0 {
-               fmt.Printf("sub_uint32 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_1_ssa(1); got != 0 {
-               fmt.Printf("sub_uint32 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint32_ssa(4294967295); got != 2 {
-               fmt.Printf("sub_uint32 1%s4294967295 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_1_ssa(4294967295); got != 4294967294 {
-               fmt.Printf("sub_uint32 4294967295%s1 = %d, wanted 4294967294\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967295_uint32_ssa(0); got != 4294967295 {
-               fmt.Printf("sub_uint32 4294967295%s0 = %d, wanted 4294967295\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_4294967295_ssa(0); got != 1 {
-               fmt.Printf("sub_uint32 0%s4294967295 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967295_uint32_ssa(1); got != 4294967294 {
-               fmt.Printf("sub_uint32 4294967295%s1 = %d, wanted 4294967294\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_4294967295_ssa(1); got != 2 {
-               fmt.Printf("sub_uint32 1%s4294967295 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_4294967295_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("sub_uint32 4294967295%s4294967295 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint32_4294967295_ssa(4294967295); got != 0 {
-               fmt.Printf("sub_uint32 4294967295%s4294967295 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_0_uint32_ssa(1); got != 0 {
-               fmt.Printf("div_uint32 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("div_uint32 0%s4294967295 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint32_1_ssa(0); got != 0 {
-               fmt.Printf("div_uint32 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint32_ssa(1); got != 1 {
-               fmt.Printf("div_uint32 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint32_1_ssa(1); got != 1 {
-               fmt.Printf("div_uint32 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("div_uint32 1%s4294967295 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint32_1_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("div_uint32 4294967295%s1 = %d, wanted 4294967295\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint32_4294967295_ssa(0); got != 0 {
-               fmt.Printf("div_uint32 0%s4294967295 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967295_uint32_ssa(1); got != 4294967295 {
-               fmt.Printf("div_uint32 4294967295%s1 = %d, wanted 4294967295\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint32_4294967295_ssa(1); got != 0 {
-               fmt.Printf("div_uint32 1%s4294967295 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_4294967295_uint32_ssa(4294967295); got != 1 {
-               fmt.Printf("div_uint32 4294967295%s4294967295 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint32_4294967295_ssa(4294967295); got != 1 {
-               fmt.Printf("div_uint32 4294967295%s4294967295 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("mul_uint32 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("mul_uint32 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint32_ssa(1); got != 0 {
-               fmt.Printf("mul_uint32 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_0_ssa(1); got != 0 {
-               fmt.Printf("mul_uint32 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("mul_uint32 0%s4294967295 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_0_ssa(4294967295); got != 0 {
-               fmt.Printf("mul_uint32 4294967295%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint32_ssa(0); got != 0 {
-               fmt.Printf("mul_uint32 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_1_ssa(0); got != 0 {
-               fmt.Printf("mul_uint32 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint32_ssa(1); got != 1 {
-               fmt.Printf("mul_uint32 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_1_ssa(1); got != 1 {
-               fmt.Printf("mul_uint32 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint32_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("mul_uint32 1%s4294967295 = %d, wanted 4294967295\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_1_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("mul_uint32 4294967295%s1 = %d, wanted 4294967295\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967295_uint32_ssa(0); got != 0 {
-               fmt.Printf("mul_uint32 4294967295%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_4294967295_ssa(0); got != 0 {
-               fmt.Printf("mul_uint32 0%s4294967295 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967295_uint32_ssa(1); got != 4294967295 {
-               fmt.Printf("mul_uint32 4294967295%s1 = %d, wanted 4294967295\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_4294967295_ssa(1); got != 4294967295 {
-               fmt.Printf("mul_uint32 1%s4294967295 = %d, wanted 4294967295\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_4294967295_uint32_ssa(4294967295); got != 1 {
-               fmt.Printf("mul_uint32 4294967295%s4294967295 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint32_4294967295_ssa(4294967295); got != 1 {
-               fmt.Printf("mul_uint32 4294967295%s4294967295 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint32 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint32 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint32_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint32 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_0_ssa(1); got != 1 {
-               fmt.Printf("lsh_uint32 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("lsh_uint32 0%s4294967295 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_0_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("lsh_uint32 4294967295%s0 = %d, wanted 4294967295\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint32_ssa(0); got != 1 {
-               fmt.Printf("lsh_uint32 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_1_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint32 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint32_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint32 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_1_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint32 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("lsh_uint32 1%s4294967295 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_1_ssa(4294967295); got != 4294967294 {
-               fmt.Printf("lsh_uint32 4294967295%s1 = %d, wanted 4294967294\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967295_uint32_ssa(0); got != 4294967295 {
-               fmt.Printf("lsh_uint32 4294967295%s0 = %d, wanted 4294967295\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_4294967295_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint32 0%s4294967295 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967295_uint32_ssa(1); got != 4294967294 {
-               fmt.Printf("lsh_uint32 4294967295%s1 = %d, wanted 4294967294\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_4294967295_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint32 1%s4294967295 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_4294967295_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("lsh_uint32 4294967295%s4294967295 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint32_4294967295_ssa(4294967295); got != 0 {
-               fmt.Printf("lsh_uint32 4294967295%s4294967295 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint32 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint32 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint32_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint32 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_0_ssa(1); got != 1 {
-               fmt.Printf("rsh_uint32 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("rsh_uint32 0%s4294967295 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_0_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("rsh_uint32 4294967295%s0 = %d, wanted 4294967295\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint32_ssa(0); got != 1 {
-               fmt.Printf("rsh_uint32 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_1_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint32 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint32_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint32 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_1_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint32 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("rsh_uint32 1%s4294967295 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_1_ssa(4294967295); got != 2147483647 {
-               fmt.Printf("rsh_uint32 4294967295%s1 = %d, wanted 2147483647\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967295_uint32_ssa(0); got != 4294967295 {
-               fmt.Printf("rsh_uint32 4294967295%s0 = %d, wanted 4294967295\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_4294967295_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint32 0%s4294967295 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967295_uint32_ssa(1); got != 2147483647 {
-               fmt.Printf("rsh_uint32 4294967295%s1 = %d, wanted 2147483647\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_4294967295_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint32 1%s4294967295 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_4294967295_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("rsh_uint32 4294967295%s4294967295 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint32_4294967295_ssa(4294967295); got != 0 {
-               fmt.Printf("rsh_uint32 4294967295%s4294967295 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint32_ssa(1); got != 0 {
-               fmt.Printf("mod_uint32 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("mod_uint32 0%s4294967295 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint32_1_ssa(0); got != 0 {
-               fmt.Printf("mod_uint32 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint32_ssa(1); got != 0 {
-               fmt.Printf("mod_uint32 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint32_1_ssa(1); got != 0 {
-               fmt.Printf("mod_uint32 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint32_ssa(4294967295); got != 1 {
-               fmt.Printf("mod_uint32 1%s4294967295 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint32_1_ssa(4294967295); got != 0 {
-               fmt.Printf("mod_uint32 4294967295%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint32_4294967295_ssa(0); got != 0 {
-               fmt.Printf("mod_uint32 0%s4294967295 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967295_uint32_ssa(1); got != 0 {
-               fmt.Printf("mod_uint32 4294967295%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint32_4294967295_ssa(1); got != 1 {
-               fmt.Printf("mod_uint32 1%s4294967295 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_4294967295_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("mod_uint32 4294967295%s4294967295 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint32_4294967295_ssa(4294967295); got != 0 {
-               fmt.Printf("mod_uint32 4294967295%s4294967295 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("and_uint32 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("and_uint32 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint32_ssa(1); got != 0 {
-               fmt.Printf("and_uint32 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_0_ssa(1); got != 0 {
-               fmt.Printf("and_uint32 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("and_uint32 0%s4294967295 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_0_ssa(4294967295); got != 0 {
-               fmt.Printf("and_uint32 4294967295%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint32_ssa(0); got != 0 {
-               fmt.Printf("and_uint32 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_1_ssa(0); got != 0 {
-               fmt.Printf("and_uint32 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint32_ssa(1); got != 1 {
-               fmt.Printf("and_uint32 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_1_ssa(1); got != 1 {
-               fmt.Printf("and_uint32 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint32_ssa(4294967295); got != 1 {
-               fmt.Printf("and_uint32 1%s4294967295 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_1_ssa(4294967295); got != 1 {
-               fmt.Printf("and_uint32 4294967295%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967295_uint32_ssa(0); got != 0 {
-               fmt.Printf("and_uint32 4294967295%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_4294967295_ssa(0); got != 0 {
-               fmt.Printf("and_uint32 0%s4294967295 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967295_uint32_ssa(1); got != 1 {
-               fmt.Printf("and_uint32 4294967295%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_4294967295_ssa(1); got != 1 {
-               fmt.Printf("and_uint32 1%s4294967295 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_4294967295_uint32_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("and_uint32 4294967295%s4294967295 = %d, wanted 4294967295\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint32_4294967295_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("and_uint32 4294967295%s4294967295 = %d, wanted 4294967295\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("or_uint32 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("or_uint32 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint32_ssa(1); got != 1 {
-               fmt.Printf("or_uint32 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_0_ssa(1); got != 1 {
-               fmt.Printf("or_uint32 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint32_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("or_uint32 0%s4294967295 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_0_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("or_uint32 4294967295%s0 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint32_ssa(0); got != 1 {
-               fmt.Printf("or_uint32 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_1_ssa(0); got != 1 {
-               fmt.Printf("or_uint32 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint32_ssa(1); got != 1 {
-               fmt.Printf("or_uint32 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_1_ssa(1); got != 1 {
-               fmt.Printf("or_uint32 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint32_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("or_uint32 1%s4294967295 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_1_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("or_uint32 4294967295%s1 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967295_uint32_ssa(0); got != 4294967295 {
-               fmt.Printf("or_uint32 4294967295%s0 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_4294967295_ssa(0); got != 4294967295 {
-               fmt.Printf("or_uint32 0%s4294967295 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967295_uint32_ssa(1); got != 4294967295 {
-               fmt.Printf("or_uint32 4294967295%s1 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_4294967295_ssa(1); got != 4294967295 {
-               fmt.Printf("or_uint32 1%s4294967295 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_4294967295_uint32_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("or_uint32 4294967295%s4294967295 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint32_4294967295_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("or_uint32 4294967295%s4294967295 = %d, wanted 4294967295\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint32_ssa(0); got != 0 {
-               fmt.Printf("xor_uint32 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_0_ssa(0); got != 0 {
-               fmt.Printf("xor_uint32 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint32_ssa(1); got != 1 {
-               fmt.Printf("xor_uint32 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_0_ssa(1); got != 1 {
-               fmt.Printf("xor_uint32 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint32_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("xor_uint32 0%s4294967295 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_0_ssa(4294967295); got != 4294967295 {
-               fmt.Printf("xor_uint32 4294967295%s0 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint32_ssa(0); got != 1 {
-               fmt.Printf("xor_uint32 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_1_ssa(0); got != 1 {
-               fmt.Printf("xor_uint32 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint32_ssa(1); got != 0 {
-               fmt.Printf("xor_uint32 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_1_ssa(1); got != 0 {
-               fmt.Printf("xor_uint32 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint32_ssa(4294967295); got != 4294967294 {
-               fmt.Printf("xor_uint32 1%s4294967295 = %d, wanted 4294967294\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_1_ssa(4294967295); got != 4294967294 {
-               fmt.Printf("xor_uint32 4294967295%s1 = %d, wanted 4294967294\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967295_uint32_ssa(0); got != 4294967295 {
-               fmt.Printf("xor_uint32 4294967295%s0 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_4294967295_ssa(0); got != 4294967295 {
-               fmt.Printf("xor_uint32 0%s4294967295 = %d, wanted 4294967295\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967295_uint32_ssa(1); got != 4294967294 {
-               fmt.Printf("xor_uint32 4294967295%s1 = %d, wanted 4294967294\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_4294967295_ssa(1); got != 4294967294 {
-               fmt.Printf("xor_uint32 1%s4294967295 = %d, wanted 4294967294\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_4294967295_uint32_ssa(4294967295); got != 0 {
-               fmt.Printf("xor_uint32 4294967295%s4294967295 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint32_4294967295_ssa(4294967295); got != 0 {
-               fmt.Printf("xor_uint32 4294967295%s4294967295 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483648_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("add_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483648_ssa(-2147483648); got != 0 {
-               fmt.Printf("add_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483648_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("add_int32 -2147483648%s-2147483647 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483648_ssa(-2147483647); got != 1 {
-               fmt.Printf("add_int32 -2147483647%s-2147483648 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483648_int32_ssa(-1); got != 2147483647 {
-               fmt.Printf("add_int32 -2147483648%s-1 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483648_ssa(-1); got != 2147483647 {
-               fmt.Printf("add_int32 -1%s-2147483648 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483648_int32_ssa(0); got != -2147483648 {
-               fmt.Printf("add_int32 -2147483648%s0 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483648_ssa(0); got != -2147483648 {
-               fmt.Printf("add_int32 0%s-2147483648 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483648_int32_ssa(1); got != -2147483647 {
-               fmt.Printf("add_int32 -2147483648%s1 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483648_ssa(1); got != -2147483647 {
-               fmt.Printf("add_int32 1%s-2147483648 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483648_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("add_int32 -2147483648%s2147483647 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483648_ssa(2147483647); got != -1 {
-               fmt.Printf("add_int32 2147483647%s-2147483648 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483647_int32_ssa(-2147483648); got != 1 {
-               fmt.Printf("add_int32 -2147483647%s-2147483648 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483647_ssa(-2147483648); got != 1 {
-               fmt.Printf("add_int32 -2147483648%s-2147483647 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483647_int32_ssa(-2147483647); got != 2 {
-               fmt.Printf("add_int32 -2147483647%s-2147483647 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483647_ssa(-2147483647); got != 2 {
-               fmt.Printf("add_int32 -2147483647%s-2147483647 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483647_int32_ssa(-1); got != -2147483648 {
-               fmt.Printf("add_int32 -2147483647%s-1 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483647_ssa(-1); got != -2147483648 {
-               fmt.Printf("add_int32 -1%s-2147483647 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483647_int32_ssa(0); got != -2147483647 {
-               fmt.Printf("add_int32 -2147483647%s0 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483647_ssa(0); got != -2147483647 {
-               fmt.Printf("add_int32 0%s-2147483647 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483647_int32_ssa(1); got != -2147483646 {
-               fmt.Printf("add_int32 -2147483647%s1 = %d, wanted -2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483647_ssa(1); got != -2147483646 {
-               fmt.Printf("add_int32 1%s-2147483647 = %d, wanted -2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg2147483647_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("add_int32 -2147483647%s2147483647 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg2147483647_ssa(2147483647); got != 0 {
-               fmt.Printf("add_int32 2147483647%s-2147483647 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int32_ssa(-2147483648); got != 2147483647 {
-               fmt.Printf("add_int32 -1%s-2147483648 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg1_ssa(-2147483648); got != 2147483647 {
-               fmt.Printf("add_int32 -2147483648%s-1 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int32_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("add_int32 -1%s-2147483647 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg1_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("add_int32 -2147483647%s-1 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int32_ssa(-1); got != -2 {
-               fmt.Printf("add_int32 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg1_ssa(-1); got != -2 {
-               fmt.Printf("add_int32 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int32_ssa(0); got != -1 {
-               fmt.Printf("add_int32 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg1_ssa(0); got != -1 {
-               fmt.Printf("add_int32 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int32_ssa(1); got != 0 {
-               fmt.Printf("add_int32 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg1_ssa(1); got != 0 {
-               fmt.Printf("add_int32 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int32_ssa(2147483647); got != 2147483646 {
-               fmt.Printf("add_int32 -1%s2147483647 = %d, wanted 2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_Neg1_ssa(2147483647); got != 2147483646 {
-               fmt.Printf("add_int32 2147483647%s-1 = %d, wanted 2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("add_int32 0%s-2147483648 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_0_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("add_int32 -2147483648%s0 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("add_int32 0%s-2147483647 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_0_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("add_int32 -2147483647%s0 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int32_ssa(-1); got != -1 {
-               fmt.Printf("add_int32 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_0_ssa(-1); got != -1 {
-               fmt.Printf("add_int32 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int32_ssa(0); got != 0 {
-               fmt.Printf("add_int32 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_0_ssa(0); got != 0 {
-               fmt.Printf("add_int32 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int32_ssa(1); got != 1 {
-               fmt.Printf("add_int32 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_0_ssa(1); got != 1 {
-               fmt.Printf("add_int32 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("add_int32 0%s2147483647 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_0_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("add_int32 2147483647%s0 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int32_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("add_int32 1%s-2147483648 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_1_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("add_int32 -2147483648%s1 = %d, wanted -2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int32_ssa(-2147483647); got != -2147483646 {
-               fmt.Printf("add_int32 1%s-2147483647 = %d, wanted -2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_1_ssa(-2147483647); got != -2147483646 {
-               fmt.Printf("add_int32 -2147483647%s1 = %d, wanted -2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int32_ssa(-1); got != 0 {
-               fmt.Printf("add_int32 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_1_ssa(-1); got != 0 {
-               fmt.Printf("add_int32 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int32_ssa(0); got != 1 {
-               fmt.Printf("add_int32 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_1_ssa(0); got != 1 {
-               fmt.Printf("add_int32 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int32_ssa(1); got != 2 {
-               fmt.Printf("add_int32 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_1_ssa(1); got != 2 {
-               fmt.Printf("add_int32 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int32_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("add_int32 1%s2147483647 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_1_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("add_int32 2147483647%s1 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_2147483647_int32_ssa(-2147483648); got != -1 {
-               fmt.Printf("add_int32 2147483647%s-2147483648 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_2147483647_ssa(-2147483648); got != -1 {
-               fmt.Printf("add_int32 -2147483648%s2147483647 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_2147483647_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("add_int32 2147483647%s-2147483647 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_2147483647_ssa(-2147483647); got != 0 {
-               fmt.Printf("add_int32 -2147483647%s2147483647 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_2147483647_int32_ssa(-1); got != 2147483646 {
-               fmt.Printf("add_int32 2147483647%s-1 = %d, wanted 2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_2147483647_ssa(-1); got != 2147483646 {
-               fmt.Printf("add_int32 -1%s2147483647 = %d, wanted 2147483646\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_2147483647_int32_ssa(0); got != 2147483647 {
-               fmt.Printf("add_int32 2147483647%s0 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_2147483647_ssa(0); got != 2147483647 {
-               fmt.Printf("add_int32 0%s2147483647 = %d, wanted 2147483647\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_2147483647_int32_ssa(1); got != -2147483648 {
-               fmt.Printf("add_int32 2147483647%s1 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_2147483647_ssa(1); got != -2147483648 {
-               fmt.Printf("add_int32 1%s2147483647 = %d, wanted -2147483648\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_2147483647_int32_ssa(2147483647); got != -2 {
-               fmt.Printf("add_int32 2147483647%s2147483647 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int32_2147483647_ssa(2147483647); got != -2 {
-               fmt.Printf("add_int32 2147483647%s2147483647 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483648_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("sub_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483648_ssa(-2147483648); got != 0 {
-               fmt.Printf("sub_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483648_int32_ssa(-2147483647); got != -1 {
-               fmt.Printf("sub_int32 -2147483648%s-2147483647 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483648_ssa(-2147483647); got != 1 {
-               fmt.Printf("sub_int32 -2147483647%s-2147483648 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483648_int32_ssa(-1); got != -2147483647 {
-               fmt.Printf("sub_int32 -2147483648%s-1 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483648_ssa(-1); got != 2147483647 {
-               fmt.Printf("sub_int32 -1%s-2147483648 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483648_int32_ssa(0); got != -2147483648 {
-               fmt.Printf("sub_int32 -2147483648%s0 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483648_ssa(0); got != -2147483648 {
-               fmt.Printf("sub_int32 0%s-2147483648 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483648_int32_ssa(1); got != 2147483647 {
-               fmt.Printf("sub_int32 -2147483648%s1 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483648_ssa(1); got != -2147483647 {
-               fmt.Printf("sub_int32 1%s-2147483648 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483648_int32_ssa(2147483647); got != 1 {
-               fmt.Printf("sub_int32 -2147483648%s2147483647 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483648_ssa(2147483647); got != -1 {
-               fmt.Printf("sub_int32 2147483647%s-2147483648 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483647_int32_ssa(-2147483648); got != 1 {
-               fmt.Printf("sub_int32 -2147483647%s-2147483648 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483647_ssa(-2147483648); got != -1 {
-               fmt.Printf("sub_int32 -2147483648%s-2147483647 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483647_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("sub_int32 -2147483647%s-2147483647 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483647_ssa(-2147483647); got != 0 {
-               fmt.Printf("sub_int32 -2147483647%s-2147483647 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483647_int32_ssa(-1); got != -2147483646 {
-               fmt.Printf("sub_int32 -2147483647%s-1 = %d, wanted -2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483647_ssa(-1); got != 2147483646 {
-               fmt.Printf("sub_int32 -1%s-2147483647 = %d, wanted 2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483647_int32_ssa(0); got != -2147483647 {
-               fmt.Printf("sub_int32 -2147483647%s0 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483647_ssa(0); got != 2147483647 {
-               fmt.Printf("sub_int32 0%s-2147483647 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483647_int32_ssa(1); got != -2147483648 {
-               fmt.Printf("sub_int32 -2147483647%s1 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483647_ssa(1); got != -2147483648 {
-               fmt.Printf("sub_int32 1%s-2147483647 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg2147483647_int32_ssa(2147483647); got != 2 {
-               fmt.Printf("sub_int32 -2147483647%s2147483647 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg2147483647_ssa(2147483647); got != -2 {
-               fmt.Printf("sub_int32 2147483647%s-2147483647 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int32_ssa(-2147483648); got != 2147483647 {
-               fmt.Printf("sub_int32 -1%s-2147483648 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg1_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("sub_int32 -2147483648%s-1 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int32_ssa(-2147483647); got != 2147483646 {
-               fmt.Printf("sub_int32 -1%s-2147483647 = %d, wanted 2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg1_ssa(-2147483647); got != -2147483646 {
-               fmt.Printf("sub_int32 -2147483647%s-1 = %d, wanted -2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int32_ssa(-1); got != 0 {
-               fmt.Printf("sub_int32 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("sub_int32 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int32_ssa(0); got != -1 {
-               fmt.Printf("sub_int32 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg1_ssa(0); got != 1 {
-               fmt.Printf("sub_int32 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int32_ssa(1); got != -2 {
-               fmt.Printf("sub_int32 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg1_ssa(1); got != 2 {
-               fmt.Printf("sub_int32 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int32_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("sub_int32 -1%s2147483647 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_Neg1_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("sub_int32 2147483647%s-1 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("sub_int32 0%s-2147483648 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_0_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("sub_int32 -2147483648%s0 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int32_ssa(-2147483647); got != 2147483647 {
-               fmt.Printf("sub_int32 0%s-2147483647 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_0_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("sub_int32 -2147483647%s0 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int32_ssa(-1); got != 1 {
-               fmt.Printf("sub_int32 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_0_ssa(-1); got != -1 {
-               fmt.Printf("sub_int32 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int32_ssa(0); got != 0 {
-               fmt.Printf("sub_int32 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_0_ssa(0); got != 0 {
-               fmt.Printf("sub_int32 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int32_ssa(1); got != -1 {
-               fmt.Printf("sub_int32 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_0_ssa(1); got != 1 {
-               fmt.Printf("sub_int32 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int32_ssa(2147483647); got != -2147483647 {
-               fmt.Printf("sub_int32 0%s2147483647 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_0_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("sub_int32 2147483647%s0 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int32_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("sub_int32 1%s-2147483648 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_1_ssa(-2147483648); got != 2147483647 {
-               fmt.Printf("sub_int32 -2147483648%s1 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int32_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("sub_int32 1%s-2147483647 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_1_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("sub_int32 -2147483647%s1 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int32_ssa(-1); got != 2 {
-               fmt.Printf("sub_int32 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_1_ssa(-1); got != -2 {
-               fmt.Printf("sub_int32 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int32_ssa(0); got != 1 {
-               fmt.Printf("sub_int32 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_1_ssa(0); got != -1 {
-               fmt.Printf("sub_int32 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int32_ssa(1); got != 0 {
-               fmt.Printf("sub_int32 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_1_ssa(1); got != 0 {
-               fmt.Printf("sub_int32 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int32_ssa(2147483647); got != -2147483646 {
-               fmt.Printf("sub_int32 1%s2147483647 = %d, wanted -2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_1_ssa(2147483647); got != 2147483646 {
-               fmt.Printf("sub_int32 2147483647%s1 = %d, wanted 2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_2147483647_int32_ssa(-2147483648); got != -1 {
-               fmt.Printf("sub_int32 2147483647%s-2147483648 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_2147483647_ssa(-2147483648); got != 1 {
-               fmt.Printf("sub_int32 -2147483648%s2147483647 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_2147483647_int32_ssa(-2147483647); got != -2 {
-               fmt.Printf("sub_int32 2147483647%s-2147483647 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_2147483647_ssa(-2147483647); got != 2 {
-               fmt.Printf("sub_int32 -2147483647%s2147483647 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_2147483647_int32_ssa(-1); got != -2147483648 {
-               fmt.Printf("sub_int32 2147483647%s-1 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_2147483647_ssa(-1); got != -2147483648 {
-               fmt.Printf("sub_int32 -1%s2147483647 = %d, wanted -2147483648\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_2147483647_int32_ssa(0); got != 2147483647 {
-               fmt.Printf("sub_int32 2147483647%s0 = %d, wanted 2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_2147483647_ssa(0); got != -2147483647 {
-               fmt.Printf("sub_int32 0%s2147483647 = %d, wanted -2147483647\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_2147483647_int32_ssa(1); got != 2147483646 {
-               fmt.Printf("sub_int32 2147483647%s1 = %d, wanted 2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_2147483647_ssa(1); got != -2147483646 {
-               fmt.Printf("sub_int32 1%s2147483647 = %d, wanted -2147483646\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_2147483647_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("sub_int32 2147483647%s2147483647 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int32_2147483647_ssa(2147483647); got != 0 {
-               fmt.Printf("sub_int32 2147483647%s2147483647 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483648_int32_ssa(-2147483648); got != 1 {
-               fmt.Printf("div_int32 -2147483648%s-2147483648 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483648_ssa(-2147483648); got != 1 {
-               fmt.Printf("div_int32 -2147483648%s-2147483648 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483648_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("div_int32 -2147483648%s-2147483647 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483648_ssa(-2147483647); got != 0 {
-               fmt.Printf("div_int32 -2147483647%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483648_int32_ssa(-1); got != -2147483648 {
-               fmt.Printf("div_int32 -2147483648%s-1 = %d, wanted -2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483648_ssa(-1); got != 0 {
-               fmt.Printf("div_int32 -1%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483648_ssa(0); got != 0 {
-               fmt.Printf("div_int32 0%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483648_int32_ssa(1); got != -2147483648 {
-               fmt.Printf("div_int32 -2147483648%s1 = %d, wanted -2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483648_ssa(1); got != 0 {
-               fmt.Printf("div_int32 1%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483648_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("div_int32 -2147483648%s2147483647 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483648_ssa(2147483647); got != 0 {
-               fmt.Printf("div_int32 2147483647%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483647_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("div_int32 -2147483647%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483647_ssa(-2147483648); got != 1 {
-               fmt.Printf("div_int32 -2147483648%s-2147483647 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483647_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("div_int32 -2147483647%s-2147483647 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483647_ssa(-2147483647); got != 1 {
-               fmt.Printf("div_int32 -2147483647%s-2147483647 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483647_int32_ssa(-1); got != 2147483647 {
-               fmt.Printf("div_int32 -2147483647%s-1 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483647_ssa(-1); got != 0 {
-               fmt.Printf("div_int32 -1%s-2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483647_ssa(0); got != 0 {
-               fmt.Printf("div_int32 0%s-2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483647_int32_ssa(1); got != -2147483647 {
-               fmt.Printf("div_int32 -2147483647%s1 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483647_ssa(1); got != 0 {
-               fmt.Printf("div_int32 1%s-2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg2147483647_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("div_int32 -2147483647%s2147483647 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg2147483647_ssa(2147483647); got != -1 {
-               fmt.Printf("div_int32 2147483647%s-2147483647 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("div_int32 -1%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg1_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("div_int32 -2147483648%s-1 = %d, wanted -2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("div_int32 -1%s-2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg1_ssa(-2147483647); got != 2147483647 {
-               fmt.Printf("div_int32 -2147483647%s-1 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int32_ssa(-1); got != 1 {
-               fmt.Printf("div_int32 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("div_int32 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg1_ssa(0); got != 0 {
-               fmt.Printf("div_int32 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int32_ssa(1); got != -1 {
-               fmt.Printf("div_int32 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg1_ssa(1); got != -1 {
-               fmt.Printf("div_int32 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("div_int32 -1%s2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_Neg1_ssa(2147483647); got != -2147483647 {
-               fmt.Printf("div_int32 2147483647%s-1 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("div_int32 0%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("div_int32 0%s-2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int32_ssa(-1); got != 0 {
-               fmt.Printf("div_int32 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int32_ssa(1); got != 0 {
-               fmt.Printf("div_int32 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("div_int32 0%s2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("div_int32 1%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_1_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("div_int32 -2147483648%s1 = %d, wanted -2147483648\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("div_int32 1%s-2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_1_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("div_int32 -2147483647%s1 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int32_ssa(-1); got != -1 {
-               fmt.Printf("div_int32 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_1_ssa(-1); got != -1 {
-               fmt.Printf("div_int32 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_1_ssa(0); got != 0 {
-               fmt.Printf("div_int32 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int32_ssa(1); got != 1 {
-               fmt.Printf("div_int32 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_1_ssa(1); got != 1 {
-               fmt.Printf("div_int32 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("div_int32 1%s2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_1_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("div_int32 2147483647%s1 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_2147483647_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("div_int32 2147483647%s-2147483648 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_2147483647_ssa(-2147483648); got != -1 {
-               fmt.Printf("div_int32 -2147483648%s2147483647 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_2147483647_int32_ssa(-2147483647); got != -1 {
-               fmt.Printf("div_int32 2147483647%s-2147483647 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_2147483647_ssa(-2147483647); got != -1 {
-               fmt.Printf("div_int32 -2147483647%s2147483647 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_2147483647_int32_ssa(-1); got != -2147483647 {
-               fmt.Printf("div_int32 2147483647%s-1 = %d, wanted -2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_2147483647_ssa(-1); got != 0 {
-               fmt.Printf("div_int32 -1%s2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_2147483647_ssa(0); got != 0 {
-               fmt.Printf("div_int32 0%s2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_2147483647_int32_ssa(1); got != 2147483647 {
-               fmt.Printf("div_int32 2147483647%s1 = %d, wanted 2147483647\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_2147483647_ssa(1); got != 0 {
-               fmt.Printf("div_int32 1%s2147483647 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_2147483647_int32_ssa(2147483647); got != 1 {
-               fmt.Printf("div_int32 2147483647%s2147483647 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int32_2147483647_ssa(2147483647); got != 1 {
-               fmt.Printf("div_int32 2147483647%s2147483647 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483648_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("mul_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483648_ssa(-2147483648); got != 0 {
-               fmt.Printf("mul_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483648_int32_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s-2147483647 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483648_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483647%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483648_int32_ssa(-1); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s-1 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483648_ssa(-1); got != -2147483648 {
-               fmt.Printf("mul_int32 -1%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483648_int32_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 -2147483648%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483648_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 0%s-2147483648 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483648_int32_ssa(1); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s1 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483648_ssa(1); got != -2147483648 {
-               fmt.Printf("mul_int32 1%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483648_int32_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s2147483647 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483648_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("mul_int32 2147483647%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483647_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483647%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483647_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s-2147483647 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483647_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("mul_int32 -2147483647%s-2147483647 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483647_ssa(-2147483647); got != 1 {
-               fmt.Printf("mul_int32 -2147483647%s-2147483647 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483647_int32_ssa(-1); got != 2147483647 {
-               fmt.Printf("mul_int32 -2147483647%s-1 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483647_ssa(-1); got != 2147483647 {
-               fmt.Printf("mul_int32 -1%s-2147483647 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483647_int32_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 -2147483647%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483647_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 0%s-2147483647 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483647_int32_ssa(1); got != -2147483647 {
-               fmt.Printf("mul_int32 -2147483647%s1 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483647_ssa(1); got != -2147483647 {
-               fmt.Printf("mul_int32 1%s-2147483647 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg2147483647_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("mul_int32 -2147483647%s2147483647 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg2147483647_ssa(2147483647); got != -1 {
-               fmt.Printf("mul_int32 2147483647%s-2147483647 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 -1%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg1_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s-1 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int32_ssa(-2147483647); got != 2147483647 {
-               fmt.Printf("mul_int32 -1%s-2147483647 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg1_ssa(-2147483647); got != 2147483647 {
-               fmt.Printf("mul_int32 -2147483647%s-1 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int32_ssa(-1); got != 1 {
-               fmt.Printf("mul_int32 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("mul_int32 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int32_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int32_ssa(1); got != -1 {
-               fmt.Printf("mul_int32 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg1_ssa(1); got != -1 {
-               fmt.Printf("mul_int32 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int32_ssa(2147483647); got != -2147483647 {
-               fmt.Printf("mul_int32 -1%s2147483647 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_Neg1_ssa(2147483647); got != -2147483647 {
-               fmt.Printf("mul_int32 2147483647%s-1 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("mul_int32 0%s-2147483648 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_0_ssa(-2147483648); got != 0 {
-               fmt.Printf("mul_int32 -2147483648%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("mul_int32 0%s-2147483647 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_0_ssa(-2147483647); got != 0 {
-               fmt.Printf("mul_int32 -2147483647%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int32_ssa(-1); got != 0 {
-               fmt.Printf("mul_int32 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_0_ssa(-1); got != 0 {
-               fmt.Printf("mul_int32 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int32_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_0_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int32_ssa(1); got != 0 {
-               fmt.Printf("mul_int32 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_0_ssa(1); got != 0 {
-               fmt.Printf("mul_int32 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("mul_int32 0%s2147483647 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_0_ssa(2147483647); got != 0 {
-               fmt.Printf("mul_int32 2147483647%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 1%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_1_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s1 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("mul_int32 1%s-2147483647 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_1_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("mul_int32 -2147483647%s1 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int32_ssa(-1); got != -1 {
-               fmt.Printf("mul_int32 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_1_ssa(-1); got != -1 {
-               fmt.Printf("mul_int32 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int32_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_1_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int32_ssa(1); got != 1 {
-               fmt.Printf("mul_int32 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_1_ssa(1); got != 1 {
-               fmt.Printf("mul_int32 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("mul_int32 1%s2147483647 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_1_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("mul_int32 2147483647%s1 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_2147483647_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 2147483647%s-2147483648 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_2147483647_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("mul_int32 -2147483648%s2147483647 = %d, wanted -2147483648\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_2147483647_int32_ssa(-2147483647); got != -1 {
-               fmt.Printf("mul_int32 2147483647%s-2147483647 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_2147483647_ssa(-2147483647); got != -1 {
-               fmt.Printf("mul_int32 -2147483647%s2147483647 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_2147483647_int32_ssa(-1); got != -2147483647 {
-               fmt.Printf("mul_int32 2147483647%s-1 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_2147483647_ssa(-1); got != -2147483647 {
-               fmt.Printf("mul_int32 -1%s2147483647 = %d, wanted -2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_2147483647_int32_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 2147483647%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_2147483647_ssa(0); got != 0 {
-               fmt.Printf("mul_int32 0%s2147483647 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_2147483647_int32_ssa(1); got != 2147483647 {
-               fmt.Printf("mul_int32 2147483647%s1 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_2147483647_ssa(1); got != 2147483647 {
-               fmt.Printf("mul_int32 1%s2147483647 = %d, wanted 2147483647\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_2147483647_int32_ssa(2147483647); got != 1 {
-               fmt.Printf("mul_int32 2147483647%s2147483647 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int32_2147483647_ssa(2147483647); got != 1 {
-               fmt.Printf("mul_int32 2147483647%s2147483647 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483648_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("mod_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483648_ssa(-2147483648); got != 0 {
-               fmt.Printf("mod_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483648_int32_ssa(-2147483647); got != -1 {
-               fmt.Printf("mod_int32 -2147483648%s-2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483648_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("mod_int32 -2147483647%s-2147483648 = %d, wanted -2147483647\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483648_int32_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 -2147483648%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483648_ssa(-1); got != -1 {
-               fmt.Printf("mod_int32 -1%s-2147483648 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483648_ssa(0); got != 0 {
-               fmt.Printf("mod_int32 0%s-2147483648 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483648_int32_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 -2147483648%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483648_ssa(1); got != 1 {
-               fmt.Printf("mod_int32 1%s-2147483648 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483648_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("mod_int32 -2147483648%s2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483648_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("mod_int32 2147483647%s-2147483648 = %d, wanted 2147483647\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483647_int32_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("mod_int32 -2147483647%s-2147483648 = %d, wanted -2147483647\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483647_ssa(-2147483648); got != -1 {
-               fmt.Printf("mod_int32 -2147483648%s-2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483647_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s-2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483647_ssa(-2147483647); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s-2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483647_int32_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483647_ssa(-1); got != -1 {
-               fmt.Printf("mod_int32 -1%s-2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483647_ssa(0); got != 0 {
-               fmt.Printf("mod_int32 0%s-2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483647_int32_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483647_ssa(1); got != 1 {
-               fmt.Printf("mod_int32 1%s-2147483647 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg2147483647_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg2147483647_ssa(2147483647); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s-2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int32_ssa(-2147483648); got != -1 {
-               fmt.Printf("mod_int32 -1%s-2147483648 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg1_ssa(-2147483648); got != 0 {
-               fmt.Printf("mod_int32 -2147483648%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int32_ssa(-2147483647); got != -1 {
-               fmt.Printf("mod_int32 -1%s-2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg1_ssa(-2147483647); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int32_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mod_int32 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int32_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg1_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("mod_int32 -1%s2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_Neg1_ssa(2147483647); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("mod_int32 0%s-2147483648 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("mod_int32 0%s-2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int32_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int32_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("mod_int32 0%s2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int32_ssa(-2147483648); got != 1 {
-               fmt.Printf("mod_int32 1%s-2147483648 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_1_ssa(-2147483648); got != 0 {
-               fmt.Printf("mod_int32 -2147483648%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("mod_int32 1%s-2147483647 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_1_ssa(-2147483647); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int32_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_1_ssa(0); got != 0 {
-               fmt.Printf("mod_int32 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int32_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_1_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int32_ssa(2147483647); got != 1 {
-               fmt.Printf("mod_int32 1%s2147483647 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_1_ssa(2147483647); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_2147483647_int32_ssa(-2147483648); got != 2147483647 {
-               fmt.Printf("mod_int32 2147483647%s-2147483648 = %d, wanted 2147483647\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_2147483647_ssa(-2147483648); got != -1 {
-               fmt.Printf("mod_int32 -2147483648%s2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_2147483647_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s-2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_2147483647_ssa(-2147483647); got != 0 {
-               fmt.Printf("mod_int32 -2147483647%s2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_2147483647_int32_ssa(-1); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_2147483647_ssa(-1); got != -1 {
-               fmt.Printf("mod_int32 -1%s2147483647 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_2147483647_ssa(0); got != 0 {
-               fmt.Printf("mod_int32 0%s2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_2147483647_int32_ssa(1); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_2147483647_ssa(1); got != 1 {
-               fmt.Printf("mod_int32 1%s2147483647 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_2147483647_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int32_2147483647_ssa(2147483647); got != 0 {
-               fmt.Printf("mod_int32 2147483647%s2147483647 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483648_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483648%s-2147483648 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483648_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483648%s-2147483648 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483648_int32_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483648%s-2147483647 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483648_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483647%s-2147483648 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483648_int32_ssa(-1); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483648%s-1 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483648_ssa(-1); got != -2147483648 {
-               fmt.Printf("and_int32 -1%s-2147483648 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483648_int32_ssa(0); got != 0 {
-               fmt.Printf("and_int32 -2147483648%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483648_ssa(0); got != 0 {
-               fmt.Printf("and_int32 0%s-2147483648 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483648_int32_ssa(1); got != 0 {
-               fmt.Printf("and_int32 -2147483648%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483648_ssa(1); got != 0 {
-               fmt.Printf("and_int32 1%s-2147483648 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483648_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("and_int32 -2147483648%s2147483647 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483648_ssa(2147483647); got != 0 {
-               fmt.Printf("and_int32 2147483647%s-2147483648 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483647_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483647%s-2147483648 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483647_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483648%s-2147483647 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483647_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("and_int32 -2147483647%s-2147483647 = %d, wanted -2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483647_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("and_int32 -2147483647%s-2147483647 = %d, wanted -2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483647_int32_ssa(-1); got != -2147483647 {
-               fmt.Printf("and_int32 -2147483647%s-1 = %d, wanted -2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483647_ssa(-1); got != -2147483647 {
-               fmt.Printf("and_int32 -1%s-2147483647 = %d, wanted -2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483647_int32_ssa(0); got != 0 {
-               fmt.Printf("and_int32 -2147483647%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483647_ssa(0); got != 0 {
-               fmt.Printf("and_int32 0%s-2147483647 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483647_int32_ssa(1); got != 1 {
-               fmt.Printf("and_int32 -2147483647%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483647_ssa(1); got != 1 {
-               fmt.Printf("and_int32 1%s-2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg2147483647_int32_ssa(2147483647); got != 1 {
-               fmt.Printf("and_int32 -2147483647%s2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg2147483647_ssa(2147483647); got != 1 {
-               fmt.Printf("and_int32 2147483647%s-2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("and_int32 -1%s-2147483648 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg1_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("and_int32 -2147483648%s-1 = %d, wanted -2147483648\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("and_int32 -1%s-2147483647 = %d, wanted -2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg1_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("and_int32 -2147483647%s-1 = %d, wanted -2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int32_ssa(-1); got != -1 {
-               fmt.Printf("and_int32 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("and_int32 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int32_ssa(0); got != 0 {
-               fmt.Printf("and_int32 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg1_ssa(0); got != 0 {
-               fmt.Printf("and_int32 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int32_ssa(1); got != 1 {
-               fmt.Printf("and_int32 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg1_ssa(1); got != 1 {
-               fmt.Printf("and_int32 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("and_int32 -1%s2147483647 = %d, wanted 2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_Neg1_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("and_int32 2147483647%s-1 = %d, wanted 2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("and_int32 0%s-2147483648 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_0_ssa(-2147483648); got != 0 {
-               fmt.Printf("and_int32 -2147483648%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("and_int32 0%s-2147483647 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_0_ssa(-2147483647); got != 0 {
-               fmt.Printf("and_int32 -2147483647%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int32_ssa(-1); got != 0 {
-               fmt.Printf("and_int32 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_0_ssa(-1); got != 0 {
-               fmt.Printf("and_int32 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int32_ssa(0); got != 0 {
-               fmt.Printf("and_int32 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_0_ssa(0); got != 0 {
-               fmt.Printf("and_int32 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int32_ssa(1); got != 0 {
-               fmt.Printf("and_int32 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_0_ssa(1); got != 0 {
-               fmt.Printf("and_int32 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("and_int32 0%s2147483647 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_0_ssa(2147483647); got != 0 {
-               fmt.Printf("and_int32 2147483647%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("and_int32 1%s-2147483648 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_1_ssa(-2147483648); got != 0 {
-               fmt.Printf("and_int32 -2147483648%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("and_int32 1%s-2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_1_ssa(-2147483647); got != 1 {
-               fmt.Printf("and_int32 -2147483647%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int32_ssa(-1); got != 1 {
-               fmt.Printf("and_int32 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_1_ssa(-1); got != 1 {
-               fmt.Printf("and_int32 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int32_ssa(0); got != 0 {
-               fmt.Printf("and_int32 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_1_ssa(0); got != 0 {
-               fmt.Printf("and_int32 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int32_ssa(1); got != 1 {
-               fmt.Printf("and_int32 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_1_ssa(1); got != 1 {
-               fmt.Printf("and_int32 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int32_ssa(2147483647); got != 1 {
-               fmt.Printf("and_int32 1%s2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_1_ssa(2147483647); got != 1 {
-               fmt.Printf("and_int32 2147483647%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_2147483647_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("and_int32 2147483647%s-2147483648 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_2147483647_ssa(-2147483648); got != 0 {
-               fmt.Printf("and_int32 -2147483648%s2147483647 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_2147483647_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("and_int32 2147483647%s-2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_2147483647_ssa(-2147483647); got != 1 {
-               fmt.Printf("and_int32 -2147483647%s2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_2147483647_int32_ssa(-1); got != 2147483647 {
-               fmt.Printf("and_int32 2147483647%s-1 = %d, wanted 2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_2147483647_ssa(-1); got != 2147483647 {
-               fmt.Printf("and_int32 -1%s2147483647 = %d, wanted 2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_2147483647_int32_ssa(0); got != 0 {
-               fmt.Printf("and_int32 2147483647%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_2147483647_ssa(0); got != 0 {
-               fmt.Printf("and_int32 0%s2147483647 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_2147483647_int32_ssa(1); got != 1 {
-               fmt.Printf("and_int32 2147483647%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_2147483647_ssa(1); got != 1 {
-               fmt.Printf("and_int32 1%s2147483647 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_2147483647_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("and_int32 2147483647%s2147483647 = %d, wanted 2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int32_2147483647_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("and_int32 2147483647%s2147483647 = %d, wanted 2147483647\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483648_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("or_int32 -2147483648%s-2147483648 = %d, wanted -2147483648\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483648_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("or_int32 -2147483648%s-2147483648 = %d, wanted -2147483648\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483648_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483648%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483648_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s-2147483648 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483648_int32_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -2147483648%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483648_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -1%s-2147483648 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483648_int32_ssa(0); got != -2147483648 {
-               fmt.Printf("or_int32 -2147483648%s0 = %d, wanted -2147483648\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483648_ssa(0); got != -2147483648 {
-               fmt.Printf("or_int32 0%s-2147483648 = %d, wanted -2147483648\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483648_int32_ssa(1); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483648%s1 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483648_ssa(1); got != -2147483647 {
-               fmt.Printf("or_int32 1%s-2147483648 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483648_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("or_int32 -2147483648%s2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483648_ssa(2147483647); got != -1 {
-               fmt.Printf("or_int32 2147483647%s-2147483648 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483647_int32_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s-2147483648 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483647_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483648%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483647_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483647_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483647_int32_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -2147483647%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483647_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -1%s-2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483647_int32_ssa(0); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s0 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483647_ssa(0); got != -2147483647 {
-               fmt.Printf("or_int32 0%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483647_int32_ssa(1); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s1 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483647_ssa(1); got != -2147483647 {
-               fmt.Printf("or_int32 1%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg2147483647_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("or_int32 -2147483647%s2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg2147483647_ssa(2147483647); got != -1 {
-               fmt.Printf("or_int32 2147483647%s-2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int32_ssa(-2147483648); got != -1 {
-               fmt.Printf("or_int32 -1%s-2147483648 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg1_ssa(-2147483648); got != -1 {
-               fmt.Printf("or_int32 -2147483648%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int32_ssa(-2147483647); got != -1 {
-               fmt.Printf("or_int32 -1%s-2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg1_ssa(-2147483647); got != -1 {
-               fmt.Printf("or_int32 -2147483647%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int32_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int32_ssa(0); got != -1 {
-               fmt.Printf("or_int32 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg1_ssa(0); got != -1 {
-               fmt.Printf("or_int32 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int32_ssa(1); got != -1 {
-               fmt.Printf("or_int32 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg1_ssa(1); got != -1 {
-               fmt.Printf("or_int32 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("or_int32 -1%s2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_Neg1_ssa(2147483647); got != -1 {
-               fmt.Printf("or_int32 2147483647%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("or_int32 0%s-2147483648 = %d, wanted -2147483648\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_0_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("or_int32 -2147483648%s0 = %d, wanted -2147483648\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 0%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_0_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s0 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int32_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_0_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int32_ssa(0); got != 0 {
-               fmt.Printf("or_int32 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_0_ssa(0); got != 0 {
-               fmt.Printf("or_int32 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int32_ssa(1); got != 1 {
-               fmt.Printf("or_int32 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_0_ssa(1); got != 1 {
-               fmt.Printf("or_int32 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("or_int32 0%s2147483647 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_0_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("or_int32 2147483647%s0 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int32_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("or_int32 1%s-2147483648 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_1_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483648%s1 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 1%s-2147483647 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_1_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("or_int32 -2147483647%s1 = %d, wanted -2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int32_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_1_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int32_ssa(0); got != 1 {
-               fmt.Printf("or_int32 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_1_ssa(0); got != 1 {
-               fmt.Printf("or_int32 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int32_ssa(1); got != 1 {
-               fmt.Printf("or_int32 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_1_ssa(1); got != 1 {
-               fmt.Printf("or_int32 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("or_int32 1%s2147483647 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_1_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("or_int32 2147483647%s1 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_2147483647_int32_ssa(-2147483648); got != -1 {
-               fmt.Printf("or_int32 2147483647%s-2147483648 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_2147483647_ssa(-2147483648); got != -1 {
-               fmt.Printf("or_int32 -2147483648%s2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_2147483647_int32_ssa(-2147483647); got != -1 {
-               fmt.Printf("or_int32 2147483647%s-2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_2147483647_ssa(-2147483647); got != -1 {
-               fmt.Printf("or_int32 -2147483647%s2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_2147483647_int32_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 2147483647%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_2147483647_ssa(-1); got != -1 {
-               fmt.Printf("or_int32 -1%s2147483647 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_2147483647_int32_ssa(0); got != 2147483647 {
-               fmt.Printf("or_int32 2147483647%s0 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_2147483647_ssa(0); got != 2147483647 {
-               fmt.Printf("or_int32 0%s2147483647 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_2147483647_int32_ssa(1); got != 2147483647 {
-               fmt.Printf("or_int32 2147483647%s1 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_2147483647_ssa(1); got != 2147483647 {
-               fmt.Printf("or_int32 1%s2147483647 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_2147483647_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("or_int32 2147483647%s2147483647 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int32_2147483647_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("or_int32 2147483647%s2147483647 = %d, wanted 2147483647\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483648_int32_ssa(-2147483648); got != 0 {
-               fmt.Printf("xor_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483648_ssa(-2147483648); got != 0 {
-               fmt.Printf("xor_int32 -2147483648%s-2147483648 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483648_int32_ssa(-2147483647); got != 1 {
-               fmt.Printf("xor_int32 -2147483648%s-2147483647 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483648_ssa(-2147483647); got != 1 {
-               fmt.Printf("xor_int32 -2147483647%s-2147483648 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483648_int32_ssa(-1); got != 2147483647 {
-               fmt.Printf("xor_int32 -2147483648%s-1 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483648_ssa(-1); got != 2147483647 {
-               fmt.Printf("xor_int32 -1%s-2147483648 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483648_int32_ssa(0); got != -2147483648 {
-               fmt.Printf("xor_int32 -2147483648%s0 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483648_ssa(0); got != -2147483648 {
-               fmt.Printf("xor_int32 0%s-2147483648 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483648_int32_ssa(1); got != -2147483647 {
-               fmt.Printf("xor_int32 -2147483648%s1 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483648_ssa(1); got != -2147483647 {
-               fmt.Printf("xor_int32 1%s-2147483648 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483648_int32_ssa(2147483647); got != -1 {
-               fmt.Printf("xor_int32 -2147483648%s2147483647 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483648_ssa(2147483647); got != -1 {
-               fmt.Printf("xor_int32 2147483647%s-2147483648 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483647_int32_ssa(-2147483648); got != 1 {
-               fmt.Printf("xor_int32 -2147483647%s-2147483648 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483647_ssa(-2147483648); got != 1 {
-               fmt.Printf("xor_int32 -2147483648%s-2147483647 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483647_int32_ssa(-2147483647); got != 0 {
-               fmt.Printf("xor_int32 -2147483647%s-2147483647 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483647_ssa(-2147483647); got != 0 {
-               fmt.Printf("xor_int32 -2147483647%s-2147483647 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483647_int32_ssa(-1); got != 2147483646 {
-               fmt.Printf("xor_int32 -2147483647%s-1 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483647_ssa(-1); got != 2147483646 {
-               fmt.Printf("xor_int32 -1%s-2147483647 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483647_int32_ssa(0); got != -2147483647 {
-               fmt.Printf("xor_int32 -2147483647%s0 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483647_ssa(0); got != -2147483647 {
-               fmt.Printf("xor_int32 0%s-2147483647 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483647_int32_ssa(1); got != -2147483648 {
-               fmt.Printf("xor_int32 -2147483647%s1 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483647_ssa(1); got != -2147483648 {
-               fmt.Printf("xor_int32 1%s-2147483647 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg2147483647_int32_ssa(2147483647); got != -2 {
-               fmt.Printf("xor_int32 -2147483647%s2147483647 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg2147483647_ssa(2147483647); got != -2 {
-               fmt.Printf("xor_int32 2147483647%s-2147483647 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int32_ssa(-2147483648); got != 2147483647 {
-               fmt.Printf("xor_int32 -1%s-2147483648 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg1_ssa(-2147483648); got != 2147483647 {
-               fmt.Printf("xor_int32 -2147483648%s-1 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int32_ssa(-2147483647); got != 2147483646 {
-               fmt.Printf("xor_int32 -1%s-2147483647 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg1_ssa(-2147483647); got != 2147483646 {
-               fmt.Printf("xor_int32 -2147483647%s-1 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int32_ssa(-1); got != 0 {
-               fmt.Printf("xor_int32 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("xor_int32 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int32_ssa(0); got != -1 {
-               fmt.Printf("xor_int32 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg1_ssa(0); got != -1 {
-               fmt.Printf("xor_int32 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int32_ssa(1); got != -2 {
-               fmt.Printf("xor_int32 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg1_ssa(1); got != -2 {
-               fmt.Printf("xor_int32 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int32_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("xor_int32 -1%s2147483647 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_Neg1_ssa(2147483647); got != -2147483648 {
-               fmt.Printf("xor_int32 2147483647%s-1 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int32_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("xor_int32 0%s-2147483648 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_0_ssa(-2147483648); got != -2147483648 {
-               fmt.Printf("xor_int32 -2147483648%s0 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int32_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("xor_int32 0%s-2147483647 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_0_ssa(-2147483647); got != -2147483647 {
-               fmt.Printf("xor_int32 -2147483647%s0 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int32_ssa(-1); got != -1 {
-               fmt.Printf("xor_int32 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_0_ssa(-1); got != -1 {
-               fmt.Printf("xor_int32 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int32_ssa(0); got != 0 {
-               fmt.Printf("xor_int32 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_0_ssa(0); got != 0 {
-               fmt.Printf("xor_int32 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int32_ssa(1); got != 1 {
-               fmt.Printf("xor_int32 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_0_ssa(1); got != 1 {
-               fmt.Printf("xor_int32 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int32_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("xor_int32 0%s2147483647 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_0_ssa(2147483647); got != 2147483647 {
-               fmt.Printf("xor_int32 2147483647%s0 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int32_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("xor_int32 1%s-2147483648 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_1_ssa(-2147483648); got != -2147483647 {
-               fmt.Printf("xor_int32 -2147483648%s1 = %d, wanted -2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int32_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("xor_int32 1%s-2147483647 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_1_ssa(-2147483647); got != -2147483648 {
-               fmt.Printf("xor_int32 -2147483647%s1 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int32_ssa(-1); got != -2 {
-               fmt.Printf("xor_int32 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_1_ssa(-1); got != -2 {
-               fmt.Printf("xor_int32 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int32_ssa(0); got != 1 {
-               fmt.Printf("xor_int32 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_1_ssa(0); got != 1 {
-               fmt.Printf("xor_int32 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int32_ssa(1); got != 0 {
-               fmt.Printf("xor_int32 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_1_ssa(1); got != 0 {
-               fmt.Printf("xor_int32 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int32_ssa(2147483647); got != 2147483646 {
-               fmt.Printf("xor_int32 1%s2147483647 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_1_ssa(2147483647); got != 2147483646 {
-               fmt.Printf("xor_int32 2147483647%s1 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_2147483647_int32_ssa(-2147483648); got != -1 {
-               fmt.Printf("xor_int32 2147483647%s-2147483648 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_2147483647_ssa(-2147483648); got != -1 {
-               fmt.Printf("xor_int32 -2147483648%s2147483647 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_2147483647_int32_ssa(-2147483647); got != -2 {
-               fmt.Printf("xor_int32 2147483647%s-2147483647 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_2147483647_ssa(-2147483647); got != -2 {
-               fmt.Printf("xor_int32 -2147483647%s2147483647 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_2147483647_int32_ssa(-1); got != -2147483648 {
-               fmt.Printf("xor_int32 2147483647%s-1 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_2147483647_ssa(-1); got != -2147483648 {
-               fmt.Printf("xor_int32 -1%s2147483647 = %d, wanted -2147483648\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_2147483647_int32_ssa(0); got != 2147483647 {
-               fmt.Printf("xor_int32 2147483647%s0 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_2147483647_ssa(0); got != 2147483647 {
-               fmt.Printf("xor_int32 0%s2147483647 = %d, wanted 2147483647\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_2147483647_int32_ssa(1); got != 2147483646 {
-               fmt.Printf("xor_int32 2147483647%s1 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_2147483647_ssa(1); got != 2147483646 {
-               fmt.Printf("xor_int32 1%s2147483647 = %d, wanted 2147483646\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_2147483647_int32_ssa(2147483647); got != 0 {
-               fmt.Printf("xor_int32 2147483647%s2147483647 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int32_2147483647_ssa(2147483647); got != 0 {
-               fmt.Printf("xor_int32 2147483647%s2147483647 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := add_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("add_uint16 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("add_uint16 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint16_ssa(1); got != 1 {
-               fmt.Printf("add_uint16 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_0_ssa(1); got != 1 {
-               fmt.Printf("add_uint16 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint16_ssa(65535); got != 65535 {
-               fmt.Printf("add_uint16 0%s65535 = %d, wanted 65535\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_0_ssa(65535); got != 65535 {
-               fmt.Printf("add_uint16 65535%s0 = %d, wanted 65535\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint16_ssa(0); got != 1 {
-               fmt.Printf("add_uint16 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_1_ssa(0); got != 1 {
-               fmt.Printf("add_uint16 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint16_ssa(1); got != 2 {
-               fmt.Printf("add_uint16 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_1_ssa(1); got != 2 {
-               fmt.Printf("add_uint16 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint16_ssa(65535); got != 0 {
-               fmt.Printf("add_uint16 1%s65535 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_1_ssa(65535); got != 0 {
-               fmt.Printf("add_uint16 65535%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_65535_uint16_ssa(0); got != 65535 {
-               fmt.Printf("add_uint16 65535%s0 = %d, wanted 65535\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_65535_ssa(0); got != 65535 {
-               fmt.Printf("add_uint16 0%s65535 = %d, wanted 65535\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_65535_uint16_ssa(1); got != 0 {
-               fmt.Printf("add_uint16 65535%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_65535_ssa(1); got != 0 {
-               fmt.Printf("add_uint16 1%s65535 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_65535_uint16_ssa(65535); got != 65534 {
-               fmt.Printf("add_uint16 65535%s65535 = %d, wanted 65534\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint16_65535_ssa(65535); got != 65534 {
-               fmt.Printf("add_uint16 65535%s65535 = %d, wanted 65534\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("sub_uint16 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("sub_uint16 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint16_ssa(1); got != 65535 {
-               fmt.Printf("sub_uint16 0%s1 = %d, wanted 65535\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_0_ssa(1); got != 1 {
-               fmt.Printf("sub_uint16 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint16_ssa(65535); got != 1 {
-               fmt.Printf("sub_uint16 0%s65535 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_0_ssa(65535); got != 65535 {
-               fmt.Printf("sub_uint16 65535%s0 = %d, wanted 65535\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint16_ssa(0); got != 1 {
-               fmt.Printf("sub_uint16 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_1_ssa(0); got != 65535 {
-               fmt.Printf("sub_uint16 0%s1 = %d, wanted 65535\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint16_ssa(1); got != 0 {
-               fmt.Printf("sub_uint16 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_1_ssa(1); got != 0 {
-               fmt.Printf("sub_uint16 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint16_ssa(65535); got != 2 {
-               fmt.Printf("sub_uint16 1%s65535 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_1_ssa(65535); got != 65534 {
-               fmt.Printf("sub_uint16 65535%s1 = %d, wanted 65534\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_65535_uint16_ssa(0); got != 65535 {
-               fmt.Printf("sub_uint16 65535%s0 = %d, wanted 65535\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_65535_ssa(0); got != 1 {
-               fmt.Printf("sub_uint16 0%s65535 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_65535_uint16_ssa(1); got != 65534 {
-               fmt.Printf("sub_uint16 65535%s1 = %d, wanted 65534\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_65535_ssa(1); got != 2 {
-               fmt.Printf("sub_uint16 1%s65535 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_65535_uint16_ssa(65535); got != 0 {
-               fmt.Printf("sub_uint16 65535%s65535 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint16_65535_ssa(65535); got != 0 {
-               fmt.Printf("sub_uint16 65535%s65535 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_0_uint16_ssa(1); got != 0 {
-               fmt.Printf("div_uint16 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_uint16_ssa(65535); got != 0 {
-               fmt.Printf("div_uint16 0%s65535 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint16_1_ssa(0); got != 0 {
-               fmt.Printf("div_uint16 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint16_ssa(1); got != 1 {
-               fmt.Printf("div_uint16 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint16_1_ssa(1); got != 1 {
-               fmt.Printf("div_uint16 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint16_ssa(65535); got != 0 {
-               fmt.Printf("div_uint16 1%s65535 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint16_1_ssa(65535); got != 65535 {
-               fmt.Printf("div_uint16 65535%s1 = %d, wanted 65535\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint16_65535_ssa(0); got != 0 {
-               fmt.Printf("div_uint16 0%s65535 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_65535_uint16_ssa(1); got != 65535 {
-               fmt.Printf("div_uint16 65535%s1 = %d, wanted 65535\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint16_65535_ssa(1); got != 0 {
-               fmt.Printf("div_uint16 1%s65535 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_65535_uint16_ssa(65535); got != 1 {
-               fmt.Printf("div_uint16 65535%s65535 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint16_65535_ssa(65535); got != 1 {
-               fmt.Printf("div_uint16 65535%s65535 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("mul_uint16 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("mul_uint16 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint16_ssa(1); got != 0 {
-               fmt.Printf("mul_uint16 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_0_ssa(1); got != 0 {
-               fmt.Printf("mul_uint16 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint16_ssa(65535); got != 0 {
-               fmt.Printf("mul_uint16 0%s65535 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_0_ssa(65535); got != 0 {
-               fmt.Printf("mul_uint16 65535%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint16_ssa(0); got != 0 {
-               fmt.Printf("mul_uint16 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_1_ssa(0); got != 0 {
-               fmt.Printf("mul_uint16 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint16_ssa(1); got != 1 {
-               fmt.Printf("mul_uint16 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_1_ssa(1); got != 1 {
-               fmt.Printf("mul_uint16 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint16_ssa(65535); got != 65535 {
-               fmt.Printf("mul_uint16 1%s65535 = %d, wanted 65535\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_1_ssa(65535); got != 65535 {
-               fmt.Printf("mul_uint16 65535%s1 = %d, wanted 65535\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_65535_uint16_ssa(0); got != 0 {
-               fmt.Printf("mul_uint16 65535%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_65535_ssa(0); got != 0 {
-               fmt.Printf("mul_uint16 0%s65535 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_65535_uint16_ssa(1); got != 65535 {
-               fmt.Printf("mul_uint16 65535%s1 = %d, wanted 65535\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_65535_ssa(1); got != 65535 {
-               fmt.Printf("mul_uint16 1%s65535 = %d, wanted 65535\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_65535_uint16_ssa(65535); got != 1 {
-               fmt.Printf("mul_uint16 65535%s65535 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint16_65535_ssa(65535); got != 1 {
-               fmt.Printf("mul_uint16 65535%s65535 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint16 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint16 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint16_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint16 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_0_ssa(1); got != 1 {
-               fmt.Printf("lsh_uint16 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint16_ssa(65535); got != 0 {
-               fmt.Printf("lsh_uint16 0%s65535 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_0_ssa(65535); got != 65535 {
-               fmt.Printf("lsh_uint16 65535%s0 = %d, wanted 65535\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint16_ssa(0); got != 1 {
-               fmt.Printf("lsh_uint16 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_1_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint16 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint16_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint16 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_1_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint16 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint16_ssa(65535); got != 0 {
-               fmt.Printf("lsh_uint16 1%s65535 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_1_ssa(65535); got != 65534 {
-               fmt.Printf("lsh_uint16 65535%s1 = %d, wanted 65534\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_65535_uint16_ssa(0); got != 65535 {
-               fmt.Printf("lsh_uint16 65535%s0 = %d, wanted 65535\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_65535_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint16 0%s65535 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_65535_uint16_ssa(1); got != 65534 {
-               fmt.Printf("lsh_uint16 65535%s1 = %d, wanted 65534\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_65535_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint16 1%s65535 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_65535_uint16_ssa(65535); got != 0 {
-               fmt.Printf("lsh_uint16 65535%s65535 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint16_65535_ssa(65535); got != 0 {
-               fmt.Printf("lsh_uint16 65535%s65535 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint16 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint16 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint16_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint16 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_0_ssa(1); got != 1 {
-               fmt.Printf("rsh_uint16 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint16_ssa(65535); got != 0 {
-               fmt.Printf("rsh_uint16 0%s65535 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_0_ssa(65535); got != 65535 {
-               fmt.Printf("rsh_uint16 65535%s0 = %d, wanted 65535\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint16_ssa(0); got != 1 {
-               fmt.Printf("rsh_uint16 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_1_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint16 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint16_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint16 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_1_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint16 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint16_ssa(65535); got != 0 {
-               fmt.Printf("rsh_uint16 1%s65535 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_1_ssa(65535); got != 32767 {
-               fmt.Printf("rsh_uint16 65535%s1 = %d, wanted 32767\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_65535_uint16_ssa(0); got != 65535 {
-               fmt.Printf("rsh_uint16 65535%s0 = %d, wanted 65535\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_65535_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint16 0%s65535 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_65535_uint16_ssa(1); got != 32767 {
-               fmt.Printf("rsh_uint16 65535%s1 = %d, wanted 32767\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_65535_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint16 1%s65535 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_65535_uint16_ssa(65535); got != 0 {
-               fmt.Printf("rsh_uint16 65535%s65535 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint16_65535_ssa(65535); got != 0 {
-               fmt.Printf("rsh_uint16 65535%s65535 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint16_ssa(1); got != 0 {
-               fmt.Printf("mod_uint16 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint16_ssa(65535); got != 0 {
-               fmt.Printf("mod_uint16 0%s65535 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint16_1_ssa(0); got != 0 {
-               fmt.Printf("mod_uint16 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint16_ssa(1); got != 0 {
-               fmt.Printf("mod_uint16 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint16_1_ssa(1); got != 0 {
-               fmt.Printf("mod_uint16 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint16_ssa(65535); got != 1 {
-               fmt.Printf("mod_uint16 1%s65535 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint16_1_ssa(65535); got != 0 {
-               fmt.Printf("mod_uint16 65535%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint16_65535_ssa(0); got != 0 {
-               fmt.Printf("mod_uint16 0%s65535 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_65535_uint16_ssa(1); got != 0 {
-               fmt.Printf("mod_uint16 65535%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint16_65535_ssa(1); got != 1 {
-               fmt.Printf("mod_uint16 1%s65535 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_65535_uint16_ssa(65535); got != 0 {
-               fmt.Printf("mod_uint16 65535%s65535 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint16_65535_ssa(65535); got != 0 {
-               fmt.Printf("mod_uint16 65535%s65535 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("and_uint16 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("and_uint16 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint16_ssa(1); got != 0 {
-               fmt.Printf("and_uint16 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_0_ssa(1); got != 0 {
-               fmt.Printf("and_uint16 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint16_ssa(65535); got != 0 {
-               fmt.Printf("and_uint16 0%s65535 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_0_ssa(65535); got != 0 {
-               fmt.Printf("and_uint16 65535%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint16_ssa(0); got != 0 {
-               fmt.Printf("and_uint16 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_1_ssa(0); got != 0 {
-               fmt.Printf("and_uint16 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint16_ssa(1); got != 1 {
-               fmt.Printf("and_uint16 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_1_ssa(1); got != 1 {
-               fmt.Printf("and_uint16 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint16_ssa(65535); got != 1 {
-               fmt.Printf("and_uint16 1%s65535 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_1_ssa(65535); got != 1 {
-               fmt.Printf("and_uint16 65535%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_65535_uint16_ssa(0); got != 0 {
-               fmt.Printf("and_uint16 65535%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_65535_ssa(0); got != 0 {
-               fmt.Printf("and_uint16 0%s65535 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_65535_uint16_ssa(1); got != 1 {
-               fmt.Printf("and_uint16 65535%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_65535_ssa(1); got != 1 {
-               fmt.Printf("and_uint16 1%s65535 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_65535_uint16_ssa(65535); got != 65535 {
-               fmt.Printf("and_uint16 65535%s65535 = %d, wanted 65535\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint16_65535_ssa(65535); got != 65535 {
-               fmt.Printf("and_uint16 65535%s65535 = %d, wanted 65535\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("or_uint16 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("or_uint16 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint16_ssa(1); got != 1 {
-               fmt.Printf("or_uint16 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_0_ssa(1); got != 1 {
-               fmt.Printf("or_uint16 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint16_ssa(65535); got != 65535 {
-               fmt.Printf("or_uint16 0%s65535 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_0_ssa(65535); got != 65535 {
-               fmt.Printf("or_uint16 65535%s0 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint16_ssa(0); got != 1 {
-               fmt.Printf("or_uint16 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_1_ssa(0); got != 1 {
-               fmt.Printf("or_uint16 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint16_ssa(1); got != 1 {
-               fmt.Printf("or_uint16 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_1_ssa(1); got != 1 {
-               fmt.Printf("or_uint16 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint16_ssa(65535); got != 65535 {
-               fmt.Printf("or_uint16 1%s65535 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_1_ssa(65535); got != 65535 {
-               fmt.Printf("or_uint16 65535%s1 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_65535_uint16_ssa(0); got != 65535 {
-               fmt.Printf("or_uint16 65535%s0 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_65535_ssa(0); got != 65535 {
-               fmt.Printf("or_uint16 0%s65535 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_65535_uint16_ssa(1); got != 65535 {
-               fmt.Printf("or_uint16 65535%s1 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_65535_ssa(1); got != 65535 {
-               fmt.Printf("or_uint16 1%s65535 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_65535_uint16_ssa(65535); got != 65535 {
-               fmt.Printf("or_uint16 65535%s65535 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint16_65535_ssa(65535); got != 65535 {
-               fmt.Printf("or_uint16 65535%s65535 = %d, wanted 65535\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint16_ssa(0); got != 0 {
-               fmt.Printf("xor_uint16 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_0_ssa(0); got != 0 {
-               fmt.Printf("xor_uint16 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint16_ssa(1); got != 1 {
-               fmt.Printf("xor_uint16 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_0_ssa(1); got != 1 {
-               fmt.Printf("xor_uint16 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint16_ssa(65535); got != 65535 {
-               fmt.Printf("xor_uint16 0%s65535 = %d, wanted 65535\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_0_ssa(65535); got != 65535 {
-               fmt.Printf("xor_uint16 65535%s0 = %d, wanted 65535\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint16_ssa(0); got != 1 {
-               fmt.Printf("xor_uint16 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_1_ssa(0); got != 1 {
-               fmt.Printf("xor_uint16 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint16_ssa(1); got != 0 {
-               fmt.Printf("xor_uint16 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_1_ssa(1); got != 0 {
-               fmt.Printf("xor_uint16 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint16_ssa(65535); got != 65534 {
-               fmt.Printf("xor_uint16 1%s65535 = %d, wanted 65534\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_1_ssa(65535); got != 65534 {
-               fmt.Printf("xor_uint16 65535%s1 = %d, wanted 65534\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_65535_uint16_ssa(0); got != 65535 {
-               fmt.Printf("xor_uint16 65535%s0 = %d, wanted 65535\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_65535_ssa(0); got != 65535 {
-               fmt.Printf("xor_uint16 0%s65535 = %d, wanted 65535\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_65535_uint16_ssa(1); got != 65534 {
-               fmt.Printf("xor_uint16 65535%s1 = %d, wanted 65534\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_65535_ssa(1); got != 65534 {
-               fmt.Printf("xor_uint16 1%s65535 = %d, wanted 65534\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_65535_uint16_ssa(65535); got != 0 {
-               fmt.Printf("xor_uint16 65535%s65535 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint16_65535_ssa(65535); got != 0 {
-               fmt.Printf("xor_uint16 65535%s65535 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := add_Neg32768_int16_ssa(-32768); got != 0 {
-               fmt.Printf("add_int16 -32768%s-32768 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32768_ssa(-32768); got != 0 {
-               fmt.Printf("add_int16 -32768%s-32768 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32768_int16_ssa(-32767); got != 1 {
-               fmt.Printf("add_int16 -32768%s-32767 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32768_ssa(-32767); got != 1 {
-               fmt.Printf("add_int16 -32767%s-32768 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32768_int16_ssa(-1); got != 32767 {
-               fmt.Printf("add_int16 -32768%s-1 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32768_ssa(-1); got != 32767 {
-               fmt.Printf("add_int16 -1%s-32768 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32768_int16_ssa(0); got != -32768 {
-               fmt.Printf("add_int16 -32768%s0 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32768_ssa(0); got != -32768 {
-               fmt.Printf("add_int16 0%s-32768 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32768_int16_ssa(1); got != -32767 {
-               fmt.Printf("add_int16 -32768%s1 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32768_ssa(1); got != -32767 {
-               fmt.Printf("add_int16 1%s-32768 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32768_int16_ssa(32766); got != -2 {
-               fmt.Printf("add_int16 -32768%s32766 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32768_ssa(32766); got != -2 {
-               fmt.Printf("add_int16 32766%s-32768 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32768_int16_ssa(32767); got != -1 {
-               fmt.Printf("add_int16 -32768%s32767 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32768_ssa(32767); got != -1 {
-               fmt.Printf("add_int16 32767%s-32768 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32767_int16_ssa(-32768); got != 1 {
-               fmt.Printf("add_int16 -32767%s-32768 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32767_ssa(-32768); got != 1 {
-               fmt.Printf("add_int16 -32768%s-32767 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32767_int16_ssa(-32767); got != 2 {
-               fmt.Printf("add_int16 -32767%s-32767 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32767_ssa(-32767); got != 2 {
-               fmt.Printf("add_int16 -32767%s-32767 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32767_int16_ssa(-1); got != -32768 {
-               fmt.Printf("add_int16 -32767%s-1 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32767_ssa(-1); got != -32768 {
-               fmt.Printf("add_int16 -1%s-32767 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32767_int16_ssa(0); got != -32767 {
-               fmt.Printf("add_int16 -32767%s0 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32767_ssa(0); got != -32767 {
-               fmt.Printf("add_int16 0%s-32767 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32767_int16_ssa(1); got != -32766 {
-               fmt.Printf("add_int16 -32767%s1 = %d, wanted -32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32767_ssa(1); got != -32766 {
-               fmt.Printf("add_int16 1%s-32767 = %d, wanted -32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32767_int16_ssa(32766); got != -1 {
-               fmt.Printf("add_int16 -32767%s32766 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32767_ssa(32766); got != -1 {
-               fmt.Printf("add_int16 32766%s-32767 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg32767_int16_ssa(32767); got != 0 {
-               fmt.Printf("add_int16 -32767%s32767 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg32767_ssa(32767); got != 0 {
-               fmt.Printf("add_int16 32767%s-32767 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int16_ssa(-32768); got != 32767 {
-               fmt.Printf("add_int16 -1%s-32768 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg1_ssa(-32768); got != 32767 {
-               fmt.Printf("add_int16 -32768%s-1 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int16_ssa(-32767); got != -32768 {
-               fmt.Printf("add_int16 -1%s-32767 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg1_ssa(-32767); got != -32768 {
-               fmt.Printf("add_int16 -32767%s-1 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int16_ssa(-1); got != -2 {
-               fmt.Printf("add_int16 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg1_ssa(-1); got != -2 {
-               fmt.Printf("add_int16 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int16_ssa(0); got != -1 {
-               fmt.Printf("add_int16 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg1_ssa(0); got != -1 {
-               fmt.Printf("add_int16 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int16_ssa(1); got != 0 {
-               fmt.Printf("add_int16 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg1_ssa(1); got != 0 {
-               fmt.Printf("add_int16 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int16_ssa(32766); got != 32765 {
-               fmt.Printf("add_int16 -1%s32766 = %d, wanted 32765\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg1_ssa(32766); got != 32765 {
-               fmt.Printf("add_int16 32766%s-1 = %d, wanted 32765\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int16_ssa(32767); got != 32766 {
-               fmt.Printf("add_int16 -1%s32767 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_Neg1_ssa(32767); got != 32766 {
-               fmt.Printf("add_int16 32767%s-1 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("add_int16 0%s-32768 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_0_ssa(-32768); got != -32768 {
-               fmt.Printf("add_int16 -32768%s0 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("add_int16 0%s-32767 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_0_ssa(-32767); got != -32767 {
-               fmt.Printf("add_int16 -32767%s0 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int16_ssa(-1); got != -1 {
-               fmt.Printf("add_int16 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_0_ssa(-1); got != -1 {
-               fmt.Printf("add_int16 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int16_ssa(0); got != 0 {
-               fmt.Printf("add_int16 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_0_ssa(0); got != 0 {
-               fmt.Printf("add_int16 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int16_ssa(1); got != 1 {
-               fmt.Printf("add_int16 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_0_ssa(1); got != 1 {
-               fmt.Printf("add_int16 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int16_ssa(32766); got != 32766 {
-               fmt.Printf("add_int16 0%s32766 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_0_ssa(32766); got != 32766 {
-               fmt.Printf("add_int16 32766%s0 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int16_ssa(32767); got != 32767 {
-               fmt.Printf("add_int16 0%s32767 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_0_ssa(32767); got != 32767 {
-               fmt.Printf("add_int16 32767%s0 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int16_ssa(-32768); got != -32767 {
-               fmt.Printf("add_int16 1%s-32768 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_1_ssa(-32768); got != -32767 {
-               fmt.Printf("add_int16 -32768%s1 = %d, wanted -32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int16_ssa(-32767); got != -32766 {
-               fmt.Printf("add_int16 1%s-32767 = %d, wanted -32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_1_ssa(-32767); got != -32766 {
-               fmt.Printf("add_int16 -32767%s1 = %d, wanted -32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int16_ssa(-1); got != 0 {
-               fmt.Printf("add_int16 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_1_ssa(-1); got != 0 {
-               fmt.Printf("add_int16 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int16_ssa(0); got != 1 {
-               fmt.Printf("add_int16 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_1_ssa(0); got != 1 {
-               fmt.Printf("add_int16 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int16_ssa(1); got != 2 {
-               fmt.Printf("add_int16 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_1_ssa(1); got != 2 {
-               fmt.Printf("add_int16 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int16_ssa(32766); got != 32767 {
-               fmt.Printf("add_int16 1%s32766 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_1_ssa(32766); got != 32767 {
-               fmt.Printf("add_int16 32766%s1 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int16_ssa(32767); got != -32768 {
-               fmt.Printf("add_int16 1%s32767 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_1_ssa(32767); got != -32768 {
-               fmt.Printf("add_int16 32767%s1 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32766_int16_ssa(-32768); got != -2 {
-               fmt.Printf("add_int16 32766%s-32768 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32766_ssa(-32768); got != -2 {
-               fmt.Printf("add_int16 -32768%s32766 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32766_int16_ssa(-32767); got != -1 {
-               fmt.Printf("add_int16 32766%s-32767 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32766_ssa(-32767); got != -1 {
-               fmt.Printf("add_int16 -32767%s32766 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32766_int16_ssa(-1); got != 32765 {
-               fmt.Printf("add_int16 32766%s-1 = %d, wanted 32765\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32766_ssa(-1); got != 32765 {
-               fmt.Printf("add_int16 -1%s32766 = %d, wanted 32765\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32766_int16_ssa(0); got != 32766 {
-               fmt.Printf("add_int16 32766%s0 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32766_ssa(0); got != 32766 {
-               fmt.Printf("add_int16 0%s32766 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32766_int16_ssa(1); got != 32767 {
-               fmt.Printf("add_int16 32766%s1 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32766_ssa(1); got != 32767 {
-               fmt.Printf("add_int16 1%s32766 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32766_int16_ssa(32766); got != -4 {
-               fmt.Printf("add_int16 32766%s32766 = %d, wanted -4\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32766_ssa(32766); got != -4 {
-               fmt.Printf("add_int16 32766%s32766 = %d, wanted -4\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32766_int16_ssa(32767); got != -3 {
-               fmt.Printf("add_int16 32766%s32767 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32766_ssa(32767); got != -3 {
-               fmt.Printf("add_int16 32767%s32766 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32767_int16_ssa(-32768); got != -1 {
-               fmt.Printf("add_int16 32767%s-32768 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32767_ssa(-32768); got != -1 {
-               fmt.Printf("add_int16 -32768%s32767 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32767_int16_ssa(-32767); got != 0 {
-               fmt.Printf("add_int16 32767%s-32767 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32767_ssa(-32767); got != 0 {
-               fmt.Printf("add_int16 -32767%s32767 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32767_int16_ssa(-1); got != 32766 {
-               fmt.Printf("add_int16 32767%s-1 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32767_ssa(-1); got != 32766 {
-               fmt.Printf("add_int16 -1%s32767 = %d, wanted 32766\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32767_int16_ssa(0); got != 32767 {
-               fmt.Printf("add_int16 32767%s0 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32767_ssa(0); got != 32767 {
-               fmt.Printf("add_int16 0%s32767 = %d, wanted 32767\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32767_int16_ssa(1); got != -32768 {
-               fmt.Printf("add_int16 32767%s1 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32767_ssa(1); got != -32768 {
-               fmt.Printf("add_int16 1%s32767 = %d, wanted -32768\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32767_int16_ssa(32766); got != -3 {
-               fmt.Printf("add_int16 32767%s32766 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32767_ssa(32766); got != -3 {
-               fmt.Printf("add_int16 32766%s32767 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_32767_int16_ssa(32767); got != -2 {
-               fmt.Printf("add_int16 32767%s32767 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int16_32767_ssa(32767); got != -2 {
-               fmt.Printf("add_int16 32767%s32767 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32768_int16_ssa(-32768); got != 0 {
-               fmt.Printf("sub_int16 -32768%s-32768 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32768_ssa(-32768); got != 0 {
-               fmt.Printf("sub_int16 -32768%s-32768 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32768_int16_ssa(-32767); got != -1 {
-               fmt.Printf("sub_int16 -32768%s-32767 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32768_ssa(-32767); got != 1 {
-               fmt.Printf("sub_int16 -32767%s-32768 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32768_int16_ssa(-1); got != -32767 {
-               fmt.Printf("sub_int16 -32768%s-1 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32768_ssa(-1); got != 32767 {
-               fmt.Printf("sub_int16 -1%s-32768 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32768_int16_ssa(0); got != -32768 {
-               fmt.Printf("sub_int16 -32768%s0 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32768_ssa(0); got != -32768 {
-               fmt.Printf("sub_int16 0%s-32768 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32768_int16_ssa(1); got != 32767 {
-               fmt.Printf("sub_int16 -32768%s1 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32768_ssa(1); got != -32767 {
-               fmt.Printf("sub_int16 1%s-32768 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32768_int16_ssa(32766); got != 2 {
-               fmt.Printf("sub_int16 -32768%s32766 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32768_ssa(32766); got != -2 {
-               fmt.Printf("sub_int16 32766%s-32768 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32768_int16_ssa(32767); got != 1 {
-               fmt.Printf("sub_int16 -32768%s32767 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32768_ssa(32767); got != -1 {
-               fmt.Printf("sub_int16 32767%s-32768 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32767_int16_ssa(-32768); got != 1 {
-               fmt.Printf("sub_int16 -32767%s-32768 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32767_ssa(-32768); got != -1 {
-               fmt.Printf("sub_int16 -32768%s-32767 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32767_int16_ssa(-32767); got != 0 {
-               fmt.Printf("sub_int16 -32767%s-32767 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32767_ssa(-32767); got != 0 {
-               fmt.Printf("sub_int16 -32767%s-32767 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32767_int16_ssa(-1); got != -32766 {
-               fmt.Printf("sub_int16 -32767%s-1 = %d, wanted -32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32767_ssa(-1); got != 32766 {
-               fmt.Printf("sub_int16 -1%s-32767 = %d, wanted 32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32767_int16_ssa(0); got != -32767 {
-               fmt.Printf("sub_int16 -32767%s0 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32767_ssa(0); got != 32767 {
-               fmt.Printf("sub_int16 0%s-32767 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32767_int16_ssa(1); got != -32768 {
-               fmt.Printf("sub_int16 -32767%s1 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32767_ssa(1); got != -32768 {
-               fmt.Printf("sub_int16 1%s-32767 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32767_int16_ssa(32766); got != 3 {
-               fmt.Printf("sub_int16 -32767%s32766 = %d, wanted 3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32767_ssa(32766); got != -3 {
-               fmt.Printf("sub_int16 32766%s-32767 = %d, wanted -3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg32767_int16_ssa(32767); got != 2 {
-               fmt.Printf("sub_int16 -32767%s32767 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg32767_ssa(32767); got != -2 {
-               fmt.Printf("sub_int16 32767%s-32767 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int16_ssa(-32768); got != 32767 {
-               fmt.Printf("sub_int16 -1%s-32768 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg1_ssa(-32768); got != -32767 {
-               fmt.Printf("sub_int16 -32768%s-1 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int16_ssa(-32767); got != 32766 {
-               fmt.Printf("sub_int16 -1%s-32767 = %d, wanted 32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg1_ssa(-32767); got != -32766 {
-               fmt.Printf("sub_int16 -32767%s-1 = %d, wanted -32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int16_ssa(-1); got != 0 {
-               fmt.Printf("sub_int16 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("sub_int16 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int16_ssa(0); got != -1 {
-               fmt.Printf("sub_int16 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg1_ssa(0); got != 1 {
-               fmt.Printf("sub_int16 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int16_ssa(1); got != -2 {
-               fmt.Printf("sub_int16 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg1_ssa(1); got != 2 {
-               fmt.Printf("sub_int16 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int16_ssa(32766); got != -32767 {
-               fmt.Printf("sub_int16 -1%s32766 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg1_ssa(32766); got != 32767 {
-               fmt.Printf("sub_int16 32766%s-1 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int16_ssa(32767); got != -32768 {
-               fmt.Printf("sub_int16 -1%s32767 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_Neg1_ssa(32767); got != -32768 {
-               fmt.Printf("sub_int16 32767%s-1 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("sub_int16 0%s-32768 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_0_ssa(-32768); got != -32768 {
-               fmt.Printf("sub_int16 -32768%s0 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int16_ssa(-32767); got != 32767 {
-               fmt.Printf("sub_int16 0%s-32767 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_0_ssa(-32767); got != -32767 {
-               fmt.Printf("sub_int16 -32767%s0 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int16_ssa(-1); got != 1 {
-               fmt.Printf("sub_int16 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_0_ssa(-1); got != -1 {
-               fmt.Printf("sub_int16 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int16_ssa(0); got != 0 {
-               fmt.Printf("sub_int16 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_0_ssa(0); got != 0 {
-               fmt.Printf("sub_int16 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int16_ssa(1); got != -1 {
-               fmt.Printf("sub_int16 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_0_ssa(1); got != 1 {
-               fmt.Printf("sub_int16 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int16_ssa(32766); got != -32766 {
-               fmt.Printf("sub_int16 0%s32766 = %d, wanted -32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_0_ssa(32766); got != 32766 {
-               fmt.Printf("sub_int16 32766%s0 = %d, wanted 32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int16_ssa(32767); got != -32767 {
-               fmt.Printf("sub_int16 0%s32767 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_0_ssa(32767); got != 32767 {
-               fmt.Printf("sub_int16 32767%s0 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int16_ssa(-32768); got != -32767 {
-               fmt.Printf("sub_int16 1%s-32768 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_1_ssa(-32768); got != 32767 {
-               fmt.Printf("sub_int16 -32768%s1 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int16_ssa(-32767); got != -32768 {
-               fmt.Printf("sub_int16 1%s-32767 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_1_ssa(-32767); got != -32768 {
-               fmt.Printf("sub_int16 -32767%s1 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int16_ssa(-1); got != 2 {
-               fmt.Printf("sub_int16 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_1_ssa(-1); got != -2 {
-               fmt.Printf("sub_int16 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int16_ssa(0); got != 1 {
-               fmt.Printf("sub_int16 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_1_ssa(0); got != -1 {
-               fmt.Printf("sub_int16 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int16_ssa(1); got != 0 {
-               fmt.Printf("sub_int16 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_1_ssa(1); got != 0 {
-               fmt.Printf("sub_int16 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int16_ssa(32766); got != -32765 {
-               fmt.Printf("sub_int16 1%s32766 = %d, wanted -32765\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_1_ssa(32766); got != 32765 {
-               fmt.Printf("sub_int16 32766%s1 = %d, wanted 32765\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int16_ssa(32767); got != -32766 {
-               fmt.Printf("sub_int16 1%s32767 = %d, wanted -32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_1_ssa(32767); got != 32766 {
-               fmt.Printf("sub_int16 32767%s1 = %d, wanted 32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32766_int16_ssa(-32768); got != -2 {
-               fmt.Printf("sub_int16 32766%s-32768 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32766_ssa(-32768); got != 2 {
-               fmt.Printf("sub_int16 -32768%s32766 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32766_int16_ssa(-32767); got != -3 {
-               fmt.Printf("sub_int16 32766%s-32767 = %d, wanted -3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32766_ssa(-32767); got != 3 {
-               fmt.Printf("sub_int16 -32767%s32766 = %d, wanted 3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32766_int16_ssa(-1); got != 32767 {
-               fmt.Printf("sub_int16 32766%s-1 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32766_ssa(-1); got != -32767 {
-               fmt.Printf("sub_int16 -1%s32766 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32766_int16_ssa(0); got != 32766 {
-               fmt.Printf("sub_int16 32766%s0 = %d, wanted 32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32766_ssa(0); got != -32766 {
-               fmt.Printf("sub_int16 0%s32766 = %d, wanted -32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32766_int16_ssa(1); got != 32765 {
-               fmt.Printf("sub_int16 32766%s1 = %d, wanted 32765\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32766_ssa(1); got != -32765 {
-               fmt.Printf("sub_int16 1%s32766 = %d, wanted -32765\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32766_int16_ssa(32766); got != 0 {
-               fmt.Printf("sub_int16 32766%s32766 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32766_ssa(32766); got != 0 {
-               fmt.Printf("sub_int16 32766%s32766 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32766_int16_ssa(32767); got != -1 {
-               fmt.Printf("sub_int16 32766%s32767 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32766_ssa(32767); got != 1 {
-               fmt.Printf("sub_int16 32767%s32766 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32767_int16_ssa(-32768); got != -1 {
-               fmt.Printf("sub_int16 32767%s-32768 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32767_ssa(-32768); got != 1 {
-               fmt.Printf("sub_int16 -32768%s32767 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32767_int16_ssa(-32767); got != -2 {
-               fmt.Printf("sub_int16 32767%s-32767 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32767_ssa(-32767); got != 2 {
-               fmt.Printf("sub_int16 -32767%s32767 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32767_int16_ssa(-1); got != -32768 {
-               fmt.Printf("sub_int16 32767%s-1 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32767_ssa(-1); got != -32768 {
-               fmt.Printf("sub_int16 -1%s32767 = %d, wanted -32768\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32767_int16_ssa(0); got != 32767 {
-               fmt.Printf("sub_int16 32767%s0 = %d, wanted 32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32767_ssa(0); got != -32767 {
-               fmt.Printf("sub_int16 0%s32767 = %d, wanted -32767\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32767_int16_ssa(1); got != 32766 {
-               fmt.Printf("sub_int16 32767%s1 = %d, wanted 32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32767_ssa(1); got != -32766 {
-               fmt.Printf("sub_int16 1%s32767 = %d, wanted -32766\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32767_int16_ssa(32766); got != 1 {
-               fmt.Printf("sub_int16 32767%s32766 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32767_ssa(32766); got != -1 {
-               fmt.Printf("sub_int16 32766%s32767 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_32767_int16_ssa(32767); got != 0 {
-               fmt.Printf("sub_int16 32767%s32767 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int16_32767_ssa(32767); got != 0 {
-               fmt.Printf("sub_int16 32767%s32767 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_Neg32768_int16_ssa(-32768); got != 1 {
-               fmt.Printf("div_int16 -32768%s-32768 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32768_ssa(-32768); got != 1 {
-               fmt.Printf("div_int16 -32768%s-32768 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32768_int16_ssa(-32767); got != 1 {
-               fmt.Printf("div_int16 -32768%s-32767 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32768_ssa(-32767); got != 0 {
-               fmt.Printf("div_int16 -32767%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32768_int16_ssa(-1); got != -32768 {
-               fmt.Printf("div_int16 -32768%s-1 = %d, wanted -32768\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32768_ssa(-1); got != 0 {
-               fmt.Printf("div_int16 -1%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32768_ssa(0); got != 0 {
-               fmt.Printf("div_int16 0%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32768_int16_ssa(1); got != -32768 {
-               fmt.Printf("div_int16 -32768%s1 = %d, wanted -32768\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32768_ssa(1); got != 0 {
-               fmt.Printf("div_int16 1%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32768_int16_ssa(32766); got != -1 {
-               fmt.Printf("div_int16 -32768%s32766 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32768_ssa(32766); got != 0 {
-               fmt.Printf("div_int16 32766%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32768_int16_ssa(32767); got != -1 {
-               fmt.Printf("div_int16 -32768%s32767 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32768_ssa(32767); got != 0 {
-               fmt.Printf("div_int16 32767%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32767_int16_ssa(-32768); got != 0 {
-               fmt.Printf("div_int16 -32767%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32767_ssa(-32768); got != 1 {
-               fmt.Printf("div_int16 -32768%s-32767 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32767_int16_ssa(-32767); got != 1 {
-               fmt.Printf("div_int16 -32767%s-32767 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32767_ssa(-32767); got != 1 {
-               fmt.Printf("div_int16 -32767%s-32767 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32767_int16_ssa(-1); got != 32767 {
-               fmt.Printf("div_int16 -32767%s-1 = %d, wanted 32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32767_ssa(-1); got != 0 {
-               fmt.Printf("div_int16 -1%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32767_ssa(0); got != 0 {
-               fmt.Printf("div_int16 0%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32767_int16_ssa(1); got != -32767 {
-               fmt.Printf("div_int16 -32767%s1 = %d, wanted -32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32767_ssa(1); got != 0 {
-               fmt.Printf("div_int16 1%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32767_int16_ssa(32766); got != -1 {
-               fmt.Printf("div_int16 -32767%s32766 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32767_ssa(32766); got != 0 {
-               fmt.Printf("div_int16 32766%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg32767_int16_ssa(32767); got != -1 {
-               fmt.Printf("div_int16 -32767%s32767 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg32767_ssa(32767); got != -1 {
-               fmt.Printf("div_int16 32767%s-32767 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int16_ssa(-32768); got != 0 {
-               fmt.Printf("div_int16 -1%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg1_ssa(-32768); got != -32768 {
-               fmt.Printf("div_int16 -32768%s-1 = %d, wanted -32768\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int16_ssa(-32767); got != 0 {
-               fmt.Printf("div_int16 -1%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg1_ssa(-32767); got != 32767 {
-               fmt.Printf("div_int16 -32767%s-1 = %d, wanted 32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int16_ssa(-1); got != 1 {
-               fmt.Printf("div_int16 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("div_int16 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg1_ssa(0); got != 0 {
-               fmt.Printf("div_int16 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int16_ssa(1); got != -1 {
-               fmt.Printf("div_int16 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg1_ssa(1); got != -1 {
-               fmt.Printf("div_int16 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int16_ssa(32766); got != 0 {
-               fmt.Printf("div_int16 -1%s32766 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg1_ssa(32766); got != -32766 {
-               fmt.Printf("div_int16 32766%s-1 = %d, wanted -32766\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int16_ssa(32767); got != 0 {
-               fmt.Printf("div_int16 -1%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_Neg1_ssa(32767); got != -32767 {
-               fmt.Printf("div_int16 32767%s-1 = %d, wanted -32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int16_ssa(-32768); got != 0 {
-               fmt.Printf("div_int16 0%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int16_ssa(-32767); got != 0 {
-               fmt.Printf("div_int16 0%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int16_ssa(-1); got != 0 {
-               fmt.Printf("div_int16 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int16_ssa(1); got != 0 {
-               fmt.Printf("div_int16 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int16_ssa(32766); got != 0 {
-               fmt.Printf("div_int16 0%s32766 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int16_ssa(32767); got != 0 {
-               fmt.Printf("div_int16 0%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int16_ssa(-32768); got != 0 {
-               fmt.Printf("div_int16 1%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_1_ssa(-32768); got != -32768 {
-               fmt.Printf("div_int16 -32768%s1 = %d, wanted -32768\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int16_ssa(-32767); got != 0 {
-               fmt.Printf("div_int16 1%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_1_ssa(-32767); got != -32767 {
-               fmt.Printf("div_int16 -32767%s1 = %d, wanted -32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int16_ssa(-1); got != -1 {
-               fmt.Printf("div_int16 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_1_ssa(-1); got != -1 {
-               fmt.Printf("div_int16 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_1_ssa(0); got != 0 {
-               fmt.Printf("div_int16 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int16_ssa(1); got != 1 {
-               fmt.Printf("div_int16 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_1_ssa(1); got != 1 {
-               fmt.Printf("div_int16 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int16_ssa(32766); got != 0 {
-               fmt.Printf("div_int16 1%s32766 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_1_ssa(32766); got != 32766 {
-               fmt.Printf("div_int16 32766%s1 = %d, wanted 32766\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int16_ssa(32767); got != 0 {
-               fmt.Printf("div_int16 1%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_1_ssa(32767); got != 32767 {
-               fmt.Printf("div_int16 32767%s1 = %d, wanted 32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32766_int16_ssa(-32768); got != 0 {
-               fmt.Printf("div_int16 32766%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32766_ssa(-32768); got != -1 {
-               fmt.Printf("div_int16 -32768%s32766 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32766_int16_ssa(-32767); got != 0 {
-               fmt.Printf("div_int16 32766%s-32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32766_ssa(-32767); got != -1 {
-               fmt.Printf("div_int16 -32767%s32766 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32766_int16_ssa(-1); got != -32766 {
-               fmt.Printf("div_int16 32766%s-1 = %d, wanted -32766\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32766_ssa(-1); got != 0 {
-               fmt.Printf("div_int16 -1%s32766 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32766_ssa(0); got != 0 {
-               fmt.Printf("div_int16 0%s32766 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32766_int16_ssa(1); got != 32766 {
-               fmt.Printf("div_int16 32766%s1 = %d, wanted 32766\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32766_ssa(1); got != 0 {
-               fmt.Printf("div_int16 1%s32766 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32766_int16_ssa(32766); got != 1 {
-               fmt.Printf("div_int16 32766%s32766 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32766_ssa(32766); got != 1 {
-               fmt.Printf("div_int16 32766%s32766 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32766_int16_ssa(32767); got != 0 {
-               fmt.Printf("div_int16 32766%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32766_ssa(32767); got != 1 {
-               fmt.Printf("div_int16 32767%s32766 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32767_int16_ssa(-32768); got != 0 {
-               fmt.Printf("div_int16 32767%s-32768 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32767_ssa(-32768); got != -1 {
-               fmt.Printf("div_int16 -32768%s32767 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32767_int16_ssa(-32767); got != -1 {
-               fmt.Printf("div_int16 32767%s-32767 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32767_ssa(-32767); got != -1 {
-               fmt.Printf("div_int16 -32767%s32767 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32767_int16_ssa(-1); got != -32767 {
-               fmt.Printf("div_int16 32767%s-1 = %d, wanted -32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32767_ssa(-1); got != 0 {
-               fmt.Printf("div_int16 -1%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32767_ssa(0); got != 0 {
-               fmt.Printf("div_int16 0%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32767_int16_ssa(1); got != 32767 {
-               fmt.Printf("div_int16 32767%s1 = %d, wanted 32767\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32767_ssa(1); got != 0 {
-               fmt.Printf("div_int16 1%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32767_int16_ssa(32766); got != 1 {
-               fmt.Printf("div_int16 32767%s32766 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32767_ssa(32766); got != 0 {
-               fmt.Printf("div_int16 32766%s32767 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_32767_int16_ssa(32767); got != 1 {
-               fmt.Printf("div_int16 32767%s32767 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int16_32767_ssa(32767); got != 1 {
-               fmt.Printf("div_int16 32767%s32767 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32768_int16_ssa(-32768); got != 0 {
-               fmt.Printf("mul_int16 -32768%s-32768 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32768_ssa(-32768); got != 0 {
-               fmt.Printf("mul_int16 -32768%s-32768 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32768_int16_ssa(-32767); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s-32767 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32768_ssa(-32767); got != -32768 {
-               fmt.Printf("mul_int16 -32767%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32768_int16_ssa(-1); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s-1 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32768_ssa(-1); got != -32768 {
-               fmt.Printf("mul_int16 -1%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32768_int16_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 -32768%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32768_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s-32768 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32768_int16_ssa(1); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s1 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32768_ssa(1); got != -32768 {
-               fmt.Printf("mul_int16 1%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32768_int16_ssa(32766); got != 0 {
-               fmt.Printf("mul_int16 -32768%s32766 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32768_ssa(32766); got != 0 {
-               fmt.Printf("mul_int16 32766%s-32768 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32768_int16_ssa(32767); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s32767 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32768_ssa(32767); got != -32768 {
-               fmt.Printf("mul_int16 32767%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32767_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 -32767%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32767_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s-32767 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32767_int16_ssa(-32767); got != 1 {
-               fmt.Printf("mul_int16 -32767%s-32767 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32767_ssa(-32767); got != 1 {
-               fmt.Printf("mul_int16 -32767%s-32767 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32767_int16_ssa(-1); got != 32767 {
-               fmt.Printf("mul_int16 -32767%s-1 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32767_ssa(-1); got != 32767 {
-               fmt.Printf("mul_int16 -1%s-32767 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32767_int16_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 -32767%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32767_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s-32767 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32767_int16_ssa(1); got != -32767 {
-               fmt.Printf("mul_int16 -32767%s1 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32767_ssa(1); got != -32767 {
-               fmt.Printf("mul_int16 1%s-32767 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32767_int16_ssa(32766); got != 32766 {
-               fmt.Printf("mul_int16 -32767%s32766 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32767_ssa(32766); got != 32766 {
-               fmt.Printf("mul_int16 32766%s-32767 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg32767_int16_ssa(32767); got != -1 {
-               fmt.Printf("mul_int16 -32767%s32767 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg32767_ssa(32767); got != -1 {
-               fmt.Printf("mul_int16 32767%s-32767 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 -1%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg1_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s-1 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int16_ssa(-32767); got != 32767 {
-               fmt.Printf("mul_int16 -1%s-32767 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg1_ssa(-32767); got != 32767 {
-               fmt.Printf("mul_int16 -32767%s-1 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int16_ssa(-1); got != 1 {
-               fmt.Printf("mul_int16 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("mul_int16 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int16_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int16_ssa(1); got != -1 {
-               fmt.Printf("mul_int16 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg1_ssa(1); got != -1 {
-               fmt.Printf("mul_int16 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int16_ssa(32766); got != -32766 {
-               fmt.Printf("mul_int16 -1%s32766 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg1_ssa(32766); got != -32766 {
-               fmt.Printf("mul_int16 32766%s-1 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int16_ssa(32767); got != -32767 {
-               fmt.Printf("mul_int16 -1%s32767 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_Neg1_ssa(32767); got != -32767 {
-               fmt.Printf("mul_int16 32767%s-1 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int16_ssa(-32768); got != 0 {
-               fmt.Printf("mul_int16 0%s-32768 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_0_ssa(-32768); got != 0 {
-               fmt.Printf("mul_int16 -32768%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int16_ssa(-32767); got != 0 {
-               fmt.Printf("mul_int16 0%s-32767 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_0_ssa(-32767); got != 0 {
-               fmt.Printf("mul_int16 -32767%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int16_ssa(-1); got != 0 {
-               fmt.Printf("mul_int16 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_0_ssa(-1); got != 0 {
-               fmt.Printf("mul_int16 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int16_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_0_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int16_ssa(1); got != 0 {
-               fmt.Printf("mul_int16 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_0_ssa(1); got != 0 {
-               fmt.Printf("mul_int16 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int16_ssa(32766); got != 0 {
-               fmt.Printf("mul_int16 0%s32766 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_0_ssa(32766); got != 0 {
-               fmt.Printf("mul_int16 32766%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int16_ssa(32767); got != 0 {
-               fmt.Printf("mul_int16 0%s32767 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_0_ssa(32767); got != 0 {
-               fmt.Printf("mul_int16 32767%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 1%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_1_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s1 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("mul_int16 1%s-32767 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_1_ssa(-32767); got != -32767 {
-               fmt.Printf("mul_int16 -32767%s1 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int16_ssa(-1); got != -1 {
-               fmt.Printf("mul_int16 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_1_ssa(-1); got != -1 {
-               fmt.Printf("mul_int16 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int16_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_1_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int16_ssa(1); got != 1 {
-               fmt.Printf("mul_int16 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_1_ssa(1); got != 1 {
-               fmt.Printf("mul_int16 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int16_ssa(32766); got != 32766 {
-               fmt.Printf("mul_int16 1%s32766 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_1_ssa(32766); got != 32766 {
-               fmt.Printf("mul_int16 32766%s1 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int16_ssa(32767); got != 32767 {
-               fmt.Printf("mul_int16 1%s32767 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_1_ssa(32767); got != 32767 {
-               fmt.Printf("mul_int16 32767%s1 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32766_int16_ssa(-32768); got != 0 {
-               fmt.Printf("mul_int16 32766%s-32768 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32766_ssa(-32768); got != 0 {
-               fmt.Printf("mul_int16 -32768%s32766 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32766_int16_ssa(-32767); got != 32766 {
-               fmt.Printf("mul_int16 32766%s-32767 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32766_ssa(-32767); got != 32766 {
-               fmt.Printf("mul_int16 -32767%s32766 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32766_int16_ssa(-1); got != -32766 {
-               fmt.Printf("mul_int16 32766%s-1 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32766_ssa(-1); got != -32766 {
-               fmt.Printf("mul_int16 -1%s32766 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32766_int16_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 32766%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32766_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s32766 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32766_int16_ssa(1); got != 32766 {
-               fmt.Printf("mul_int16 32766%s1 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32766_ssa(1); got != 32766 {
-               fmt.Printf("mul_int16 1%s32766 = %d, wanted 32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32766_int16_ssa(32766); got != 4 {
-               fmt.Printf("mul_int16 32766%s32766 = %d, wanted 4\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32766_ssa(32766); got != 4 {
-               fmt.Printf("mul_int16 32766%s32766 = %d, wanted 4\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32766_int16_ssa(32767); got != -32766 {
-               fmt.Printf("mul_int16 32766%s32767 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32766_ssa(32767); got != -32766 {
-               fmt.Printf("mul_int16 32767%s32766 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32767_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 32767%s-32768 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32767_ssa(-32768); got != -32768 {
-               fmt.Printf("mul_int16 -32768%s32767 = %d, wanted -32768\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32767_int16_ssa(-32767); got != -1 {
-               fmt.Printf("mul_int16 32767%s-32767 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32767_ssa(-32767); got != -1 {
-               fmt.Printf("mul_int16 -32767%s32767 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32767_int16_ssa(-1); got != -32767 {
-               fmt.Printf("mul_int16 32767%s-1 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32767_ssa(-1); got != -32767 {
-               fmt.Printf("mul_int16 -1%s32767 = %d, wanted -32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32767_int16_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 32767%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32767_ssa(0); got != 0 {
-               fmt.Printf("mul_int16 0%s32767 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32767_int16_ssa(1); got != 32767 {
-               fmt.Printf("mul_int16 32767%s1 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32767_ssa(1); got != 32767 {
-               fmt.Printf("mul_int16 1%s32767 = %d, wanted 32767\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32767_int16_ssa(32766); got != -32766 {
-               fmt.Printf("mul_int16 32767%s32766 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32767_ssa(32766); got != -32766 {
-               fmt.Printf("mul_int16 32766%s32767 = %d, wanted -32766\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_32767_int16_ssa(32767); got != 1 {
-               fmt.Printf("mul_int16 32767%s32767 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int16_32767_ssa(32767); got != 1 {
-               fmt.Printf("mul_int16 32767%s32767 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32768_int16_ssa(-32768); got != 0 {
-               fmt.Printf("mod_int16 -32768%s-32768 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32768_ssa(-32768); got != 0 {
-               fmt.Printf("mod_int16 -32768%s-32768 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32768_int16_ssa(-32767); got != -1 {
-               fmt.Printf("mod_int16 -32768%s-32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32768_ssa(-32767); got != -32767 {
-               fmt.Printf("mod_int16 -32767%s-32768 = %d, wanted -32767\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32768_int16_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 -32768%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32768_ssa(-1); got != -1 {
-               fmt.Printf("mod_int16 -1%s-32768 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32768_ssa(0); got != 0 {
-               fmt.Printf("mod_int16 0%s-32768 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32768_int16_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 -32768%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32768_ssa(1); got != 1 {
-               fmt.Printf("mod_int16 1%s-32768 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32768_int16_ssa(32766); got != -2 {
-               fmt.Printf("mod_int16 -32768%s32766 = %d, wanted -2\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32768_ssa(32766); got != 32766 {
-               fmt.Printf("mod_int16 32766%s-32768 = %d, wanted 32766\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32768_int16_ssa(32767); got != -1 {
-               fmt.Printf("mod_int16 -32768%s32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32768_ssa(32767); got != 32767 {
-               fmt.Printf("mod_int16 32767%s-32768 = %d, wanted 32767\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32767_int16_ssa(-32768); got != -32767 {
-               fmt.Printf("mod_int16 -32767%s-32768 = %d, wanted -32767\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32767_ssa(-32768); got != -1 {
-               fmt.Printf("mod_int16 -32768%s-32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32767_int16_ssa(-32767); got != 0 {
-               fmt.Printf("mod_int16 -32767%s-32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32767_ssa(-32767); got != 0 {
-               fmt.Printf("mod_int16 -32767%s-32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32767_int16_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 -32767%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32767_ssa(-1); got != -1 {
-               fmt.Printf("mod_int16 -1%s-32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32767_ssa(0); got != 0 {
-               fmt.Printf("mod_int16 0%s-32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32767_int16_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 -32767%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32767_ssa(1); got != 1 {
-               fmt.Printf("mod_int16 1%s-32767 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32767_int16_ssa(32766); got != -1 {
-               fmt.Printf("mod_int16 -32767%s32766 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32767_ssa(32766); got != 32766 {
-               fmt.Printf("mod_int16 32766%s-32767 = %d, wanted 32766\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg32767_int16_ssa(32767); got != 0 {
-               fmt.Printf("mod_int16 -32767%s32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg32767_ssa(32767); got != 0 {
-               fmt.Printf("mod_int16 32767%s-32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int16_ssa(-32768); got != -1 {
-               fmt.Printf("mod_int16 -1%s-32768 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg1_ssa(-32768); got != 0 {
-               fmt.Printf("mod_int16 -32768%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int16_ssa(-32767); got != -1 {
-               fmt.Printf("mod_int16 -1%s-32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg1_ssa(-32767); got != 0 {
-               fmt.Printf("mod_int16 -32767%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int16_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mod_int16 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int16_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg1_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int16_ssa(32766); got != -1 {
-               fmt.Printf("mod_int16 -1%s32766 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg1_ssa(32766); got != 0 {
-               fmt.Printf("mod_int16 32766%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int16_ssa(32767); got != -1 {
-               fmt.Printf("mod_int16 -1%s32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_Neg1_ssa(32767); got != 0 {
-               fmt.Printf("mod_int16 32767%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int16_ssa(-32768); got != 0 {
-               fmt.Printf("mod_int16 0%s-32768 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int16_ssa(-32767); got != 0 {
-               fmt.Printf("mod_int16 0%s-32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int16_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int16_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int16_ssa(32766); got != 0 {
-               fmt.Printf("mod_int16 0%s32766 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int16_ssa(32767); got != 0 {
-               fmt.Printf("mod_int16 0%s32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int16_ssa(-32768); got != 1 {
-               fmt.Printf("mod_int16 1%s-32768 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_1_ssa(-32768); got != 0 {
-               fmt.Printf("mod_int16 -32768%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int16_ssa(-32767); got != 1 {
-               fmt.Printf("mod_int16 1%s-32767 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_1_ssa(-32767); got != 0 {
-               fmt.Printf("mod_int16 -32767%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int16_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_1_ssa(0); got != 0 {
-               fmt.Printf("mod_int16 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int16_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_1_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int16_ssa(32766); got != 1 {
-               fmt.Printf("mod_int16 1%s32766 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_1_ssa(32766); got != 0 {
-               fmt.Printf("mod_int16 32766%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int16_ssa(32767); got != 1 {
-               fmt.Printf("mod_int16 1%s32767 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_1_ssa(32767); got != 0 {
-               fmt.Printf("mod_int16 32767%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32766_int16_ssa(-32768); got != 32766 {
-               fmt.Printf("mod_int16 32766%s-32768 = %d, wanted 32766\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32766_ssa(-32768); got != -2 {
-               fmt.Printf("mod_int16 -32768%s32766 = %d, wanted -2\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32766_int16_ssa(-32767); got != 32766 {
-               fmt.Printf("mod_int16 32766%s-32767 = %d, wanted 32766\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32766_ssa(-32767); got != -1 {
-               fmt.Printf("mod_int16 -32767%s32766 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32766_int16_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 32766%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32766_ssa(-1); got != -1 {
-               fmt.Printf("mod_int16 -1%s32766 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32766_ssa(0); got != 0 {
-               fmt.Printf("mod_int16 0%s32766 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32766_int16_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 32766%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32766_ssa(1); got != 1 {
-               fmt.Printf("mod_int16 1%s32766 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32766_int16_ssa(32766); got != 0 {
-               fmt.Printf("mod_int16 32766%s32766 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32766_ssa(32766); got != 0 {
-               fmt.Printf("mod_int16 32766%s32766 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32766_int16_ssa(32767); got != 32766 {
-               fmt.Printf("mod_int16 32766%s32767 = %d, wanted 32766\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32766_ssa(32767); got != 1 {
-               fmt.Printf("mod_int16 32767%s32766 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32767_int16_ssa(-32768); got != 32767 {
-               fmt.Printf("mod_int16 32767%s-32768 = %d, wanted 32767\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32767_ssa(-32768); got != -1 {
-               fmt.Printf("mod_int16 -32768%s32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32767_int16_ssa(-32767); got != 0 {
-               fmt.Printf("mod_int16 32767%s-32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32767_ssa(-32767); got != 0 {
-               fmt.Printf("mod_int16 -32767%s32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32767_int16_ssa(-1); got != 0 {
-               fmt.Printf("mod_int16 32767%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32767_ssa(-1); got != -1 {
-               fmt.Printf("mod_int16 -1%s32767 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32767_ssa(0); got != 0 {
-               fmt.Printf("mod_int16 0%s32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32767_int16_ssa(1); got != 0 {
-               fmt.Printf("mod_int16 32767%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32767_ssa(1); got != 1 {
-               fmt.Printf("mod_int16 1%s32767 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32767_int16_ssa(32766); got != 1 {
-               fmt.Printf("mod_int16 32767%s32766 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32767_ssa(32766); got != 32766 {
-               fmt.Printf("mod_int16 32766%s32767 = %d, wanted 32766\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_32767_int16_ssa(32767); got != 0 {
-               fmt.Printf("mod_int16 32767%s32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int16_32767_ssa(32767); got != 0 {
-               fmt.Printf("mod_int16 32767%s32767 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_Neg32768_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("and_int16 -32768%s-32768 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32768_ssa(-32768); got != -32768 {
-               fmt.Printf("and_int16 -32768%s-32768 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32768_int16_ssa(-32767); got != -32768 {
-               fmt.Printf("and_int16 -32768%s-32767 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32768_ssa(-32767); got != -32768 {
-               fmt.Printf("and_int16 -32767%s-32768 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32768_int16_ssa(-1); got != -32768 {
-               fmt.Printf("and_int16 -32768%s-1 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32768_ssa(-1); got != -32768 {
-               fmt.Printf("and_int16 -1%s-32768 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32768_int16_ssa(0); got != 0 {
-               fmt.Printf("and_int16 -32768%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32768_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32768_int16_ssa(1); got != 0 {
-               fmt.Printf("and_int16 -32768%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32768_ssa(1); got != 0 {
-               fmt.Printf("and_int16 1%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32768_int16_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 -32768%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32768_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 32766%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32768_int16_ssa(32767); got != 0 {
-               fmt.Printf("and_int16 -32768%s32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32768_ssa(32767); got != 0 {
-               fmt.Printf("and_int16 32767%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32767_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("and_int16 -32767%s-32768 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32767_ssa(-32768); got != -32768 {
-               fmt.Printf("and_int16 -32768%s-32767 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32767_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("and_int16 -32767%s-32767 = %d, wanted -32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32767_ssa(-32767); got != -32767 {
-               fmt.Printf("and_int16 -32767%s-32767 = %d, wanted -32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32767_int16_ssa(-1); got != -32767 {
-               fmt.Printf("and_int16 -32767%s-1 = %d, wanted -32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32767_ssa(-1); got != -32767 {
-               fmt.Printf("and_int16 -1%s-32767 = %d, wanted -32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32767_int16_ssa(0); got != 0 {
-               fmt.Printf("and_int16 -32767%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32767_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s-32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32767_int16_ssa(1); got != 1 {
-               fmt.Printf("and_int16 -32767%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32767_ssa(1); got != 1 {
-               fmt.Printf("and_int16 1%s-32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32767_int16_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 -32767%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32767_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 32766%s-32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg32767_int16_ssa(32767); got != 1 {
-               fmt.Printf("and_int16 -32767%s32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg32767_ssa(32767); got != 1 {
-               fmt.Printf("and_int16 32767%s-32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("and_int16 -1%s-32768 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg1_ssa(-32768); got != -32768 {
-               fmt.Printf("and_int16 -32768%s-1 = %d, wanted -32768\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("and_int16 -1%s-32767 = %d, wanted -32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg1_ssa(-32767); got != -32767 {
-               fmt.Printf("and_int16 -32767%s-1 = %d, wanted -32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int16_ssa(-1); got != -1 {
-               fmt.Printf("and_int16 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("and_int16 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int16_ssa(0); got != 0 {
-               fmt.Printf("and_int16 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg1_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int16_ssa(1); got != 1 {
-               fmt.Printf("and_int16 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg1_ssa(1); got != 1 {
-               fmt.Printf("and_int16 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int16_ssa(32766); got != 32766 {
-               fmt.Printf("and_int16 -1%s32766 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg1_ssa(32766); got != 32766 {
-               fmt.Printf("and_int16 32766%s-1 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int16_ssa(32767); got != 32767 {
-               fmt.Printf("and_int16 -1%s32767 = %d, wanted 32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_Neg1_ssa(32767); got != 32767 {
-               fmt.Printf("and_int16 32767%s-1 = %d, wanted 32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int16_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 0%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_0_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 -32768%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int16_ssa(-32767); got != 0 {
-               fmt.Printf("and_int16 0%s-32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_0_ssa(-32767); got != 0 {
-               fmt.Printf("and_int16 -32767%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int16_ssa(-1); got != 0 {
-               fmt.Printf("and_int16 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_0_ssa(-1); got != 0 {
-               fmt.Printf("and_int16 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int16_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_0_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int16_ssa(1); got != 0 {
-               fmt.Printf("and_int16 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_0_ssa(1); got != 0 {
-               fmt.Printf("and_int16 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int16_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 0%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_0_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 32766%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int16_ssa(32767); got != 0 {
-               fmt.Printf("and_int16 0%s32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_0_ssa(32767); got != 0 {
-               fmt.Printf("and_int16 32767%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int16_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 1%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_1_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 -32768%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int16_ssa(-32767); got != 1 {
-               fmt.Printf("and_int16 1%s-32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_1_ssa(-32767); got != 1 {
-               fmt.Printf("and_int16 -32767%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int16_ssa(-1); got != 1 {
-               fmt.Printf("and_int16 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_1_ssa(-1); got != 1 {
-               fmt.Printf("and_int16 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int16_ssa(0); got != 0 {
-               fmt.Printf("and_int16 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_1_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int16_ssa(1); got != 1 {
-               fmt.Printf("and_int16 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_1_ssa(1); got != 1 {
-               fmt.Printf("and_int16 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int16_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 1%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_1_ssa(32766); got != 0 {
-               fmt.Printf("and_int16 32766%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int16_ssa(32767); got != 1 {
-               fmt.Printf("and_int16 1%s32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_1_ssa(32767); got != 1 {
-               fmt.Printf("and_int16 32767%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32766_int16_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 32766%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32766_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 -32768%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32766_int16_ssa(-32767); got != 0 {
-               fmt.Printf("and_int16 32766%s-32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32766_ssa(-32767); got != 0 {
-               fmt.Printf("and_int16 -32767%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32766_int16_ssa(-1); got != 32766 {
-               fmt.Printf("and_int16 32766%s-1 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32766_ssa(-1); got != 32766 {
-               fmt.Printf("and_int16 -1%s32766 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32766_int16_ssa(0); got != 0 {
-               fmt.Printf("and_int16 32766%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32766_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32766_int16_ssa(1); got != 0 {
-               fmt.Printf("and_int16 32766%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32766_ssa(1); got != 0 {
-               fmt.Printf("and_int16 1%s32766 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32766_int16_ssa(32766); got != 32766 {
-               fmt.Printf("and_int16 32766%s32766 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32766_ssa(32766); got != 32766 {
-               fmt.Printf("and_int16 32766%s32766 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32766_int16_ssa(32767); got != 32766 {
-               fmt.Printf("and_int16 32766%s32767 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32766_ssa(32767); got != 32766 {
-               fmt.Printf("and_int16 32767%s32766 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32767_int16_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 32767%s-32768 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32767_ssa(-32768); got != 0 {
-               fmt.Printf("and_int16 -32768%s32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32767_int16_ssa(-32767); got != 1 {
-               fmt.Printf("and_int16 32767%s-32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32767_ssa(-32767); got != 1 {
-               fmt.Printf("and_int16 -32767%s32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32767_int16_ssa(-1); got != 32767 {
-               fmt.Printf("and_int16 32767%s-1 = %d, wanted 32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32767_ssa(-1); got != 32767 {
-               fmt.Printf("and_int16 -1%s32767 = %d, wanted 32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32767_int16_ssa(0); got != 0 {
-               fmt.Printf("and_int16 32767%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32767_ssa(0); got != 0 {
-               fmt.Printf("and_int16 0%s32767 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32767_int16_ssa(1); got != 1 {
-               fmt.Printf("and_int16 32767%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32767_ssa(1); got != 1 {
-               fmt.Printf("and_int16 1%s32767 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32767_int16_ssa(32766); got != 32766 {
-               fmt.Printf("and_int16 32767%s32766 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32767_ssa(32766); got != 32766 {
-               fmt.Printf("and_int16 32766%s32767 = %d, wanted 32766\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_32767_int16_ssa(32767); got != 32767 {
-               fmt.Printf("and_int16 32767%s32767 = %d, wanted 32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int16_32767_ssa(32767); got != 32767 {
-               fmt.Printf("and_int16 32767%s32767 = %d, wanted 32767\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_Neg32768_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("or_int16 -32768%s-32768 = %d, wanted -32768\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32768_ssa(-32768); got != -32768 {
-               fmt.Printf("or_int16 -32768%s-32768 = %d, wanted -32768\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32768_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 -32768%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32768_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 -32767%s-32768 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32768_int16_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -32768%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32768_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s-32768 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32768_int16_ssa(0); got != -32768 {
-               fmt.Printf("or_int16 -32768%s0 = %d, wanted -32768\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32768_ssa(0); got != -32768 {
-               fmt.Printf("or_int16 0%s-32768 = %d, wanted -32768\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32768_int16_ssa(1); got != -32767 {
-               fmt.Printf("or_int16 -32768%s1 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32768_ssa(1); got != -32767 {
-               fmt.Printf("or_int16 1%s-32768 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32768_int16_ssa(32766); got != -2 {
-               fmt.Printf("or_int16 -32768%s32766 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32768_ssa(32766); got != -2 {
-               fmt.Printf("or_int16 32766%s-32768 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32768_int16_ssa(32767); got != -1 {
-               fmt.Printf("or_int16 -32768%s32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32768_ssa(32767); got != -1 {
-               fmt.Printf("or_int16 32767%s-32768 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32767_int16_ssa(-32768); got != -32767 {
-               fmt.Printf("or_int16 -32767%s-32768 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32767_ssa(-32768); got != -32767 {
-               fmt.Printf("or_int16 -32768%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32767_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 -32767%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32767_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 -32767%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32767_int16_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -32767%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32767_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s-32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32767_int16_ssa(0); got != -32767 {
-               fmt.Printf("or_int16 -32767%s0 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32767_ssa(0); got != -32767 {
-               fmt.Printf("or_int16 0%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32767_int16_ssa(1); got != -32767 {
-               fmt.Printf("or_int16 -32767%s1 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32767_ssa(1); got != -32767 {
-               fmt.Printf("or_int16 1%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32767_int16_ssa(32766); got != -1 {
-               fmt.Printf("or_int16 -32767%s32766 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32767_ssa(32766); got != -1 {
-               fmt.Printf("or_int16 32766%s-32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg32767_int16_ssa(32767); got != -1 {
-               fmt.Printf("or_int16 -32767%s32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg32767_ssa(32767); got != -1 {
-               fmt.Printf("or_int16 32767%s-32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int16_ssa(-32768); got != -1 {
-               fmt.Printf("or_int16 -1%s-32768 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg1_ssa(-32768); got != -1 {
-               fmt.Printf("or_int16 -32768%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int16_ssa(-32767); got != -1 {
-               fmt.Printf("or_int16 -1%s-32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg1_ssa(-32767); got != -1 {
-               fmt.Printf("or_int16 -32767%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int16_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int16_ssa(0); got != -1 {
-               fmt.Printf("or_int16 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg1_ssa(0); got != -1 {
-               fmt.Printf("or_int16 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int16_ssa(1); got != -1 {
-               fmt.Printf("or_int16 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg1_ssa(1); got != -1 {
-               fmt.Printf("or_int16 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int16_ssa(32766); got != -1 {
-               fmt.Printf("or_int16 -1%s32766 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg1_ssa(32766); got != -1 {
-               fmt.Printf("or_int16 32766%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int16_ssa(32767); got != -1 {
-               fmt.Printf("or_int16 -1%s32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_Neg1_ssa(32767); got != -1 {
-               fmt.Printf("or_int16 32767%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("or_int16 0%s-32768 = %d, wanted -32768\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_0_ssa(-32768); got != -32768 {
-               fmt.Printf("or_int16 -32768%s0 = %d, wanted -32768\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 0%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_0_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 -32767%s0 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int16_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_0_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int16_ssa(0); got != 0 {
-               fmt.Printf("or_int16 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_0_ssa(0); got != 0 {
-               fmt.Printf("or_int16 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int16_ssa(1); got != 1 {
-               fmt.Printf("or_int16 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_0_ssa(1); got != 1 {
-               fmt.Printf("or_int16 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int16_ssa(32766); got != 32766 {
-               fmt.Printf("or_int16 0%s32766 = %d, wanted 32766\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_0_ssa(32766); got != 32766 {
-               fmt.Printf("or_int16 32766%s0 = %d, wanted 32766\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int16_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 0%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_0_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 32767%s0 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int16_ssa(-32768); got != -32767 {
-               fmt.Printf("or_int16 1%s-32768 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_1_ssa(-32768); got != -32767 {
-               fmt.Printf("or_int16 -32768%s1 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 1%s-32767 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_1_ssa(-32767); got != -32767 {
-               fmt.Printf("or_int16 -32767%s1 = %d, wanted -32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int16_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_1_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int16_ssa(0); got != 1 {
-               fmt.Printf("or_int16 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_1_ssa(0); got != 1 {
-               fmt.Printf("or_int16 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int16_ssa(1); got != 1 {
-               fmt.Printf("or_int16 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_1_ssa(1); got != 1 {
-               fmt.Printf("or_int16 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int16_ssa(32766); got != 32767 {
-               fmt.Printf("or_int16 1%s32766 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_1_ssa(32766); got != 32767 {
-               fmt.Printf("or_int16 32766%s1 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int16_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 1%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_1_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 32767%s1 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32766_int16_ssa(-32768); got != -2 {
-               fmt.Printf("or_int16 32766%s-32768 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32766_ssa(-32768); got != -2 {
-               fmt.Printf("or_int16 -32768%s32766 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32766_int16_ssa(-32767); got != -1 {
-               fmt.Printf("or_int16 32766%s-32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32766_ssa(-32767); got != -1 {
-               fmt.Printf("or_int16 -32767%s32766 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32766_int16_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 32766%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32766_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s32766 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32766_int16_ssa(0); got != 32766 {
-               fmt.Printf("or_int16 32766%s0 = %d, wanted 32766\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32766_ssa(0); got != 32766 {
-               fmt.Printf("or_int16 0%s32766 = %d, wanted 32766\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32766_int16_ssa(1); got != 32767 {
-               fmt.Printf("or_int16 32766%s1 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32766_ssa(1); got != 32767 {
-               fmt.Printf("or_int16 1%s32766 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32766_int16_ssa(32766); got != 32766 {
-               fmt.Printf("or_int16 32766%s32766 = %d, wanted 32766\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32766_ssa(32766); got != 32766 {
-               fmt.Printf("or_int16 32766%s32766 = %d, wanted 32766\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32766_int16_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 32766%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32766_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 32767%s32766 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32767_int16_ssa(-32768); got != -1 {
-               fmt.Printf("or_int16 32767%s-32768 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32767_ssa(-32768); got != -1 {
-               fmt.Printf("or_int16 -32768%s32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32767_int16_ssa(-32767); got != -1 {
-               fmt.Printf("or_int16 32767%s-32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32767_ssa(-32767); got != -1 {
-               fmt.Printf("or_int16 -32767%s32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32767_int16_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 32767%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32767_ssa(-1); got != -1 {
-               fmt.Printf("or_int16 -1%s32767 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32767_int16_ssa(0); got != 32767 {
-               fmt.Printf("or_int16 32767%s0 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32767_ssa(0); got != 32767 {
-               fmt.Printf("or_int16 0%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32767_int16_ssa(1); got != 32767 {
-               fmt.Printf("or_int16 32767%s1 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32767_ssa(1); got != 32767 {
-               fmt.Printf("or_int16 1%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32767_int16_ssa(32766); got != 32767 {
-               fmt.Printf("or_int16 32767%s32766 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32767_ssa(32766); got != 32767 {
-               fmt.Printf("or_int16 32766%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_32767_int16_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 32767%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int16_32767_ssa(32767); got != 32767 {
-               fmt.Printf("or_int16 32767%s32767 = %d, wanted 32767\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32768_int16_ssa(-32768); got != 0 {
-               fmt.Printf("xor_int16 -32768%s-32768 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32768_ssa(-32768); got != 0 {
-               fmt.Printf("xor_int16 -32768%s-32768 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32768_int16_ssa(-32767); got != 1 {
-               fmt.Printf("xor_int16 -32768%s-32767 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32768_ssa(-32767); got != 1 {
-               fmt.Printf("xor_int16 -32767%s-32768 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32768_int16_ssa(-1); got != 32767 {
-               fmt.Printf("xor_int16 -32768%s-1 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32768_ssa(-1); got != 32767 {
-               fmt.Printf("xor_int16 -1%s-32768 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32768_int16_ssa(0); got != -32768 {
-               fmt.Printf("xor_int16 -32768%s0 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32768_ssa(0); got != -32768 {
-               fmt.Printf("xor_int16 0%s-32768 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32768_int16_ssa(1); got != -32767 {
-               fmt.Printf("xor_int16 -32768%s1 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32768_ssa(1); got != -32767 {
-               fmt.Printf("xor_int16 1%s-32768 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32768_int16_ssa(32766); got != -2 {
-               fmt.Printf("xor_int16 -32768%s32766 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32768_ssa(32766); got != -2 {
-               fmt.Printf("xor_int16 32766%s-32768 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32768_int16_ssa(32767); got != -1 {
-               fmt.Printf("xor_int16 -32768%s32767 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32768_ssa(32767); got != -1 {
-               fmt.Printf("xor_int16 32767%s-32768 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32767_int16_ssa(-32768); got != 1 {
-               fmt.Printf("xor_int16 -32767%s-32768 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32767_ssa(-32768); got != 1 {
-               fmt.Printf("xor_int16 -32768%s-32767 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32767_int16_ssa(-32767); got != 0 {
-               fmt.Printf("xor_int16 -32767%s-32767 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32767_ssa(-32767); got != 0 {
-               fmt.Printf("xor_int16 -32767%s-32767 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32767_int16_ssa(-1); got != 32766 {
-               fmt.Printf("xor_int16 -32767%s-1 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32767_ssa(-1); got != 32766 {
-               fmt.Printf("xor_int16 -1%s-32767 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32767_int16_ssa(0); got != -32767 {
-               fmt.Printf("xor_int16 -32767%s0 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32767_ssa(0); got != -32767 {
-               fmt.Printf("xor_int16 0%s-32767 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32767_int16_ssa(1); got != -32768 {
-               fmt.Printf("xor_int16 -32767%s1 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32767_ssa(1); got != -32768 {
-               fmt.Printf("xor_int16 1%s-32767 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32767_int16_ssa(32766); got != -1 {
-               fmt.Printf("xor_int16 -32767%s32766 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32767_ssa(32766); got != -1 {
-               fmt.Printf("xor_int16 32766%s-32767 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg32767_int16_ssa(32767); got != -2 {
-               fmt.Printf("xor_int16 -32767%s32767 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg32767_ssa(32767); got != -2 {
-               fmt.Printf("xor_int16 32767%s-32767 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int16_ssa(-32768); got != 32767 {
-               fmt.Printf("xor_int16 -1%s-32768 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg1_ssa(-32768); got != 32767 {
-               fmt.Printf("xor_int16 -32768%s-1 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int16_ssa(-32767); got != 32766 {
-               fmt.Printf("xor_int16 -1%s-32767 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg1_ssa(-32767); got != 32766 {
-               fmt.Printf("xor_int16 -32767%s-1 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int16_ssa(-1); got != 0 {
-               fmt.Printf("xor_int16 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("xor_int16 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int16_ssa(0); got != -1 {
-               fmt.Printf("xor_int16 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg1_ssa(0); got != -1 {
-               fmt.Printf("xor_int16 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int16_ssa(1); got != -2 {
-               fmt.Printf("xor_int16 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg1_ssa(1); got != -2 {
-               fmt.Printf("xor_int16 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int16_ssa(32766); got != -32767 {
-               fmt.Printf("xor_int16 -1%s32766 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg1_ssa(32766); got != -32767 {
-               fmt.Printf("xor_int16 32766%s-1 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int16_ssa(32767); got != -32768 {
-               fmt.Printf("xor_int16 -1%s32767 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_Neg1_ssa(32767); got != -32768 {
-               fmt.Printf("xor_int16 32767%s-1 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int16_ssa(-32768); got != -32768 {
-               fmt.Printf("xor_int16 0%s-32768 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_0_ssa(-32768); got != -32768 {
-               fmt.Printf("xor_int16 -32768%s0 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int16_ssa(-32767); got != -32767 {
-               fmt.Printf("xor_int16 0%s-32767 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_0_ssa(-32767); got != -32767 {
-               fmt.Printf("xor_int16 -32767%s0 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int16_ssa(-1); got != -1 {
-               fmt.Printf("xor_int16 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_0_ssa(-1); got != -1 {
-               fmt.Printf("xor_int16 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int16_ssa(0); got != 0 {
-               fmt.Printf("xor_int16 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_0_ssa(0); got != 0 {
-               fmt.Printf("xor_int16 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int16_ssa(1); got != 1 {
-               fmt.Printf("xor_int16 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_0_ssa(1); got != 1 {
-               fmt.Printf("xor_int16 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int16_ssa(32766); got != 32766 {
-               fmt.Printf("xor_int16 0%s32766 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_0_ssa(32766); got != 32766 {
-               fmt.Printf("xor_int16 32766%s0 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int16_ssa(32767); got != 32767 {
-               fmt.Printf("xor_int16 0%s32767 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_0_ssa(32767); got != 32767 {
-               fmt.Printf("xor_int16 32767%s0 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int16_ssa(-32768); got != -32767 {
-               fmt.Printf("xor_int16 1%s-32768 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_1_ssa(-32768); got != -32767 {
-               fmt.Printf("xor_int16 -32768%s1 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int16_ssa(-32767); got != -32768 {
-               fmt.Printf("xor_int16 1%s-32767 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_1_ssa(-32767); got != -32768 {
-               fmt.Printf("xor_int16 -32767%s1 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int16_ssa(-1); got != -2 {
-               fmt.Printf("xor_int16 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_1_ssa(-1); got != -2 {
-               fmt.Printf("xor_int16 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int16_ssa(0); got != 1 {
-               fmt.Printf("xor_int16 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_1_ssa(0); got != 1 {
-               fmt.Printf("xor_int16 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int16_ssa(1); got != 0 {
-               fmt.Printf("xor_int16 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_1_ssa(1); got != 0 {
-               fmt.Printf("xor_int16 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int16_ssa(32766); got != 32767 {
-               fmt.Printf("xor_int16 1%s32766 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_1_ssa(32766); got != 32767 {
-               fmt.Printf("xor_int16 32766%s1 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int16_ssa(32767); got != 32766 {
-               fmt.Printf("xor_int16 1%s32767 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_1_ssa(32767); got != 32766 {
-               fmt.Printf("xor_int16 32767%s1 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32766_int16_ssa(-32768); got != -2 {
-               fmt.Printf("xor_int16 32766%s-32768 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32766_ssa(-32768); got != -2 {
-               fmt.Printf("xor_int16 -32768%s32766 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32766_int16_ssa(-32767); got != -1 {
-               fmt.Printf("xor_int16 32766%s-32767 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32766_ssa(-32767); got != -1 {
-               fmt.Printf("xor_int16 -32767%s32766 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32766_int16_ssa(-1); got != -32767 {
-               fmt.Printf("xor_int16 32766%s-1 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32766_ssa(-1); got != -32767 {
-               fmt.Printf("xor_int16 -1%s32766 = %d, wanted -32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32766_int16_ssa(0); got != 32766 {
-               fmt.Printf("xor_int16 32766%s0 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32766_ssa(0); got != 32766 {
-               fmt.Printf("xor_int16 0%s32766 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32766_int16_ssa(1); got != 32767 {
-               fmt.Printf("xor_int16 32766%s1 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32766_ssa(1); got != 32767 {
-               fmt.Printf("xor_int16 1%s32766 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32766_int16_ssa(32766); got != 0 {
-               fmt.Printf("xor_int16 32766%s32766 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32766_ssa(32766); got != 0 {
-               fmt.Printf("xor_int16 32766%s32766 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32766_int16_ssa(32767); got != 1 {
-               fmt.Printf("xor_int16 32766%s32767 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32766_ssa(32767); got != 1 {
-               fmt.Printf("xor_int16 32767%s32766 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32767_int16_ssa(-32768); got != -1 {
-               fmt.Printf("xor_int16 32767%s-32768 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32767_ssa(-32768); got != -1 {
-               fmt.Printf("xor_int16 -32768%s32767 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32767_int16_ssa(-32767); got != -2 {
-               fmt.Printf("xor_int16 32767%s-32767 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32767_ssa(-32767); got != -2 {
-               fmt.Printf("xor_int16 -32767%s32767 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32767_int16_ssa(-1); got != -32768 {
-               fmt.Printf("xor_int16 32767%s-1 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32767_ssa(-1); got != -32768 {
-               fmt.Printf("xor_int16 -1%s32767 = %d, wanted -32768\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32767_int16_ssa(0); got != 32767 {
-               fmt.Printf("xor_int16 32767%s0 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32767_ssa(0); got != 32767 {
-               fmt.Printf("xor_int16 0%s32767 = %d, wanted 32767\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32767_int16_ssa(1); got != 32766 {
-               fmt.Printf("xor_int16 32767%s1 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32767_ssa(1); got != 32766 {
-               fmt.Printf("xor_int16 1%s32767 = %d, wanted 32766\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32767_int16_ssa(32766); got != 1 {
-               fmt.Printf("xor_int16 32767%s32766 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32767_ssa(32766); got != 1 {
-               fmt.Printf("xor_int16 32766%s32767 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_32767_int16_ssa(32767); got != 0 {
-               fmt.Printf("xor_int16 32767%s32767 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int16_32767_ssa(32767); got != 0 {
-               fmt.Printf("xor_int16 32767%s32767 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := add_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("add_uint8 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("add_uint8 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint8_ssa(1); got != 1 {
-               fmt.Printf("add_uint8 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_0_ssa(1); got != 1 {
-               fmt.Printf("add_uint8 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_uint8_ssa(255); got != 255 {
-               fmt.Printf("add_uint8 0%s255 = %d, wanted 255\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_0_ssa(255); got != 255 {
-               fmt.Printf("add_uint8 255%s0 = %d, wanted 255\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint8_ssa(0); got != 1 {
-               fmt.Printf("add_uint8 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_1_ssa(0); got != 1 {
-               fmt.Printf("add_uint8 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint8_ssa(1); got != 2 {
-               fmt.Printf("add_uint8 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_1_ssa(1); got != 2 {
-               fmt.Printf("add_uint8 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_uint8_ssa(255); got != 0 {
-               fmt.Printf("add_uint8 1%s255 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_1_ssa(255); got != 0 {
-               fmt.Printf("add_uint8 255%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_255_uint8_ssa(0); got != 255 {
-               fmt.Printf("add_uint8 255%s0 = %d, wanted 255\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_255_ssa(0); got != 255 {
-               fmt.Printf("add_uint8 0%s255 = %d, wanted 255\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_255_uint8_ssa(1); got != 0 {
-               fmt.Printf("add_uint8 255%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_255_ssa(1); got != 0 {
-               fmt.Printf("add_uint8 1%s255 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_255_uint8_ssa(255); got != 254 {
-               fmt.Printf("add_uint8 255%s255 = %d, wanted 254\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_uint8_255_ssa(255); got != 254 {
-               fmt.Printf("add_uint8 255%s255 = %d, wanted 254\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("sub_uint8 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("sub_uint8 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint8_ssa(1); got != 255 {
-               fmt.Printf("sub_uint8 0%s1 = %d, wanted 255\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_0_ssa(1); got != 1 {
-               fmt.Printf("sub_uint8 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_uint8_ssa(255); got != 1 {
-               fmt.Printf("sub_uint8 0%s255 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_0_ssa(255); got != 255 {
-               fmt.Printf("sub_uint8 255%s0 = %d, wanted 255\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint8_ssa(0); got != 1 {
-               fmt.Printf("sub_uint8 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_1_ssa(0); got != 255 {
-               fmt.Printf("sub_uint8 0%s1 = %d, wanted 255\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint8_ssa(1); got != 0 {
-               fmt.Printf("sub_uint8 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_1_ssa(1); got != 0 {
-               fmt.Printf("sub_uint8 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_uint8_ssa(255); got != 2 {
-               fmt.Printf("sub_uint8 1%s255 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_1_ssa(255); got != 254 {
-               fmt.Printf("sub_uint8 255%s1 = %d, wanted 254\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_255_uint8_ssa(0); got != 255 {
-               fmt.Printf("sub_uint8 255%s0 = %d, wanted 255\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_255_ssa(0); got != 1 {
-               fmt.Printf("sub_uint8 0%s255 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_255_uint8_ssa(1); got != 254 {
-               fmt.Printf("sub_uint8 255%s1 = %d, wanted 254\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_255_ssa(1); got != 2 {
-               fmt.Printf("sub_uint8 1%s255 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_255_uint8_ssa(255); got != 0 {
-               fmt.Printf("sub_uint8 255%s255 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_uint8_255_ssa(255); got != 0 {
-               fmt.Printf("sub_uint8 255%s255 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_0_uint8_ssa(1); got != 0 {
-               fmt.Printf("div_uint8 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_uint8_ssa(255); got != 0 {
-               fmt.Printf("div_uint8 0%s255 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint8_1_ssa(0); got != 0 {
-               fmt.Printf("div_uint8 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint8_ssa(1); got != 1 {
-               fmt.Printf("div_uint8 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint8_1_ssa(1); got != 1 {
-               fmt.Printf("div_uint8 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_uint8_ssa(255); got != 0 {
-               fmt.Printf("div_uint8 1%s255 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint8_1_ssa(255); got != 255 {
-               fmt.Printf("div_uint8 255%s1 = %d, wanted 255\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint8_255_ssa(0); got != 0 {
-               fmt.Printf("div_uint8 0%s255 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_255_uint8_ssa(1); got != 255 {
-               fmt.Printf("div_uint8 255%s1 = %d, wanted 255\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint8_255_ssa(1); got != 0 {
-               fmt.Printf("div_uint8 1%s255 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_255_uint8_ssa(255); got != 1 {
-               fmt.Printf("div_uint8 255%s255 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_uint8_255_ssa(255); got != 1 {
-               fmt.Printf("div_uint8 255%s255 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("mul_uint8 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("mul_uint8 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint8_ssa(1); got != 0 {
-               fmt.Printf("mul_uint8 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_0_ssa(1); got != 0 {
-               fmt.Printf("mul_uint8 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_uint8_ssa(255); got != 0 {
-               fmt.Printf("mul_uint8 0%s255 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_0_ssa(255); got != 0 {
-               fmt.Printf("mul_uint8 255%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint8_ssa(0); got != 0 {
-               fmt.Printf("mul_uint8 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_1_ssa(0); got != 0 {
-               fmt.Printf("mul_uint8 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint8_ssa(1); got != 1 {
-               fmt.Printf("mul_uint8 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_1_ssa(1); got != 1 {
-               fmt.Printf("mul_uint8 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_uint8_ssa(255); got != 255 {
-               fmt.Printf("mul_uint8 1%s255 = %d, wanted 255\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_1_ssa(255); got != 255 {
-               fmt.Printf("mul_uint8 255%s1 = %d, wanted 255\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_255_uint8_ssa(0); got != 0 {
-               fmt.Printf("mul_uint8 255%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_255_ssa(0); got != 0 {
-               fmt.Printf("mul_uint8 0%s255 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_255_uint8_ssa(1); got != 255 {
-               fmt.Printf("mul_uint8 255%s1 = %d, wanted 255\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_255_ssa(1); got != 255 {
-               fmt.Printf("mul_uint8 1%s255 = %d, wanted 255\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_255_uint8_ssa(255); got != 1 {
-               fmt.Printf("mul_uint8 255%s255 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_uint8_255_ssa(255); got != 1 {
-               fmt.Printf("mul_uint8 255%s255 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint8 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint8 0%s0 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint8_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint8 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_0_ssa(1); got != 1 {
-               fmt.Printf("lsh_uint8 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_0_uint8_ssa(255); got != 0 {
-               fmt.Printf("lsh_uint8 0%s255 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_0_ssa(255); got != 255 {
-               fmt.Printf("lsh_uint8 255%s0 = %d, wanted 255\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint8_ssa(0); got != 1 {
-               fmt.Printf("lsh_uint8 1%s0 = %d, wanted 1\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_1_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint8 0%s1 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint8_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint8 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_1_ssa(1); got != 2 {
-               fmt.Printf("lsh_uint8 1%s1 = %d, wanted 2\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_1_uint8_ssa(255); got != 0 {
-               fmt.Printf("lsh_uint8 1%s255 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_1_ssa(255); got != 254 {
-               fmt.Printf("lsh_uint8 255%s1 = %d, wanted 254\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_255_uint8_ssa(0); got != 255 {
-               fmt.Printf("lsh_uint8 255%s0 = %d, wanted 255\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_255_ssa(0); got != 0 {
-               fmt.Printf("lsh_uint8 0%s255 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_255_uint8_ssa(1); got != 254 {
-               fmt.Printf("lsh_uint8 255%s1 = %d, wanted 254\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_255_ssa(1); got != 0 {
-               fmt.Printf("lsh_uint8 1%s255 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_255_uint8_ssa(255); got != 0 {
-               fmt.Printf("lsh_uint8 255%s255 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := lsh_uint8_255_ssa(255); got != 0 {
-               fmt.Printf("lsh_uint8 255%s255 = %d, wanted 0\n", `<<`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint8 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint8 0%s0 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint8_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint8 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_0_ssa(1); got != 1 {
-               fmt.Printf("rsh_uint8 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_0_uint8_ssa(255); got != 0 {
-               fmt.Printf("rsh_uint8 0%s255 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_0_ssa(255); got != 255 {
-               fmt.Printf("rsh_uint8 255%s0 = %d, wanted 255\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint8_ssa(0); got != 1 {
-               fmt.Printf("rsh_uint8 1%s0 = %d, wanted 1\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_1_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint8 0%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint8_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint8 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_1_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint8 1%s1 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_1_uint8_ssa(255); got != 0 {
-               fmt.Printf("rsh_uint8 1%s255 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_1_ssa(255); got != 127 {
-               fmt.Printf("rsh_uint8 255%s1 = %d, wanted 127\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_255_uint8_ssa(0); got != 255 {
-               fmt.Printf("rsh_uint8 255%s0 = %d, wanted 255\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_255_ssa(0); got != 0 {
-               fmt.Printf("rsh_uint8 0%s255 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_255_uint8_ssa(1); got != 127 {
-               fmt.Printf("rsh_uint8 255%s1 = %d, wanted 127\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_255_ssa(1); got != 0 {
-               fmt.Printf("rsh_uint8 1%s255 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_255_uint8_ssa(255); got != 0 {
-               fmt.Printf("rsh_uint8 255%s255 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := rsh_uint8_255_ssa(255); got != 0 {
-               fmt.Printf("rsh_uint8 255%s255 = %d, wanted 0\n", `>>`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint8_ssa(1); got != 0 {
-               fmt.Printf("mod_uint8 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_uint8_ssa(255); got != 0 {
-               fmt.Printf("mod_uint8 0%s255 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint8_1_ssa(0); got != 0 {
-               fmt.Printf("mod_uint8 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint8_ssa(1); got != 0 {
-               fmt.Printf("mod_uint8 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint8_1_ssa(1); got != 0 {
-               fmt.Printf("mod_uint8 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_uint8_ssa(255); got != 1 {
-               fmt.Printf("mod_uint8 1%s255 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint8_1_ssa(255); got != 0 {
-               fmt.Printf("mod_uint8 255%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint8_255_ssa(0); got != 0 {
-               fmt.Printf("mod_uint8 0%s255 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_255_uint8_ssa(1); got != 0 {
-               fmt.Printf("mod_uint8 255%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint8_255_ssa(1); got != 1 {
-               fmt.Printf("mod_uint8 1%s255 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_255_uint8_ssa(255); got != 0 {
-               fmt.Printf("mod_uint8 255%s255 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_uint8_255_ssa(255); got != 0 {
-               fmt.Printf("mod_uint8 255%s255 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("and_uint8 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("and_uint8 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint8_ssa(1); got != 0 {
-               fmt.Printf("and_uint8 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_0_ssa(1); got != 0 {
-               fmt.Printf("and_uint8 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_uint8_ssa(255); got != 0 {
-               fmt.Printf("and_uint8 0%s255 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_0_ssa(255); got != 0 {
-               fmt.Printf("and_uint8 255%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint8_ssa(0); got != 0 {
-               fmt.Printf("and_uint8 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_1_ssa(0); got != 0 {
-               fmt.Printf("and_uint8 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint8_ssa(1); got != 1 {
-               fmt.Printf("and_uint8 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_1_ssa(1); got != 1 {
-               fmt.Printf("and_uint8 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_uint8_ssa(255); got != 1 {
-               fmt.Printf("and_uint8 1%s255 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_1_ssa(255); got != 1 {
-               fmt.Printf("and_uint8 255%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_255_uint8_ssa(0); got != 0 {
-               fmt.Printf("and_uint8 255%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_255_ssa(0); got != 0 {
-               fmt.Printf("and_uint8 0%s255 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_255_uint8_ssa(1); got != 1 {
-               fmt.Printf("and_uint8 255%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_255_ssa(1); got != 1 {
-               fmt.Printf("and_uint8 1%s255 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_255_uint8_ssa(255); got != 255 {
-               fmt.Printf("and_uint8 255%s255 = %d, wanted 255\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_uint8_255_ssa(255); got != 255 {
-               fmt.Printf("and_uint8 255%s255 = %d, wanted 255\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("or_uint8 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("or_uint8 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint8_ssa(1); got != 1 {
-               fmt.Printf("or_uint8 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_0_ssa(1); got != 1 {
-               fmt.Printf("or_uint8 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_uint8_ssa(255); got != 255 {
-               fmt.Printf("or_uint8 0%s255 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_0_ssa(255); got != 255 {
-               fmt.Printf("or_uint8 255%s0 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint8_ssa(0); got != 1 {
-               fmt.Printf("or_uint8 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_1_ssa(0); got != 1 {
-               fmt.Printf("or_uint8 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint8_ssa(1); got != 1 {
-               fmt.Printf("or_uint8 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_1_ssa(1); got != 1 {
-               fmt.Printf("or_uint8 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_uint8_ssa(255); got != 255 {
-               fmt.Printf("or_uint8 1%s255 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_1_ssa(255); got != 255 {
-               fmt.Printf("or_uint8 255%s1 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_255_uint8_ssa(0); got != 255 {
-               fmt.Printf("or_uint8 255%s0 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_255_ssa(0); got != 255 {
-               fmt.Printf("or_uint8 0%s255 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_255_uint8_ssa(1); got != 255 {
-               fmt.Printf("or_uint8 255%s1 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_255_ssa(1); got != 255 {
-               fmt.Printf("or_uint8 1%s255 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_255_uint8_ssa(255); got != 255 {
-               fmt.Printf("or_uint8 255%s255 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_uint8_255_ssa(255); got != 255 {
-               fmt.Printf("or_uint8 255%s255 = %d, wanted 255\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint8_ssa(0); got != 0 {
-               fmt.Printf("xor_uint8 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_0_ssa(0); got != 0 {
-               fmt.Printf("xor_uint8 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint8_ssa(1); got != 1 {
-               fmt.Printf("xor_uint8 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_0_ssa(1); got != 1 {
-               fmt.Printf("xor_uint8 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_uint8_ssa(255); got != 255 {
-               fmt.Printf("xor_uint8 0%s255 = %d, wanted 255\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_0_ssa(255); got != 255 {
-               fmt.Printf("xor_uint8 255%s0 = %d, wanted 255\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint8_ssa(0); got != 1 {
-               fmt.Printf("xor_uint8 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_1_ssa(0); got != 1 {
-               fmt.Printf("xor_uint8 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint8_ssa(1); got != 0 {
-               fmt.Printf("xor_uint8 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_1_ssa(1); got != 0 {
-               fmt.Printf("xor_uint8 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_uint8_ssa(255); got != 254 {
-               fmt.Printf("xor_uint8 1%s255 = %d, wanted 254\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_1_ssa(255); got != 254 {
-               fmt.Printf("xor_uint8 255%s1 = %d, wanted 254\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_255_uint8_ssa(0); got != 255 {
-               fmt.Printf("xor_uint8 255%s0 = %d, wanted 255\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_255_ssa(0); got != 255 {
-               fmt.Printf("xor_uint8 0%s255 = %d, wanted 255\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_255_uint8_ssa(1); got != 254 {
-               fmt.Printf("xor_uint8 255%s1 = %d, wanted 254\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_255_ssa(1); got != 254 {
-               fmt.Printf("xor_uint8 1%s255 = %d, wanted 254\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_255_uint8_ssa(255); got != 0 {
-               fmt.Printf("xor_uint8 255%s255 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_uint8_255_ssa(255); got != 0 {
-               fmt.Printf("xor_uint8 255%s255 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := add_Neg128_int8_ssa(-128); got != 0 {
-               fmt.Printf("add_int8 -128%s-128 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg128_ssa(-128); got != 0 {
-               fmt.Printf("add_int8 -128%s-128 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg128_int8_ssa(-127); got != 1 {
-               fmt.Printf("add_int8 -128%s-127 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg128_ssa(-127); got != 1 {
-               fmt.Printf("add_int8 -127%s-128 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg128_int8_ssa(-1); got != 127 {
-               fmt.Printf("add_int8 -128%s-1 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg128_ssa(-1); got != 127 {
-               fmt.Printf("add_int8 -1%s-128 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg128_int8_ssa(0); got != -128 {
-               fmt.Printf("add_int8 -128%s0 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg128_ssa(0); got != -128 {
-               fmt.Printf("add_int8 0%s-128 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg128_int8_ssa(1); got != -127 {
-               fmt.Printf("add_int8 -128%s1 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg128_ssa(1); got != -127 {
-               fmt.Printf("add_int8 1%s-128 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg128_int8_ssa(126); got != -2 {
-               fmt.Printf("add_int8 -128%s126 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg128_ssa(126); got != -2 {
-               fmt.Printf("add_int8 126%s-128 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg128_int8_ssa(127); got != -1 {
-               fmt.Printf("add_int8 -128%s127 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg128_ssa(127); got != -1 {
-               fmt.Printf("add_int8 127%s-128 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg127_int8_ssa(-128); got != 1 {
-               fmt.Printf("add_int8 -127%s-128 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg127_ssa(-128); got != 1 {
-               fmt.Printf("add_int8 -128%s-127 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg127_int8_ssa(-127); got != 2 {
-               fmt.Printf("add_int8 -127%s-127 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg127_ssa(-127); got != 2 {
-               fmt.Printf("add_int8 -127%s-127 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg127_int8_ssa(-1); got != -128 {
-               fmt.Printf("add_int8 -127%s-1 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg127_ssa(-1); got != -128 {
-               fmt.Printf("add_int8 -1%s-127 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg127_int8_ssa(0); got != -127 {
-               fmt.Printf("add_int8 -127%s0 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg127_ssa(0); got != -127 {
-               fmt.Printf("add_int8 0%s-127 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg127_int8_ssa(1); got != -126 {
-               fmt.Printf("add_int8 -127%s1 = %d, wanted -126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg127_ssa(1); got != -126 {
-               fmt.Printf("add_int8 1%s-127 = %d, wanted -126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg127_int8_ssa(126); got != -1 {
-               fmt.Printf("add_int8 -127%s126 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg127_ssa(126); got != -1 {
-               fmt.Printf("add_int8 126%s-127 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg127_int8_ssa(127); got != 0 {
-               fmt.Printf("add_int8 -127%s127 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg127_ssa(127); got != 0 {
-               fmt.Printf("add_int8 127%s-127 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int8_ssa(-128); got != 127 {
-               fmt.Printf("add_int8 -1%s-128 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg1_ssa(-128); got != 127 {
-               fmt.Printf("add_int8 -128%s-1 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int8_ssa(-127); got != -128 {
-               fmt.Printf("add_int8 -1%s-127 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg1_ssa(-127); got != -128 {
-               fmt.Printf("add_int8 -127%s-1 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int8_ssa(-1); got != -2 {
-               fmt.Printf("add_int8 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg1_ssa(-1); got != -2 {
-               fmt.Printf("add_int8 -1%s-1 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int8_ssa(0); got != -1 {
-               fmt.Printf("add_int8 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg1_ssa(0); got != -1 {
-               fmt.Printf("add_int8 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int8_ssa(1); got != 0 {
-               fmt.Printf("add_int8 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg1_ssa(1); got != 0 {
-               fmt.Printf("add_int8 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int8_ssa(126); got != 125 {
-               fmt.Printf("add_int8 -1%s126 = %d, wanted 125\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg1_ssa(126); got != 125 {
-               fmt.Printf("add_int8 126%s-1 = %d, wanted 125\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_Neg1_int8_ssa(127); got != 126 {
-               fmt.Printf("add_int8 -1%s127 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_Neg1_ssa(127); got != 126 {
-               fmt.Printf("add_int8 127%s-1 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int8_ssa(-128); got != -128 {
-               fmt.Printf("add_int8 0%s-128 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_0_ssa(-128); got != -128 {
-               fmt.Printf("add_int8 -128%s0 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int8_ssa(-127); got != -127 {
-               fmt.Printf("add_int8 0%s-127 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_0_ssa(-127); got != -127 {
-               fmt.Printf("add_int8 -127%s0 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int8_ssa(-1); got != -1 {
-               fmt.Printf("add_int8 0%s-1 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_0_ssa(-1); got != -1 {
-               fmt.Printf("add_int8 -1%s0 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int8_ssa(0); got != 0 {
-               fmt.Printf("add_int8 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_0_ssa(0); got != 0 {
-               fmt.Printf("add_int8 0%s0 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int8_ssa(1); got != 1 {
-               fmt.Printf("add_int8 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_0_ssa(1); got != 1 {
-               fmt.Printf("add_int8 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int8_ssa(126); got != 126 {
-               fmt.Printf("add_int8 0%s126 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_0_ssa(126); got != 126 {
-               fmt.Printf("add_int8 126%s0 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_0_int8_ssa(127); got != 127 {
-               fmt.Printf("add_int8 0%s127 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_0_ssa(127); got != 127 {
-               fmt.Printf("add_int8 127%s0 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int8_ssa(-128); got != -127 {
-               fmt.Printf("add_int8 1%s-128 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_1_ssa(-128); got != -127 {
-               fmt.Printf("add_int8 -128%s1 = %d, wanted -127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int8_ssa(-127); got != -126 {
-               fmt.Printf("add_int8 1%s-127 = %d, wanted -126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_1_ssa(-127); got != -126 {
-               fmt.Printf("add_int8 -127%s1 = %d, wanted -126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int8_ssa(-1); got != 0 {
-               fmt.Printf("add_int8 1%s-1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_1_ssa(-1); got != 0 {
-               fmt.Printf("add_int8 -1%s1 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int8_ssa(0); got != 1 {
-               fmt.Printf("add_int8 1%s0 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_1_ssa(0); got != 1 {
-               fmt.Printf("add_int8 0%s1 = %d, wanted 1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int8_ssa(1); got != 2 {
-               fmt.Printf("add_int8 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_1_ssa(1); got != 2 {
-               fmt.Printf("add_int8 1%s1 = %d, wanted 2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int8_ssa(126); got != 127 {
-               fmt.Printf("add_int8 1%s126 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_1_ssa(126); got != 127 {
-               fmt.Printf("add_int8 126%s1 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_1_int8_ssa(127); got != -128 {
-               fmt.Printf("add_int8 1%s127 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_1_ssa(127); got != -128 {
-               fmt.Printf("add_int8 127%s1 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_126_int8_ssa(-128); got != -2 {
-               fmt.Printf("add_int8 126%s-128 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_126_ssa(-128); got != -2 {
-               fmt.Printf("add_int8 -128%s126 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_126_int8_ssa(-127); got != -1 {
-               fmt.Printf("add_int8 126%s-127 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_126_ssa(-127); got != -1 {
-               fmt.Printf("add_int8 -127%s126 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_126_int8_ssa(-1); got != 125 {
-               fmt.Printf("add_int8 126%s-1 = %d, wanted 125\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_126_ssa(-1); got != 125 {
-               fmt.Printf("add_int8 -1%s126 = %d, wanted 125\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_126_int8_ssa(0); got != 126 {
-               fmt.Printf("add_int8 126%s0 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_126_ssa(0); got != 126 {
-               fmt.Printf("add_int8 0%s126 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_126_int8_ssa(1); got != 127 {
-               fmt.Printf("add_int8 126%s1 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_126_ssa(1); got != 127 {
-               fmt.Printf("add_int8 1%s126 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_126_int8_ssa(126); got != -4 {
-               fmt.Printf("add_int8 126%s126 = %d, wanted -4\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_126_ssa(126); got != -4 {
-               fmt.Printf("add_int8 126%s126 = %d, wanted -4\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_126_int8_ssa(127); got != -3 {
-               fmt.Printf("add_int8 126%s127 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_126_ssa(127); got != -3 {
-               fmt.Printf("add_int8 127%s126 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_127_int8_ssa(-128); got != -1 {
-               fmt.Printf("add_int8 127%s-128 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_127_ssa(-128); got != -1 {
-               fmt.Printf("add_int8 -128%s127 = %d, wanted -1\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_127_int8_ssa(-127); got != 0 {
-               fmt.Printf("add_int8 127%s-127 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_127_ssa(-127); got != 0 {
-               fmt.Printf("add_int8 -127%s127 = %d, wanted 0\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_127_int8_ssa(-1); got != 126 {
-               fmt.Printf("add_int8 127%s-1 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_127_ssa(-1); got != 126 {
-               fmt.Printf("add_int8 -1%s127 = %d, wanted 126\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_127_int8_ssa(0); got != 127 {
-               fmt.Printf("add_int8 127%s0 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_127_ssa(0); got != 127 {
-               fmt.Printf("add_int8 0%s127 = %d, wanted 127\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_127_int8_ssa(1); got != -128 {
-               fmt.Printf("add_int8 127%s1 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_127_ssa(1); got != -128 {
-               fmt.Printf("add_int8 1%s127 = %d, wanted -128\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_127_int8_ssa(126); got != -3 {
-               fmt.Printf("add_int8 127%s126 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_127_ssa(126); got != -3 {
-               fmt.Printf("add_int8 126%s127 = %d, wanted -3\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_127_int8_ssa(127); got != -2 {
-               fmt.Printf("add_int8 127%s127 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := add_int8_127_ssa(127); got != -2 {
-               fmt.Printf("add_int8 127%s127 = %d, wanted -2\n", `+`, got)
-               failed = true
-       }
-
-       if got := sub_Neg128_int8_ssa(-128); got != 0 {
-               fmt.Printf("sub_int8 -128%s-128 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg128_ssa(-128); got != 0 {
-               fmt.Printf("sub_int8 -128%s-128 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg128_int8_ssa(-127); got != -1 {
-               fmt.Printf("sub_int8 -128%s-127 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg128_ssa(-127); got != 1 {
-               fmt.Printf("sub_int8 -127%s-128 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg128_int8_ssa(-1); got != -127 {
-               fmt.Printf("sub_int8 -128%s-1 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg128_ssa(-1); got != 127 {
-               fmt.Printf("sub_int8 -1%s-128 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg128_int8_ssa(0); got != -128 {
-               fmt.Printf("sub_int8 -128%s0 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg128_ssa(0); got != -128 {
-               fmt.Printf("sub_int8 0%s-128 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg128_int8_ssa(1); got != 127 {
-               fmt.Printf("sub_int8 -128%s1 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg128_ssa(1); got != -127 {
-               fmt.Printf("sub_int8 1%s-128 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg128_int8_ssa(126); got != 2 {
-               fmt.Printf("sub_int8 -128%s126 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg128_ssa(126); got != -2 {
-               fmt.Printf("sub_int8 126%s-128 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg128_int8_ssa(127); got != 1 {
-               fmt.Printf("sub_int8 -128%s127 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg128_ssa(127); got != -1 {
-               fmt.Printf("sub_int8 127%s-128 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg127_int8_ssa(-128); got != 1 {
-               fmt.Printf("sub_int8 -127%s-128 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg127_ssa(-128); got != -1 {
-               fmt.Printf("sub_int8 -128%s-127 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg127_int8_ssa(-127); got != 0 {
-               fmt.Printf("sub_int8 -127%s-127 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg127_ssa(-127); got != 0 {
-               fmt.Printf("sub_int8 -127%s-127 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg127_int8_ssa(-1); got != -126 {
-               fmt.Printf("sub_int8 -127%s-1 = %d, wanted -126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg127_ssa(-1); got != 126 {
-               fmt.Printf("sub_int8 -1%s-127 = %d, wanted 126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg127_int8_ssa(0); got != -127 {
-               fmt.Printf("sub_int8 -127%s0 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg127_ssa(0); got != 127 {
-               fmt.Printf("sub_int8 0%s-127 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg127_int8_ssa(1); got != -128 {
-               fmt.Printf("sub_int8 -127%s1 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg127_ssa(1); got != -128 {
-               fmt.Printf("sub_int8 1%s-127 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg127_int8_ssa(126); got != 3 {
-               fmt.Printf("sub_int8 -127%s126 = %d, wanted 3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg127_ssa(126); got != -3 {
-               fmt.Printf("sub_int8 126%s-127 = %d, wanted -3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg127_int8_ssa(127); got != 2 {
-               fmt.Printf("sub_int8 -127%s127 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg127_ssa(127); got != -2 {
-               fmt.Printf("sub_int8 127%s-127 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int8_ssa(-128); got != 127 {
-               fmt.Printf("sub_int8 -1%s-128 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg1_ssa(-128); got != -127 {
-               fmt.Printf("sub_int8 -128%s-1 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int8_ssa(-127); got != 126 {
-               fmt.Printf("sub_int8 -1%s-127 = %d, wanted 126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg1_ssa(-127); got != -126 {
-               fmt.Printf("sub_int8 -127%s-1 = %d, wanted -126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int8_ssa(-1); got != 0 {
-               fmt.Printf("sub_int8 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("sub_int8 -1%s-1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int8_ssa(0); got != -1 {
-               fmt.Printf("sub_int8 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg1_ssa(0); got != 1 {
-               fmt.Printf("sub_int8 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int8_ssa(1); got != -2 {
-               fmt.Printf("sub_int8 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg1_ssa(1); got != 2 {
-               fmt.Printf("sub_int8 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int8_ssa(126); got != -127 {
-               fmt.Printf("sub_int8 -1%s126 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg1_ssa(126); got != 127 {
-               fmt.Printf("sub_int8 126%s-1 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_Neg1_int8_ssa(127); got != -128 {
-               fmt.Printf("sub_int8 -1%s127 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_Neg1_ssa(127); got != -128 {
-               fmt.Printf("sub_int8 127%s-1 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int8_ssa(-128); got != -128 {
-               fmt.Printf("sub_int8 0%s-128 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_0_ssa(-128); got != -128 {
-               fmt.Printf("sub_int8 -128%s0 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int8_ssa(-127); got != 127 {
-               fmt.Printf("sub_int8 0%s-127 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_0_ssa(-127); got != -127 {
-               fmt.Printf("sub_int8 -127%s0 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int8_ssa(-1); got != 1 {
-               fmt.Printf("sub_int8 0%s-1 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_0_ssa(-1); got != -1 {
-               fmt.Printf("sub_int8 -1%s0 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int8_ssa(0); got != 0 {
-               fmt.Printf("sub_int8 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_0_ssa(0); got != 0 {
-               fmt.Printf("sub_int8 0%s0 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int8_ssa(1); got != -1 {
-               fmt.Printf("sub_int8 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_0_ssa(1); got != 1 {
-               fmt.Printf("sub_int8 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int8_ssa(126); got != -126 {
-               fmt.Printf("sub_int8 0%s126 = %d, wanted -126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_0_ssa(126); got != 126 {
-               fmt.Printf("sub_int8 126%s0 = %d, wanted 126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_0_int8_ssa(127); got != -127 {
-               fmt.Printf("sub_int8 0%s127 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_0_ssa(127); got != 127 {
-               fmt.Printf("sub_int8 127%s0 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int8_ssa(-128); got != -127 {
-               fmt.Printf("sub_int8 1%s-128 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_1_ssa(-128); got != 127 {
-               fmt.Printf("sub_int8 -128%s1 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int8_ssa(-127); got != -128 {
-               fmt.Printf("sub_int8 1%s-127 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_1_ssa(-127); got != -128 {
-               fmt.Printf("sub_int8 -127%s1 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int8_ssa(-1); got != 2 {
-               fmt.Printf("sub_int8 1%s-1 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_1_ssa(-1); got != -2 {
-               fmt.Printf("sub_int8 -1%s1 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int8_ssa(0); got != 1 {
-               fmt.Printf("sub_int8 1%s0 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_1_ssa(0); got != -1 {
-               fmt.Printf("sub_int8 0%s1 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int8_ssa(1); got != 0 {
-               fmt.Printf("sub_int8 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_1_ssa(1); got != 0 {
-               fmt.Printf("sub_int8 1%s1 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int8_ssa(126); got != -125 {
-               fmt.Printf("sub_int8 1%s126 = %d, wanted -125\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_1_ssa(126); got != 125 {
-               fmt.Printf("sub_int8 126%s1 = %d, wanted 125\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_1_int8_ssa(127); got != -126 {
-               fmt.Printf("sub_int8 1%s127 = %d, wanted -126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_1_ssa(127); got != 126 {
-               fmt.Printf("sub_int8 127%s1 = %d, wanted 126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_126_int8_ssa(-128); got != -2 {
-               fmt.Printf("sub_int8 126%s-128 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_126_ssa(-128); got != 2 {
-               fmt.Printf("sub_int8 -128%s126 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_126_int8_ssa(-127); got != -3 {
-               fmt.Printf("sub_int8 126%s-127 = %d, wanted -3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_126_ssa(-127); got != 3 {
-               fmt.Printf("sub_int8 -127%s126 = %d, wanted 3\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_126_int8_ssa(-1); got != 127 {
-               fmt.Printf("sub_int8 126%s-1 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_126_ssa(-1); got != -127 {
-               fmt.Printf("sub_int8 -1%s126 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_126_int8_ssa(0); got != 126 {
-               fmt.Printf("sub_int8 126%s0 = %d, wanted 126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_126_ssa(0); got != -126 {
-               fmt.Printf("sub_int8 0%s126 = %d, wanted -126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_126_int8_ssa(1); got != 125 {
-               fmt.Printf("sub_int8 126%s1 = %d, wanted 125\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_126_ssa(1); got != -125 {
-               fmt.Printf("sub_int8 1%s126 = %d, wanted -125\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_126_int8_ssa(126); got != 0 {
-               fmt.Printf("sub_int8 126%s126 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_126_ssa(126); got != 0 {
-               fmt.Printf("sub_int8 126%s126 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_126_int8_ssa(127); got != -1 {
-               fmt.Printf("sub_int8 126%s127 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_126_ssa(127); got != 1 {
-               fmt.Printf("sub_int8 127%s126 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_127_int8_ssa(-128); got != -1 {
-               fmt.Printf("sub_int8 127%s-128 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_127_ssa(-128); got != 1 {
-               fmt.Printf("sub_int8 -128%s127 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_127_int8_ssa(-127); got != -2 {
-               fmt.Printf("sub_int8 127%s-127 = %d, wanted -2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_127_ssa(-127); got != 2 {
-               fmt.Printf("sub_int8 -127%s127 = %d, wanted 2\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_127_int8_ssa(-1); got != -128 {
-               fmt.Printf("sub_int8 127%s-1 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_127_ssa(-1); got != -128 {
-               fmt.Printf("sub_int8 -1%s127 = %d, wanted -128\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_127_int8_ssa(0); got != 127 {
-               fmt.Printf("sub_int8 127%s0 = %d, wanted 127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_127_ssa(0); got != -127 {
-               fmt.Printf("sub_int8 0%s127 = %d, wanted -127\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_127_int8_ssa(1); got != 126 {
-               fmt.Printf("sub_int8 127%s1 = %d, wanted 126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_127_ssa(1); got != -126 {
-               fmt.Printf("sub_int8 1%s127 = %d, wanted -126\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_127_int8_ssa(126); got != 1 {
-               fmt.Printf("sub_int8 127%s126 = %d, wanted 1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_127_ssa(126); got != -1 {
-               fmt.Printf("sub_int8 126%s127 = %d, wanted -1\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_127_int8_ssa(127); got != 0 {
-               fmt.Printf("sub_int8 127%s127 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := sub_int8_127_ssa(127); got != 0 {
-               fmt.Printf("sub_int8 127%s127 = %d, wanted 0\n", `-`, got)
-               failed = true
-       }
-
-       if got := div_Neg128_int8_ssa(-128); got != 1 {
-               fmt.Printf("div_int8 -128%s-128 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg128_ssa(-128); got != 1 {
-               fmt.Printf("div_int8 -128%s-128 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg128_int8_ssa(-127); got != 1 {
-               fmt.Printf("div_int8 -128%s-127 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg128_ssa(-127); got != 0 {
-               fmt.Printf("div_int8 -127%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg128_int8_ssa(-1); got != -128 {
-               fmt.Printf("div_int8 -128%s-1 = %d, wanted -128\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg128_ssa(-1); got != 0 {
-               fmt.Printf("div_int8 -1%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg128_ssa(0); got != 0 {
-               fmt.Printf("div_int8 0%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg128_int8_ssa(1); got != -128 {
-               fmt.Printf("div_int8 -128%s1 = %d, wanted -128\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg128_ssa(1); got != 0 {
-               fmt.Printf("div_int8 1%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg128_int8_ssa(126); got != -1 {
-               fmt.Printf("div_int8 -128%s126 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg128_ssa(126); got != 0 {
-               fmt.Printf("div_int8 126%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg128_int8_ssa(127); got != -1 {
-               fmt.Printf("div_int8 -128%s127 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg128_ssa(127); got != 0 {
-               fmt.Printf("div_int8 127%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg127_int8_ssa(-128); got != 0 {
-               fmt.Printf("div_int8 -127%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg127_ssa(-128); got != 1 {
-               fmt.Printf("div_int8 -128%s-127 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg127_int8_ssa(-127); got != 1 {
-               fmt.Printf("div_int8 -127%s-127 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg127_ssa(-127); got != 1 {
-               fmt.Printf("div_int8 -127%s-127 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg127_int8_ssa(-1); got != 127 {
-               fmt.Printf("div_int8 -127%s-1 = %d, wanted 127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg127_ssa(-1); got != 0 {
-               fmt.Printf("div_int8 -1%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg127_ssa(0); got != 0 {
-               fmt.Printf("div_int8 0%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg127_int8_ssa(1); got != -127 {
-               fmt.Printf("div_int8 -127%s1 = %d, wanted -127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg127_ssa(1); got != 0 {
-               fmt.Printf("div_int8 1%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg127_int8_ssa(126); got != -1 {
-               fmt.Printf("div_int8 -127%s126 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg127_ssa(126); got != 0 {
-               fmt.Printf("div_int8 126%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg127_int8_ssa(127); got != -1 {
-               fmt.Printf("div_int8 -127%s127 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg127_ssa(127); got != -1 {
-               fmt.Printf("div_int8 127%s-127 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int8_ssa(-128); got != 0 {
-               fmt.Printf("div_int8 -1%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg1_ssa(-128); got != -128 {
-               fmt.Printf("div_int8 -128%s-1 = %d, wanted -128\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int8_ssa(-127); got != 0 {
-               fmt.Printf("div_int8 -1%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg1_ssa(-127); got != 127 {
-               fmt.Printf("div_int8 -127%s-1 = %d, wanted 127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int8_ssa(-1); got != 1 {
-               fmt.Printf("div_int8 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("div_int8 -1%s-1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg1_ssa(0); got != 0 {
-               fmt.Printf("div_int8 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int8_ssa(1); got != -1 {
-               fmt.Printf("div_int8 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg1_ssa(1); got != -1 {
-               fmt.Printf("div_int8 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int8_ssa(126); got != 0 {
-               fmt.Printf("div_int8 -1%s126 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg1_ssa(126); got != -126 {
-               fmt.Printf("div_int8 126%s-1 = %d, wanted -126\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_Neg1_int8_ssa(127); got != 0 {
-               fmt.Printf("div_int8 -1%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_Neg1_ssa(127); got != -127 {
-               fmt.Printf("div_int8 127%s-1 = %d, wanted -127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int8_ssa(-128); got != 0 {
-               fmt.Printf("div_int8 0%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int8_ssa(-127); got != 0 {
-               fmt.Printf("div_int8 0%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int8_ssa(-1); got != 0 {
-               fmt.Printf("div_int8 0%s-1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int8_ssa(1); got != 0 {
-               fmt.Printf("div_int8 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int8_ssa(126); got != 0 {
-               fmt.Printf("div_int8 0%s126 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_0_int8_ssa(127); got != 0 {
-               fmt.Printf("div_int8 0%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int8_ssa(-128); got != 0 {
-               fmt.Printf("div_int8 1%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_1_ssa(-128); got != -128 {
-               fmt.Printf("div_int8 -128%s1 = %d, wanted -128\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int8_ssa(-127); got != 0 {
-               fmt.Printf("div_int8 1%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_1_ssa(-127); got != -127 {
-               fmt.Printf("div_int8 -127%s1 = %d, wanted -127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int8_ssa(-1); got != -1 {
-               fmt.Printf("div_int8 1%s-1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_1_ssa(-1); got != -1 {
-               fmt.Printf("div_int8 -1%s1 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_1_ssa(0); got != 0 {
-               fmt.Printf("div_int8 0%s1 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int8_ssa(1); got != 1 {
-               fmt.Printf("div_int8 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_1_ssa(1); got != 1 {
-               fmt.Printf("div_int8 1%s1 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int8_ssa(126); got != 0 {
-               fmt.Printf("div_int8 1%s126 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_1_ssa(126); got != 126 {
-               fmt.Printf("div_int8 126%s1 = %d, wanted 126\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_1_int8_ssa(127); got != 0 {
-               fmt.Printf("div_int8 1%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_1_ssa(127); got != 127 {
-               fmt.Printf("div_int8 127%s1 = %d, wanted 127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_126_int8_ssa(-128); got != 0 {
-               fmt.Printf("div_int8 126%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_126_ssa(-128); got != -1 {
-               fmt.Printf("div_int8 -128%s126 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_126_int8_ssa(-127); got != 0 {
-               fmt.Printf("div_int8 126%s-127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_126_ssa(-127); got != -1 {
-               fmt.Printf("div_int8 -127%s126 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_126_int8_ssa(-1); got != -126 {
-               fmt.Printf("div_int8 126%s-1 = %d, wanted -126\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_126_ssa(-1); got != 0 {
-               fmt.Printf("div_int8 -1%s126 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_126_ssa(0); got != 0 {
-               fmt.Printf("div_int8 0%s126 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_126_int8_ssa(1); got != 126 {
-               fmt.Printf("div_int8 126%s1 = %d, wanted 126\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_126_ssa(1); got != 0 {
-               fmt.Printf("div_int8 1%s126 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_126_int8_ssa(126); got != 1 {
-               fmt.Printf("div_int8 126%s126 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_126_ssa(126); got != 1 {
-               fmt.Printf("div_int8 126%s126 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_126_int8_ssa(127); got != 0 {
-               fmt.Printf("div_int8 126%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_126_ssa(127); got != 1 {
-               fmt.Printf("div_int8 127%s126 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_127_int8_ssa(-128); got != 0 {
-               fmt.Printf("div_int8 127%s-128 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_127_ssa(-128); got != -1 {
-               fmt.Printf("div_int8 -128%s127 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_127_int8_ssa(-127); got != -1 {
-               fmt.Printf("div_int8 127%s-127 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_127_ssa(-127); got != -1 {
-               fmt.Printf("div_int8 -127%s127 = %d, wanted -1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_127_int8_ssa(-1); got != -127 {
-               fmt.Printf("div_int8 127%s-1 = %d, wanted -127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_127_ssa(-1); got != 0 {
-               fmt.Printf("div_int8 -1%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_127_ssa(0); got != 0 {
-               fmt.Printf("div_int8 0%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_127_int8_ssa(1); got != 127 {
-               fmt.Printf("div_int8 127%s1 = %d, wanted 127\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_127_ssa(1); got != 0 {
-               fmt.Printf("div_int8 1%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_127_int8_ssa(126); got != 1 {
-               fmt.Printf("div_int8 127%s126 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_127_ssa(126); got != 0 {
-               fmt.Printf("div_int8 126%s127 = %d, wanted 0\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_127_int8_ssa(127); got != 1 {
-               fmt.Printf("div_int8 127%s127 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := div_int8_127_ssa(127); got != 1 {
-               fmt.Printf("div_int8 127%s127 = %d, wanted 1\n", `/`, got)
-               failed = true
-       }
-
-       if got := mul_Neg128_int8_ssa(-128); got != 0 {
-               fmt.Printf("mul_int8 -128%s-128 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg128_ssa(-128); got != 0 {
-               fmt.Printf("mul_int8 -128%s-128 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg128_int8_ssa(-127); got != -128 {
-               fmt.Printf("mul_int8 -128%s-127 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg128_ssa(-127); got != -128 {
-               fmt.Printf("mul_int8 -127%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg128_int8_ssa(-1); got != -128 {
-               fmt.Printf("mul_int8 -128%s-1 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg128_ssa(-1); got != -128 {
-               fmt.Printf("mul_int8 -1%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg128_int8_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 -128%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg128_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s-128 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg128_int8_ssa(1); got != -128 {
-               fmt.Printf("mul_int8 -128%s1 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg128_ssa(1); got != -128 {
-               fmt.Printf("mul_int8 1%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg128_int8_ssa(126); got != 0 {
-               fmt.Printf("mul_int8 -128%s126 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg128_ssa(126); got != 0 {
-               fmt.Printf("mul_int8 126%s-128 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg128_int8_ssa(127); got != -128 {
-               fmt.Printf("mul_int8 -128%s127 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg128_ssa(127); got != -128 {
-               fmt.Printf("mul_int8 127%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg127_int8_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 -127%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg127_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 -128%s-127 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg127_int8_ssa(-127); got != 1 {
-               fmt.Printf("mul_int8 -127%s-127 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg127_ssa(-127); got != 1 {
-               fmt.Printf("mul_int8 -127%s-127 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg127_int8_ssa(-1); got != 127 {
-               fmt.Printf("mul_int8 -127%s-1 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg127_ssa(-1); got != 127 {
-               fmt.Printf("mul_int8 -1%s-127 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg127_int8_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 -127%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg127_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s-127 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg127_int8_ssa(1); got != -127 {
-               fmt.Printf("mul_int8 -127%s1 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg127_ssa(1); got != -127 {
-               fmt.Printf("mul_int8 1%s-127 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg127_int8_ssa(126); got != 126 {
-               fmt.Printf("mul_int8 -127%s126 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg127_ssa(126); got != 126 {
-               fmt.Printf("mul_int8 126%s-127 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg127_int8_ssa(127); got != -1 {
-               fmt.Printf("mul_int8 -127%s127 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg127_ssa(127); got != -1 {
-               fmt.Printf("mul_int8 127%s-127 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int8_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 -1%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg1_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 -128%s-1 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int8_ssa(-127); got != 127 {
-               fmt.Printf("mul_int8 -1%s-127 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg1_ssa(-127); got != 127 {
-               fmt.Printf("mul_int8 -127%s-1 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int8_ssa(-1); got != 1 {
-               fmt.Printf("mul_int8 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg1_ssa(-1); got != 1 {
-               fmt.Printf("mul_int8 -1%s-1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int8_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int8_ssa(1); got != -1 {
-               fmt.Printf("mul_int8 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg1_ssa(1); got != -1 {
-               fmt.Printf("mul_int8 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int8_ssa(126); got != -126 {
-               fmt.Printf("mul_int8 -1%s126 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg1_ssa(126); got != -126 {
-               fmt.Printf("mul_int8 126%s-1 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_Neg1_int8_ssa(127); got != -127 {
-               fmt.Printf("mul_int8 -1%s127 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_Neg1_ssa(127); got != -127 {
-               fmt.Printf("mul_int8 127%s-1 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int8_ssa(-128); got != 0 {
-               fmt.Printf("mul_int8 0%s-128 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_0_ssa(-128); got != 0 {
-               fmt.Printf("mul_int8 -128%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int8_ssa(-127); got != 0 {
-               fmt.Printf("mul_int8 0%s-127 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_0_ssa(-127); got != 0 {
-               fmt.Printf("mul_int8 -127%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int8_ssa(-1); got != 0 {
-               fmt.Printf("mul_int8 0%s-1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_0_ssa(-1); got != 0 {
-               fmt.Printf("mul_int8 -1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int8_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_0_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int8_ssa(1); got != 0 {
-               fmt.Printf("mul_int8 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_0_ssa(1); got != 0 {
-               fmt.Printf("mul_int8 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int8_ssa(126); got != 0 {
-               fmt.Printf("mul_int8 0%s126 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_0_ssa(126); got != 0 {
-               fmt.Printf("mul_int8 126%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_0_int8_ssa(127); got != 0 {
-               fmt.Printf("mul_int8 0%s127 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_0_ssa(127); got != 0 {
-               fmt.Printf("mul_int8 127%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int8_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 1%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_1_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 -128%s1 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int8_ssa(-127); got != -127 {
-               fmt.Printf("mul_int8 1%s-127 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_1_ssa(-127); got != -127 {
-               fmt.Printf("mul_int8 -127%s1 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int8_ssa(-1); got != -1 {
-               fmt.Printf("mul_int8 1%s-1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_1_ssa(-1); got != -1 {
-               fmt.Printf("mul_int8 -1%s1 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int8_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 1%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_1_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s1 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int8_ssa(1); got != 1 {
-               fmt.Printf("mul_int8 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_1_ssa(1); got != 1 {
-               fmt.Printf("mul_int8 1%s1 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int8_ssa(126); got != 126 {
-               fmt.Printf("mul_int8 1%s126 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_1_ssa(126); got != 126 {
-               fmt.Printf("mul_int8 126%s1 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_1_int8_ssa(127); got != 127 {
-               fmt.Printf("mul_int8 1%s127 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_1_ssa(127); got != 127 {
-               fmt.Printf("mul_int8 127%s1 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_126_int8_ssa(-128); got != 0 {
-               fmt.Printf("mul_int8 126%s-128 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_126_ssa(-128); got != 0 {
-               fmt.Printf("mul_int8 -128%s126 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_126_int8_ssa(-127); got != 126 {
-               fmt.Printf("mul_int8 126%s-127 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_126_ssa(-127); got != 126 {
-               fmt.Printf("mul_int8 -127%s126 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_126_int8_ssa(-1); got != -126 {
-               fmt.Printf("mul_int8 126%s-1 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_126_ssa(-1); got != -126 {
-               fmt.Printf("mul_int8 -1%s126 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_126_int8_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 126%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_126_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s126 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_126_int8_ssa(1); got != 126 {
-               fmt.Printf("mul_int8 126%s1 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_126_ssa(1); got != 126 {
-               fmt.Printf("mul_int8 1%s126 = %d, wanted 126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_126_int8_ssa(126); got != 4 {
-               fmt.Printf("mul_int8 126%s126 = %d, wanted 4\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_126_ssa(126); got != 4 {
-               fmt.Printf("mul_int8 126%s126 = %d, wanted 4\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_126_int8_ssa(127); got != -126 {
-               fmt.Printf("mul_int8 126%s127 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_126_ssa(127); got != -126 {
-               fmt.Printf("mul_int8 127%s126 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_127_int8_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 127%s-128 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_127_ssa(-128); got != -128 {
-               fmt.Printf("mul_int8 -128%s127 = %d, wanted -128\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_127_int8_ssa(-127); got != -1 {
-               fmt.Printf("mul_int8 127%s-127 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_127_ssa(-127); got != -1 {
-               fmt.Printf("mul_int8 -127%s127 = %d, wanted -1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_127_int8_ssa(-1); got != -127 {
-               fmt.Printf("mul_int8 127%s-1 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_127_ssa(-1); got != -127 {
-               fmt.Printf("mul_int8 -1%s127 = %d, wanted -127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_127_int8_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 127%s0 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_127_ssa(0); got != 0 {
-               fmt.Printf("mul_int8 0%s127 = %d, wanted 0\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_127_int8_ssa(1); got != 127 {
-               fmt.Printf("mul_int8 127%s1 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_127_ssa(1); got != 127 {
-               fmt.Printf("mul_int8 1%s127 = %d, wanted 127\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_127_int8_ssa(126); got != -126 {
-               fmt.Printf("mul_int8 127%s126 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_127_ssa(126); got != -126 {
-               fmt.Printf("mul_int8 126%s127 = %d, wanted -126\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_127_int8_ssa(127); got != 1 {
-               fmt.Printf("mul_int8 127%s127 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mul_int8_127_ssa(127); got != 1 {
-               fmt.Printf("mul_int8 127%s127 = %d, wanted 1\n", `*`, got)
-               failed = true
-       }
-
-       if got := mod_Neg128_int8_ssa(-128); got != 0 {
-               fmt.Printf("mod_int8 -128%s-128 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg128_ssa(-128); got != 0 {
-               fmt.Printf("mod_int8 -128%s-128 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg128_int8_ssa(-127); got != -1 {
-               fmt.Printf("mod_int8 -128%s-127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg128_ssa(-127); got != -127 {
-               fmt.Printf("mod_int8 -127%s-128 = %d, wanted -127\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg128_int8_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 -128%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg128_ssa(-1); got != -1 {
-               fmt.Printf("mod_int8 -1%s-128 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg128_ssa(0); got != 0 {
-               fmt.Printf("mod_int8 0%s-128 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg128_int8_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 -128%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg128_ssa(1); got != 1 {
-               fmt.Printf("mod_int8 1%s-128 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg128_int8_ssa(126); got != -2 {
-               fmt.Printf("mod_int8 -128%s126 = %d, wanted -2\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg128_ssa(126); got != 126 {
-               fmt.Printf("mod_int8 126%s-128 = %d, wanted 126\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg128_int8_ssa(127); got != -1 {
-               fmt.Printf("mod_int8 -128%s127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg128_ssa(127); got != 127 {
-               fmt.Printf("mod_int8 127%s-128 = %d, wanted 127\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg127_int8_ssa(-128); got != -127 {
-               fmt.Printf("mod_int8 -127%s-128 = %d, wanted -127\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg127_ssa(-128); got != -1 {
-               fmt.Printf("mod_int8 -128%s-127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg127_int8_ssa(-127); got != 0 {
-               fmt.Printf("mod_int8 -127%s-127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg127_ssa(-127); got != 0 {
-               fmt.Printf("mod_int8 -127%s-127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg127_int8_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 -127%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg127_ssa(-1); got != -1 {
-               fmt.Printf("mod_int8 -1%s-127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg127_ssa(0); got != 0 {
-               fmt.Printf("mod_int8 0%s-127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg127_int8_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 -127%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg127_ssa(1); got != 1 {
-               fmt.Printf("mod_int8 1%s-127 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg127_int8_ssa(126); got != -1 {
-               fmt.Printf("mod_int8 -127%s126 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg127_ssa(126); got != 126 {
-               fmt.Printf("mod_int8 126%s-127 = %d, wanted 126\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg127_int8_ssa(127); got != 0 {
-               fmt.Printf("mod_int8 -127%s127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg127_ssa(127); got != 0 {
-               fmt.Printf("mod_int8 127%s-127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int8_ssa(-128); got != -1 {
-               fmt.Printf("mod_int8 -1%s-128 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg1_ssa(-128); got != 0 {
-               fmt.Printf("mod_int8 -128%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int8_ssa(-127); got != -1 {
-               fmt.Printf("mod_int8 -1%s-127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg1_ssa(-127); got != 0 {
-               fmt.Printf("mod_int8 -127%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int8_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 -1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg1_ssa(0); got != 0 {
-               fmt.Printf("mod_int8 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int8_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg1_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int8_ssa(126); got != -1 {
-               fmt.Printf("mod_int8 -1%s126 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg1_ssa(126); got != 0 {
-               fmt.Printf("mod_int8 126%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_Neg1_int8_ssa(127); got != -1 {
-               fmt.Printf("mod_int8 -1%s127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_Neg1_ssa(127); got != 0 {
-               fmt.Printf("mod_int8 127%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int8_ssa(-128); got != 0 {
-               fmt.Printf("mod_int8 0%s-128 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int8_ssa(-127); got != 0 {
-               fmt.Printf("mod_int8 0%s-127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int8_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 0%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int8_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int8_ssa(126); got != 0 {
-               fmt.Printf("mod_int8 0%s126 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_0_int8_ssa(127); got != 0 {
-               fmt.Printf("mod_int8 0%s127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int8_ssa(-128); got != 1 {
-               fmt.Printf("mod_int8 1%s-128 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_1_ssa(-128); got != 0 {
-               fmt.Printf("mod_int8 -128%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int8_ssa(-127); got != 1 {
-               fmt.Printf("mod_int8 1%s-127 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_1_ssa(-127); got != 0 {
-               fmt.Printf("mod_int8 -127%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int8_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 1%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_1_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 -1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_1_ssa(0); got != 0 {
-               fmt.Printf("mod_int8 0%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int8_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_1_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 1%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int8_ssa(126); got != 1 {
-               fmt.Printf("mod_int8 1%s126 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_1_ssa(126); got != 0 {
-               fmt.Printf("mod_int8 126%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_1_int8_ssa(127); got != 1 {
-               fmt.Printf("mod_int8 1%s127 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_1_ssa(127); got != 0 {
-               fmt.Printf("mod_int8 127%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_126_int8_ssa(-128); got != 126 {
-               fmt.Printf("mod_int8 126%s-128 = %d, wanted 126\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_126_ssa(-128); got != -2 {
-               fmt.Printf("mod_int8 -128%s126 = %d, wanted -2\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_126_int8_ssa(-127); got != 126 {
-               fmt.Printf("mod_int8 126%s-127 = %d, wanted 126\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_126_ssa(-127); got != -1 {
-               fmt.Printf("mod_int8 -127%s126 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_126_int8_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 126%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_126_ssa(-1); got != -1 {
-               fmt.Printf("mod_int8 -1%s126 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_126_ssa(0); got != 0 {
-               fmt.Printf("mod_int8 0%s126 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_126_int8_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 126%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_126_ssa(1); got != 1 {
-               fmt.Printf("mod_int8 1%s126 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_126_int8_ssa(126); got != 0 {
-               fmt.Printf("mod_int8 126%s126 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_126_ssa(126); got != 0 {
-               fmt.Printf("mod_int8 126%s126 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_126_int8_ssa(127); got != 126 {
-               fmt.Printf("mod_int8 126%s127 = %d, wanted 126\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_126_ssa(127); got != 1 {
-               fmt.Printf("mod_int8 127%s126 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_127_int8_ssa(-128); got != 127 {
-               fmt.Printf("mod_int8 127%s-128 = %d, wanted 127\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_127_ssa(-128); got != -1 {
-               fmt.Printf("mod_int8 -128%s127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_127_int8_ssa(-127); got != 0 {
-               fmt.Printf("mod_int8 127%s-127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_127_ssa(-127); got != 0 {
-               fmt.Printf("mod_int8 -127%s127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_127_int8_ssa(-1); got != 0 {
-               fmt.Printf("mod_int8 127%s-1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_127_ssa(-1); got != -1 {
-               fmt.Printf("mod_int8 -1%s127 = %d, wanted -1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_127_ssa(0); got != 0 {
-               fmt.Printf("mod_int8 0%s127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_127_int8_ssa(1); got != 0 {
-               fmt.Printf("mod_int8 127%s1 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_127_ssa(1); got != 1 {
-               fmt.Printf("mod_int8 1%s127 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_127_int8_ssa(126); got != 1 {
-               fmt.Printf("mod_int8 127%s126 = %d, wanted 1\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_127_ssa(126); got != 126 {
-               fmt.Printf("mod_int8 126%s127 = %d, wanted 126\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_127_int8_ssa(127); got != 0 {
-               fmt.Printf("mod_int8 127%s127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := mod_int8_127_ssa(127); got != 0 {
-               fmt.Printf("mod_int8 127%s127 = %d, wanted 0\n", `%`, got)
-               failed = true
-       }
-
-       if got := and_Neg128_int8_ssa(-128); got != -128 {
-               fmt.Printf("and_int8 -128%s-128 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg128_ssa(-128); got != -128 {
-               fmt.Printf("and_int8 -128%s-128 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg128_int8_ssa(-127); got != -128 {
-               fmt.Printf("and_int8 -128%s-127 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg128_ssa(-127); got != -128 {
-               fmt.Printf("and_int8 -127%s-128 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg128_int8_ssa(-1); got != -128 {
-               fmt.Printf("and_int8 -128%s-1 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg128_ssa(-1); got != -128 {
-               fmt.Printf("and_int8 -1%s-128 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg128_int8_ssa(0); got != 0 {
-               fmt.Printf("and_int8 -128%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg128_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg128_int8_ssa(1); got != 0 {
-               fmt.Printf("and_int8 -128%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg128_ssa(1); got != 0 {
-               fmt.Printf("and_int8 1%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg128_int8_ssa(126); got != 0 {
-               fmt.Printf("and_int8 -128%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg128_ssa(126); got != 0 {
-               fmt.Printf("and_int8 126%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg128_int8_ssa(127); got != 0 {
-               fmt.Printf("and_int8 -128%s127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg128_ssa(127); got != 0 {
-               fmt.Printf("and_int8 127%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg127_int8_ssa(-128); got != -128 {
-               fmt.Printf("and_int8 -127%s-128 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg127_ssa(-128); got != -128 {
-               fmt.Printf("and_int8 -128%s-127 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg127_int8_ssa(-127); got != -127 {
-               fmt.Printf("and_int8 -127%s-127 = %d, wanted -127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg127_ssa(-127); got != -127 {
-               fmt.Printf("and_int8 -127%s-127 = %d, wanted -127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg127_int8_ssa(-1); got != -127 {
-               fmt.Printf("and_int8 -127%s-1 = %d, wanted -127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg127_ssa(-1); got != -127 {
-               fmt.Printf("and_int8 -1%s-127 = %d, wanted -127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg127_int8_ssa(0); got != 0 {
-               fmt.Printf("and_int8 -127%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg127_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s-127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg127_int8_ssa(1); got != 1 {
-               fmt.Printf("and_int8 -127%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg127_ssa(1); got != 1 {
-               fmt.Printf("and_int8 1%s-127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg127_int8_ssa(126); got != 0 {
-               fmt.Printf("and_int8 -127%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg127_ssa(126); got != 0 {
-               fmt.Printf("and_int8 126%s-127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg127_int8_ssa(127); got != 1 {
-               fmt.Printf("and_int8 -127%s127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg127_ssa(127); got != 1 {
-               fmt.Printf("and_int8 127%s-127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int8_ssa(-128); got != -128 {
-               fmt.Printf("and_int8 -1%s-128 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg1_ssa(-128); got != -128 {
-               fmt.Printf("and_int8 -128%s-1 = %d, wanted -128\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int8_ssa(-127); got != -127 {
-               fmt.Printf("and_int8 -1%s-127 = %d, wanted -127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg1_ssa(-127); got != -127 {
-               fmt.Printf("and_int8 -127%s-1 = %d, wanted -127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int8_ssa(-1); got != -1 {
-               fmt.Printf("and_int8 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("and_int8 -1%s-1 = %d, wanted -1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int8_ssa(0); got != 0 {
-               fmt.Printf("and_int8 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg1_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int8_ssa(1); got != 1 {
-               fmt.Printf("and_int8 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg1_ssa(1); got != 1 {
-               fmt.Printf("and_int8 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int8_ssa(126); got != 126 {
-               fmt.Printf("and_int8 -1%s126 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg1_ssa(126); got != 126 {
-               fmt.Printf("and_int8 126%s-1 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_Neg1_int8_ssa(127); got != 127 {
-               fmt.Printf("and_int8 -1%s127 = %d, wanted 127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_Neg1_ssa(127); got != 127 {
-               fmt.Printf("and_int8 127%s-1 = %d, wanted 127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int8_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 0%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_0_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 -128%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int8_ssa(-127); got != 0 {
-               fmt.Printf("and_int8 0%s-127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_0_ssa(-127); got != 0 {
-               fmt.Printf("and_int8 -127%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int8_ssa(-1); got != 0 {
-               fmt.Printf("and_int8 0%s-1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_0_ssa(-1); got != 0 {
-               fmt.Printf("and_int8 -1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int8_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_0_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int8_ssa(1); got != 0 {
-               fmt.Printf("and_int8 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_0_ssa(1); got != 0 {
-               fmt.Printf("and_int8 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int8_ssa(126); got != 0 {
-               fmt.Printf("and_int8 0%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_0_ssa(126); got != 0 {
-               fmt.Printf("and_int8 126%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_0_int8_ssa(127); got != 0 {
-               fmt.Printf("and_int8 0%s127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_0_ssa(127); got != 0 {
-               fmt.Printf("and_int8 127%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int8_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 1%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_1_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 -128%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int8_ssa(-127); got != 1 {
-               fmt.Printf("and_int8 1%s-127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_1_ssa(-127); got != 1 {
-               fmt.Printf("and_int8 -127%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int8_ssa(-1); got != 1 {
-               fmt.Printf("and_int8 1%s-1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_1_ssa(-1); got != 1 {
-               fmt.Printf("and_int8 -1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int8_ssa(0); got != 0 {
-               fmt.Printf("and_int8 1%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_1_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int8_ssa(1); got != 1 {
-               fmt.Printf("and_int8 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_1_ssa(1); got != 1 {
-               fmt.Printf("and_int8 1%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int8_ssa(126); got != 0 {
-               fmt.Printf("and_int8 1%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_1_ssa(126); got != 0 {
-               fmt.Printf("and_int8 126%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_1_int8_ssa(127); got != 1 {
-               fmt.Printf("and_int8 1%s127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_1_ssa(127); got != 1 {
-               fmt.Printf("and_int8 127%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_126_int8_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 126%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_126_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 -128%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_126_int8_ssa(-127); got != 0 {
-               fmt.Printf("and_int8 126%s-127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_126_ssa(-127); got != 0 {
-               fmt.Printf("and_int8 -127%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_126_int8_ssa(-1); got != 126 {
-               fmt.Printf("and_int8 126%s-1 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_126_ssa(-1); got != 126 {
-               fmt.Printf("and_int8 -1%s126 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_126_int8_ssa(0); got != 0 {
-               fmt.Printf("and_int8 126%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_126_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_126_int8_ssa(1); got != 0 {
-               fmt.Printf("and_int8 126%s1 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_126_ssa(1); got != 0 {
-               fmt.Printf("and_int8 1%s126 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_126_int8_ssa(126); got != 126 {
-               fmt.Printf("and_int8 126%s126 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_126_ssa(126); got != 126 {
-               fmt.Printf("and_int8 126%s126 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_126_int8_ssa(127); got != 126 {
-               fmt.Printf("and_int8 126%s127 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_126_ssa(127); got != 126 {
-               fmt.Printf("and_int8 127%s126 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_127_int8_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 127%s-128 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_127_ssa(-128); got != 0 {
-               fmt.Printf("and_int8 -128%s127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_127_int8_ssa(-127); got != 1 {
-               fmt.Printf("and_int8 127%s-127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_127_ssa(-127); got != 1 {
-               fmt.Printf("and_int8 -127%s127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_127_int8_ssa(-1); got != 127 {
-               fmt.Printf("and_int8 127%s-1 = %d, wanted 127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_127_ssa(-1); got != 127 {
-               fmt.Printf("and_int8 -1%s127 = %d, wanted 127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_127_int8_ssa(0); got != 0 {
-               fmt.Printf("and_int8 127%s0 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_127_ssa(0); got != 0 {
-               fmt.Printf("and_int8 0%s127 = %d, wanted 0\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_127_int8_ssa(1); got != 1 {
-               fmt.Printf("and_int8 127%s1 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_127_ssa(1); got != 1 {
-               fmt.Printf("and_int8 1%s127 = %d, wanted 1\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_127_int8_ssa(126); got != 126 {
-               fmt.Printf("and_int8 127%s126 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_127_ssa(126); got != 126 {
-               fmt.Printf("and_int8 126%s127 = %d, wanted 126\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_127_int8_ssa(127); got != 127 {
-               fmt.Printf("and_int8 127%s127 = %d, wanted 127\n", `&`, got)
-               failed = true
-       }
-
-       if got := and_int8_127_ssa(127); got != 127 {
-               fmt.Printf("and_int8 127%s127 = %d, wanted 127\n", `&`, got)
-               failed = true
-       }
-
-       if got := or_Neg128_int8_ssa(-128); got != -128 {
-               fmt.Printf("or_int8 -128%s-128 = %d, wanted -128\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg128_ssa(-128); got != -128 {
-               fmt.Printf("or_int8 -128%s-128 = %d, wanted -128\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg128_int8_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 -128%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg128_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 -127%s-128 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg128_int8_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -128%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg128_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s-128 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg128_int8_ssa(0); got != -128 {
-               fmt.Printf("or_int8 -128%s0 = %d, wanted -128\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg128_ssa(0); got != -128 {
-               fmt.Printf("or_int8 0%s-128 = %d, wanted -128\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg128_int8_ssa(1); got != -127 {
-               fmt.Printf("or_int8 -128%s1 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg128_ssa(1); got != -127 {
-               fmt.Printf("or_int8 1%s-128 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg128_int8_ssa(126); got != -2 {
-               fmt.Printf("or_int8 -128%s126 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg128_ssa(126); got != -2 {
-               fmt.Printf("or_int8 126%s-128 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg128_int8_ssa(127); got != -1 {
-               fmt.Printf("or_int8 -128%s127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg128_ssa(127); got != -1 {
-               fmt.Printf("or_int8 127%s-128 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg127_int8_ssa(-128); got != -127 {
-               fmt.Printf("or_int8 -127%s-128 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg127_ssa(-128); got != -127 {
-               fmt.Printf("or_int8 -128%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg127_int8_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 -127%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg127_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 -127%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg127_int8_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -127%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg127_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s-127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg127_int8_ssa(0); got != -127 {
-               fmt.Printf("or_int8 -127%s0 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg127_ssa(0); got != -127 {
-               fmt.Printf("or_int8 0%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg127_int8_ssa(1); got != -127 {
-               fmt.Printf("or_int8 -127%s1 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg127_ssa(1); got != -127 {
-               fmt.Printf("or_int8 1%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg127_int8_ssa(126); got != -1 {
-               fmt.Printf("or_int8 -127%s126 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg127_ssa(126); got != -1 {
-               fmt.Printf("or_int8 126%s-127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg127_int8_ssa(127); got != -1 {
-               fmt.Printf("or_int8 -127%s127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg127_ssa(127); got != -1 {
-               fmt.Printf("or_int8 127%s-127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int8_ssa(-128); got != -1 {
-               fmt.Printf("or_int8 -1%s-128 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg1_ssa(-128); got != -1 {
-               fmt.Printf("or_int8 -128%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int8_ssa(-127); got != -1 {
-               fmt.Printf("or_int8 -1%s-127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg1_ssa(-127); got != -1 {
-               fmt.Printf("or_int8 -127%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int8_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg1_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int8_ssa(0); got != -1 {
-               fmt.Printf("or_int8 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg1_ssa(0); got != -1 {
-               fmt.Printf("or_int8 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int8_ssa(1); got != -1 {
-               fmt.Printf("or_int8 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg1_ssa(1); got != -1 {
-               fmt.Printf("or_int8 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int8_ssa(126); got != -1 {
-               fmt.Printf("or_int8 -1%s126 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg1_ssa(126); got != -1 {
-               fmt.Printf("or_int8 126%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_Neg1_int8_ssa(127); got != -1 {
-               fmt.Printf("or_int8 -1%s127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_Neg1_ssa(127); got != -1 {
-               fmt.Printf("or_int8 127%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int8_ssa(-128); got != -128 {
-               fmt.Printf("or_int8 0%s-128 = %d, wanted -128\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_0_ssa(-128); got != -128 {
-               fmt.Printf("or_int8 -128%s0 = %d, wanted -128\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int8_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 0%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_0_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 -127%s0 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int8_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 0%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_0_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s0 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int8_ssa(0); got != 0 {
-               fmt.Printf("or_int8 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_0_ssa(0); got != 0 {
-               fmt.Printf("or_int8 0%s0 = %d, wanted 0\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int8_ssa(1); got != 1 {
-               fmt.Printf("or_int8 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_0_ssa(1); got != 1 {
-               fmt.Printf("or_int8 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int8_ssa(126); got != 126 {
-               fmt.Printf("or_int8 0%s126 = %d, wanted 126\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_0_ssa(126); got != 126 {
-               fmt.Printf("or_int8 126%s0 = %d, wanted 126\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_0_int8_ssa(127); got != 127 {
-               fmt.Printf("or_int8 0%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_0_ssa(127); got != 127 {
-               fmt.Printf("or_int8 127%s0 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int8_ssa(-128); got != -127 {
-               fmt.Printf("or_int8 1%s-128 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_1_ssa(-128); got != -127 {
-               fmt.Printf("or_int8 -128%s1 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int8_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 1%s-127 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_1_ssa(-127); got != -127 {
-               fmt.Printf("or_int8 -127%s1 = %d, wanted -127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int8_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 1%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_1_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int8_ssa(0); got != 1 {
-               fmt.Printf("or_int8 1%s0 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_1_ssa(0); got != 1 {
-               fmt.Printf("or_int8 0%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int8_ssa(1); got != 1 {
-               fmt.Printf("or_int8 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_1_ssa(1); got != 1 {
-               fmt.Printf("or_int8 1%s1 = %d, wanted 1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int8_ssa(126); got != 127 {
-               fmt.Printf("or_int8 1%s126 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_1_ssa(126); got != 127 {
-               fmt.Printf("or_int8 126%s1 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_1_int8_ssa(127); got != 127 {
-               fmt.Printf("or_int8 1%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_1_ssa(127); got != 127 {
-               fmt.Printf("or_int8 127%s1 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_126_int8_ssa(-128); got != -2 {
-               fmt.Printf("or_int8 126%s-128 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_126_ssa(-128); got != -2 {
-               fmt.Printf("or_int8 -128%s126 = %d, wanted -2\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_126_int8_ssa(-127); got != -1 {
-               fmt.Printf("or_int8 126%s-127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_126_ssa(-127); got != -1 {
-               fmt.Printf("or_int8 -127%s126 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_126_int8_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 126%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_126_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s126 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_126_int8_ssa(0); got != 126 {
-               fmt.Printf("or_int8 126%s0 = %d, wanted 126\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_126_ssa(0); got != 126 {
-               fmt.Printf("or_int8 0%s126 = %d, wanted 126\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_126_int8_ssa(1); got != 127 {
-               fmt.Printf("or_int8 126%s1 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_126_ssa(1); got != 127 {
-               fmt.Printf("or_int8 1%s126 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_126_int8_ssa(126); got != 126 {
-               fmt.Printf("or_int8 126%s126 = %d, wanted 126\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_126_ssa(126); got != 126 {
-               fmt.Printf("or_int8 126%s126 = %d, wanted 126\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_126_int8_ssa(127); got != 127 {
-               fmt.Printf("or_int8 126%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_126_ssa(127); got != 127 {
-               fmt.Printf("or_int8 127%s126 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_127_int8_ssa(-128); got != -1 {
-               fmt.Printf("or_int8 127%s-128 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_127_ssa(-128); got != -1 {
-               fmt.Printf("or_int8 -128%s127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_127_int8_ssa(-127); got != -1 {
-               fmt.Printf("or_int8 127%s-127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_127_ssa(-127); got != -1 {
-               fmt.Printf("or_int8 -127%s127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_127_int8_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 127%s-1 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_127_ssa(-1); got != -1 {
-               fmt.Printf("or_int8 -1%s127 = %d, wanted -1\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_127_int8_ssa(0); got != 127 {
-               fmt.Printf("or_int8 127%s0 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_127_ssa(0); got != 127 {
-               fmt.Printf("or_int8 0%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_127_int8_ssa(1); got != 127 {
-               fmt.Printf("or_int8 127%s1 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_127_ssa(1); got != 127 {
-               fmt.Printf("or_int8 1%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_127_int8_ssa(126); got != 127 {
-               fmt.Printf("or_int8 127%s126 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_127_ssa(126); got != 127 {
-               fmt.Printf("or_int8 126%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_127_int8_ssa(127); got != 127 {
-               fmt.Printf("or_int8 127%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := or_int8_127_ssa(127); got != 127 {
-               fmt.Printf("or_int8 127%s127 = %d, wanted 127\n", `|`, got)
-               failed = true
-       }
-
-       if got := xor_Neg128_int8_ssa(-128); got != 0 {
-               fmt.Printf("xor_int8 -128%s-128 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg128_ssa(-128); got != 0 {
-               fmt.Printf("xor_int8 -128%s-128 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg128_int8_ssa(-127); got != 1 {
-               fmt.Printf("xor_int8 -128%s-127 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg128_ssa(-127); got != 1 {
-               fmt.Printf("xor_int8 -127%s-128 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg128_int8_ssa(-1); got != 127 {
-               fmt.Printf("xor_int8 -128%s-1 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg128_ssa(-1); got != 127 {
-               fmt.Printf("xor_int8 -1%s-128 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg128_int8_ssa(0); got != -128 {
-               fmt.Printf("xor_int8 -128%s0 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg128_ssa(0); got != -128 {
-               fmt.Printf("xor_int8 0%s-128 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg128_int8_ssa(1); got != -127 {
-               fmt.Printf("xor_int8 -128%s1 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg128_ssa(1); got != -127 {
-               fmt.Printf("xor_int8 1%s-128 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg128_int8_ssa(126); got != -2 {
-               fmt.Printf("xor_int8 -128%s126 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg128_ssa(126); got != -2 {
-               fmt.Printf("xor_int8 126%s-128 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg128_int8_ssa(127); got != -1 {
-               fmt.Printf("xor_int8 -128%s127 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg128_ssa(127); got != -1 {
-               fmt.Printf("xor_int8 127%s-128 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg127_int8_ssa(-128); got != 1 {
-               fmt.Printf("xor_int8 -127%s-128 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg127_ssa(-128); got != 1 {
-               fmt.Printf("xor_int8 -128%s-127 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg127_int8_ssa(-127); got != 0 {
-               fmt.Printf("xor_int8 -127%s-127 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg127_ssa(-127); got != 0 {
-               fmt.Printf("xor_int8 -127%s-127 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg127_int8_ssa(-1); got != 126 {
-               fmt.Printf("xor_int8 -127%s-1 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg127_ssa(-1); got != 126 {
-               fmt.Printf("xor_int8 -1%s-127 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg127_int8_ssa(0); got != -127 {
-               fmt.Printf("xor_int8 -127%s0 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg127_ssa(0); got != -127 {
-               fmt.Printf("xor_int8 0%s-127 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg127_int8_ssa(1); got != -128 {
-               fmt.Printf("xor_int8 -127%s1 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg127_ssa(1); got != -128 {
-               fmt.Printf("xor_int8 1%s-127 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg127_int8_ssa(126); got != -1 {
-               fmt.Printf("xor_int8 -127%s126 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg127_ssa(126); got != -1 {
-               fmt.Printf("xor_int8 126%s-127 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg127_int8_ssa(127); got != -2 {
-               fmt.Printf("xor_int8 -127%s127 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg127_ssa(127); got != -2 {
-               fmt.Printf("xor_int8 127%s-127 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int8_ssa(-128); got != 127 {
-               fmt.Printf("xor_int8 -1%s-128 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg1_ssa(-128); got != 127 {
-               fmt.Printf("xor_int8 -128%s-1 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int8_ssa(-127); got != 126 {
-               fmt.Printf("xor_int8 -1%s-127 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg1_ssa(-127); got != 126 {
-               fmt.Printf("xor_int8 -127%s-1 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int8_ssa(-1); got != 0 {
-               fmt.Printf("xor_int8 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg1_ssa(-1); got != 0 {
-               fmt.Printf("xor_int8 -1%s-1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int8_ssa(0); got != -1 {
-               fmt.Printf("xor_int8 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg1_ssa(0); got != -1 {
-               fmt.Printf("xor_int8 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int8_ssa(1); got != -2 {
-               fmt.Printf("xor_int8 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg1_ssa(1); got != -2 {
-               fmt.Printf("xor_int8 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int8_ssa(126); got != -127 {
-               fmt.Printf("xor_int8 -1%s126 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg1_ssa(126); got != -127 {
-               fmt.Printf("xor_int8 126%s-1 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_Neg1_int8_ssa(127); got != -128 {
-               fmt.Printf("xor_int8 -1%s127 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_Neg1_ssa(127); got != -128 {
-               fmt.Printf("xor_int8 127%s-1 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int8_ssa(-128); got != -128 {
-               fmt.Printf("xor_int8 0%s-128 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_0_ssa(-128); got != -128 {
-               fmt.Printf("xor_int8 -128%s0 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int8_ssa(-127); got != -127 {
-               fmt.Printf("xor_int8 0%s-127 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_0_ssa(-127); got != -127 {
-               fmt.Printf("xor_int8 -127%s0 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int8_ssa(-1); got != -1 {
-               fmt.Printf("xor_int8 0%s-1 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_0_ssa(-1); got != -1 {
-               fmt.Printf("xor_int8 -1%s0 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int8_ssa(0); got != 0 {
-               fmt.Printf("xor_int8 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_0_ssa(0); got != 0 {
-               fmt.Printf("xor_int8 0%s0 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int8_ssa(1); got != 1 {
-               fmt.Printf("xor_int8 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_0_ssa(1); got != 1 {
-               fmt.Printf("xor_int8 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int8_ssa(126); got != 126 {
-               fmt.Printf("xor_int8 0%s126 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_0_ssa(126); got != 126 {
-               fmt.Printf("xor_int8 126%s0 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_0_int8_ssa(127); got != 127 {
-               fmt.Printf("xor_int8 0%s127 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_0_ssa(127); got != 127 {
-               fmt.Printf("xor_int8 127%s0 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int8_ssa(-128); got != -127 {
-               fmt.Printf("xor_int8 1%s-128 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_1_ssa(-128); got != -127 {
-               fmt.Printf("xor_int8 -128%s1 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int8_ssa(-127); got != -128 {
-               fmt.Printf("xor_int8 1%s-127 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_1_ssa(-127); got != -128 {
-               fmt.Printf("xor_int8 -127%s1 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int8_ssa(-1); got != -2 {
-               fmt.Printf("xor_int8 1%s-1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_1_ssa(-1); got != -2 {
-               fmt.Printf("xor_int8 -1%s1 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int8_ssa(0); got != 1 {
-               fmt.Printf("xor_int8 1%s0 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_1_ssa(0); got != 1 {
-               fmt.Printf("xor_int8 0%s1 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int8_ssa(1); got != 0 {
-               fmt.Printf("xor_int8 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_1_ssa(1); got != 0 {
-               fmt.Printf("xor_int8 1%s1 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int8_ssa(126); got != 127 {
-               fmt.Printf("xor_int8 1%s126 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_1_ssa(126); got != 127 {
-               fmt.Printf("xor_int8 126%s1 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_1_int8_ssa(127); got != 126 {
-               fmt.Printf("xor_int8 1%s127 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_1_ssa(127); got != 126 {
-               fmt.Printf("xor_int8 127%s1 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_126_int8_ssa(-128); got != -2 {
-               fmt.Printf("xor_int8 126%s-128 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_126_ssa(-128); got != -2 {
-               fmt.Printf("xor_int8 -128%s126 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_126_int8_ssa(-127); got != -1 {
-               fmt.Printf("xor_int8 126%s-127 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_126_ssa(-127); got != -1 {
-               fmt.Printf("xor_int8 -127%s126 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_126_int8_ssa(-1); got != -127 {
-               fmt.Printf("xor_int8 126%s-1 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_126_ssa(-1); got != -127 {
-               fmt.Printf("xor_int8 -1%s126 = %d, wanted -127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_126_int8_ssa(0); got != 126 {
-               fmt.Printf("xor_int8 126%s0 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_126_ssa(0); got != 126 {
-               fmt.Printf("xor_int8 0%s126 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_126_int8_ssa(1); got != 127 {
-               fmt.Printf("xor_int8 126%s1 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_126_ssa(1); got != 127 {
-               fmt.Printf("xor_int8 1%s126 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_126_int8_ssa(126); got != 0 {
-               fmt.Printf("xor_int8 126%s126 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_126_ssa(126); got != 0 {
-               fmt.Printf("xor_int8 126%s126 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_126_int8_ssa(127); got != 1 {
-               fmt.Printf("xor_int8 126%s127 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_126_ssa(127); got != 1 {
-               fmt.Printf("xor_int8 127%s126 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_127_int8_ssa(-128); got != -1 {
-               fmt.Printf("xor_int8 127%s-128 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_127_ssa(-128); got != -1 {
-               fmt.Printf("xor_int8 -128%s127 = %d, wanted -1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_127_int8_ssa(-127); got != -2 {
-               fmt.Printf("xor_int8 127%s-127 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_127_ssa(-127); got != -2 {
-               fmt.Printf("xor_int8 -127%s127 = %d, wanted -2\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_127_int8_ssa(-1); got != -128 {
-               fmt.Printf("xor_int8 127%s-1 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_127_ssa(-1); got != -128 {
-               fmt.Printf("xor_int8 -1%s127 = %d, wanted -128\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_127_int8_ssa(0); got != 127 {
-               fmt.Printf("xor_int8 127%s0 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_127_ssa(0); got != 127 {
-               fmt.Printf("xor_int8 0%s127 = %d, wanted 127\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_127_int8_ssa(1); got != 126 {
-               fmt.Printf("xor_int8 127%s1 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_127_ssa(1); got != 126 {
-               fmt.Printf("xor_int8 1%s127 = %d, wanted 126\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_127_int8_ssa(126); got != 1 {
-               fmt.Printf("xor_int8 127%s126 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_127_ssa(126); got != 1 {
-               fmt.Printf("xor_int8 126%s127 = %d, wanted 1\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_127_int8_ssa(127); got != 0 {
-               fmt.Printf("xor_int8 127%s127 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
-
-       if got := xor_int8_127_ssa(127); got != 0 {
-               fmt.Printf("xor_int8 127%s127 = %d, wanted 0\n", `^`, got)
-               failed = true
-       }
        if failed {
-               panic("tests failed")
+               os.Exit(1)
        }
 }
index 279c7bc7058bac8cc5d6c8a1ce2edd19562e3cec..9739a594c9833c822f12452c0aaed15758f948e4 100644 (file)
@@ -145,26 +145,16 @@ func main() {
        fmt.Fprintf(w, "// Code generated by gen/arithConstGen.go. DO NOT EDIT.\n\n")
        fmt.Fprintf(w, "package main;\n")
        fmt.Fprintf(w, "import \"fmt\"\n")
+       fmt.Fprintf(w, "import \"os\"\n")
 
-       fncCnst1, err := template.New("fnc").Parse(
+       fncCnst1 := template.Must(template.New("fnc").Parse(
                `//go:noinline
-               func {{.Name}}_{{.Type_}}_{{.FNumber}}_ssa(a {{.Type_}}) {{.Type_}} {
-       return a {{.Symbol}} {{.Number}}
-}
-`)
-       if err != nil {
-               panic(err)
-       }
-       fncCnst2, err := template.New("fnc").Parse(
+func {{.Name}}_{{.Type_}}_{{.FNumber}}(a {{.Type_}}) {{.Type_}} { return a {{.Symbol}} {{.Number}} }
+`))
+       fncCnst2 := template.Must(template.New("fnc").Parse(
                `//go:noinline
-               func {{.Name}}_{{.FNumber}}_{{.Type_}}_ssa(a {{.Type_}}) {{.Type_}} {
-       return {{.Number}} {{.Symbol}} a
-}
-
-`)
-       if err != nil {
-               panic(err)
-       }
+func {{.Name}}_{{.FNumber}}_{{.Type_}}(a {{.Type_}}) {{.Type_}} { return {{.Number}} {{.Symbol}} a }
+`))
 
        type fncData struct {
                Name, Type_, Symbol, FNumber, Number string
@@ -216,31 +206,30 @@ func main() {
                }
        }
 
-       fmt.Fprintf(w, "var failed bool\n\n")
-       fmt.Fprintf(w, "func main() {\n\n")
+       vrf1 := template.Must(template.New("vrf1").Parse(`
+               test_{{.Size}}{fn: {{.Name}}_{{.FNumber}}_{{.Type_}}, fnname: "{{.Name}}_{{.FNumber}}_{{.Type_}}", in: {{.Input}}, want: {{.Ans}}},`))
 
-       vrf1, _ := template.New("vrf1").Parse(`
-  if got := {{.Name}}_{{.FNumber}}_{{.Type_}}_ssa({{.Input}}); got != {{.Ans}} {
-       fmt.Printf("{{.Name}}_{{.Type_}} {{.Number}}%s{{.Input}} = %d, wanted {{.Ans}}\n", ` + "`{{.Symbol}}`" + `, got)
-       failed = true
-  }
-`)
-
-       vrf2, _ := template.New("vrf2").Parse(`
-  if got := {{.Name}}_{{.Type_}}_{{.FNumber}}_ssa({{.Input}}); got != {{.Ans}} {
-    fmt.Printf("{{.Name}}_{{.Type_}} {{.Input}}%s{{.Number}} = %d, wanted {{.Ans}}\n", ` + "`{{.Symbol}}`" + `, got)
-    failed = true
-  }
-`)
+       vrf2 := template.Must(template.New("vrf2").Parse(`
+               test_{{.Size}}{fn: {{.Name}}_{{.Type_}}_{{.FNumber}}, fnname: "{{.Name}}_{{.Type_}}_{{.FNumber}}", in: {{.Input}}, want: {{.Ans}}},`))
 
        type cfncData struct {
-               Name, Type_, Symbol, FNumber, Number string
-               Ans, Input                           string
+               Size, Name, Type_, Symbol, FNumber, Number string
+               Ans, Input                                 string
        }
        for _, s := range szs {
+               fmt.Fprintf(w, `
+type test_%[1]s struct {
+       fn func (%[1]s) %[1]s
+       fnname string
+       in %[1]s
+       want %[1]s
+}
+`, s.name)
+               fmt.Fprintf(w, "var tests_%[1]s =[]test_%[1]s {\n\n", s.name)
+
                if len(s.u) > 0 {
                        for _, o := range ops {
-                               fd := cfncData{o.name, s.name, o.symbol, "", "", "", ""}
+                               fd := cfncData{s.name, o.name, s.name, o.symbol, "", "", "", ""}
                                for _, i := range s.u {
                                        fd.Number = fmt.Sprintf("%d", i)
                                        fd.FNumber = strings.Replace(fd.Number, "-", "Neg", -1)
@@ -251,8 +240,7 @@ func main() {
                                                if o.name != "mod" && o.name != "div" || j != 0 {
                                                        fd.Ans = ansU(i, j, s.name, o.symbol)
                                                        fd.Input = fmt.Sprintf("%d", j)
-                                                       err = vrf1.Execute(w, fd)
-                                                       if err != nil {
+                                                       if err := vrf1.Execute(w, fd); err != nil {
                                                                panic(err)
                                                        }
                                                }
@@ -260,8 +248,7 @@ func main() {
                                                if o.name != "mod" && o.name != "div" || i != 0 {
                                                        fd.Ans = ansU(j, i, s.name, o.symbol)
                                                        fd.Input = fmt.Sprintf("%d", j)
-                                                       err = vrf2.Execute(w, fd)
-                                                       if err != nil {
+                                                       if err := vrf2.Execute(w, fd); err != nil {
                                                                panic(err)
                                                        }
                                                }
@@ -279,7 +266,7 @@ func main() {
                                if o.name == "lsh" || o.name == "rsh" {
                                        continue
                                }
-                               fd := cfncData{o.name, s.name, o.symbol, "", "", "", ""}
+                               fd := cfncData{s.name, o.name, s.name, o.symbol, "", "", "", ""}
                                for _, i := range s.i {
                                        fd.Number = fmt.Sprintf("%d", i)
                                        fd.FNumber = strings.Replace(fd.Number, "-", "Neg", -1)
@@ -287,8 +274,7 @@ func main() {
                                                if o.name != "mod" && o.name != "div" || j != 0 {
                                                        fd.Ans = ansS(i, j, s.name, o.symbol)
                                                        fd.Input = fmt.Sprintf("%d", j)
-                                                       err = vrf1.Execute(w, fd)
-                                                       if err != nil {
+                                                       if err := vrf1.Execute(w, fd); err != nil {
                                                                panic(err)
                                                        }
                                                }
@@ -296,8 +282,7 @@ func main() {
                                                if o.name != "mod" && o.name != "div" || i != 0 {
                                                        fd.Ans = ansS(j, i, s.name, o.symbol)
                                                        fd.Input = fmt.Sprintf("%d", j)
-                                                       err = vrf2.Execute(w, fd)
-                                                       if err != nil {
+                                                       if err := vrf2.Execute(w, fd); err != nil {
                                                                panic(err)
                                                        }
                                                }
@@ -307,13 +292,33 @@ func main() {
 
                        }
                }
+
+               fmt.Fprintf(w, "}\n\n")
+       }
+
+       fmt.Fprint(w, `
+var failed bool
+
+func main() {
+`)
+
+       for _, s := range szs {
+               fmt.Fprintf(w, `for _, test := range tests_%s {`, s.name)
+               // Use WriteString here to avoid a vet warning about formatting directives.
+               w.WriteString(`if got := test.fn(test.in); got != test.want {
+                       fmt.Printf("%s(%d) = %d, want %d\n", test.fnname, test.in, got, test.want)
+                       failed = true
+               }
+       }
+`)
        }
 
-       fmt.Fprintf(w, `if failed {
-        panic("tests failed")
+       fmt.Fprint(w, `
+       if failed {
+               os.Exit(1)
     }
+}
 `)
-       fmt.Fprintf(w, "}\n")
 
        // gofmt result
        b := w.Bytes()