1 
 2     @Benchmark
 3     public Object compress[[TEST_TYPE]][[OP_NAME]]() {
 4         $type$[] a = fa.apply(size);
 5         $type$[] r = fb.apply(size);
 6         boolean[] ms = fmt.apply(size);
 7         VectorMask<$Wideboxtype$> m = VectorMask.fromArray(SPECIES, ms, 0);
 8 
 9         for (int ic = 0; ic < INVOC_COUNT; ic++) {
10             for (int i = 0; i < a.length; i += SPECIES.length()) {
11                 $abstractvectortype$ av = $abstractvectortype$.fromArray(SPECIES, a, i);
12                 av.compress(m).intoArray(r, i);
13             }
14         }
15 
16         return r;
17     }
18 
19     @Benchmark
20     public Object expand[[TEST_TYPE]][[OP_NAME]]() {
21         $type$[] a = fa.apply(size);
22         $type$[] r = fb.apply(size);
23         boolean[] ms = fmt.apply(size);
24         VectorMask<$Wideboxtype$> m = VectorMask.fromArray(SPECIES, ms, 0);
25 
26         for (int ic = 0; ic < INVOC_COUNT; ic++) {
27             for (int i = 0; i < a.length; i += SPECIES.length()) {
28                 $abstractvectortype$ av = $abstractvectortype$.fromArray(SPECIES, a, i);
29                 av.expand(m).intoArray(r, i);
30             }
31         }
32 
33         return r;
34     }
35 
36     @Benchmark
37     public Object maskCompress[[TEST_TYPE]][[OP_NAME]]() {
38         boolean[] ms = fmt.apply(size);
39         boolean[] rs = fmt.apply(size);
40 
41         for (int ic = 0; ic < INVOC_COUNT; ic++) {
42             for (int i = 0, j = 0; i < ms.length; i += SPECIES.length()) {
43                 VectorMask<$Wideboxtype$> m = VectorMask.fromArray(SPECIES, ms, i);
44                 m.compress().intoArray(rs, j);
45                 j += m.trueCount();
46             }
47         }
48 
49         return rs;
50     }
51