Add some tests for broadcast from constant intrinsic

This commit is contained in:
Kovid Goyal
2024-02-02 06:32:16 +05:30
parent 9b0ae8d403
commit 57f4ea4d4a
2 changed files with 18 additions and 1 deletions

View File

@@ -1169,8 +1169,24 @@ func (s *State) test_set1_epi8() {
return
}
vec := f.Vec()
r := f.LoadParam("b")
q := f.Reg()
f.SetRegisterTo(q, int(' '))
f.JumpIfEqual(r, q, "space")
f.SetRegisterTo(q, 11)
f.JumpIfEqual(r, q, "eleven")
f.Set1Epi8("b", vec)
f.store_vec_in_param(vec, `ans`)
f.Return()
f.Label("space")
f.Set1Epi8(int(' '), vec)
f.store_vec_in_param(vec, `ans`)
f.Return()
f.Label("eleven")
f.Set1Epi8(-1, vec)
f.store_vec_in_param(vec, `ans`)
f.Return()
}
func (s *State) test_cmpeq_epi8() {

View File

@@ -236,9 +236,10 @@ func TestIntrinsics(t *testing.T) {
ae(sz, `load_test`, a, test_load(a))
})
tests = append(tests, func(sz int) {
for _, b := range []byte{1, 0b110111, 0xff, 0} {
for _, b := range []byte{1, 0b110111, 0xff, 0, ' '} {
ae(sz, `set1_epi8_test`, broadcast_byte(b, sz), test_set1_epi8(b, sz))
}
ae(sz, `set1_epi8_test`, broadcast_byte(0xff, sz), test_set1_epi8(11, sz))
})
tests = append(tests, func(sz int) {
a := ordered_bytes(sz)