1
2 @Benchmark
3 public void compressScalar[[TEST_TYPE]][[OP_NAME]](Blackhole bh) {
4 $type$[] as = fa.apply(size);
5 $type$[] rs = new $type$[size];
6 boolean[] im = fmt.apply(size);
7
8 for (int ic = 0; ic < INVOC_COUNT; ic++) {
9 for (int i = 0, j = 0; i < as.length; i++) {
10 if (im[i]) {
11 rs[j++] = as[i];
12 }
13 }
14 }
15
16 bh.consume(rs);
17 }
18
19 @Benchmark
20 public void expandScalar[[TEST_TYPE]][[OP_NAME]](Blackhole bh) {
21 $type$[] as = fa.apply(size);
22 $type$[] rs = new $type$[size];
23 boolean[] im = fmt.apply(size);
24
25 for (int ic = 0; ic < INVOC_COUNT; ic++) {
26 for (int i = 0, j = 0; i < as.length; i++) {
27 if (im[i]) {
28 rs[i++] = as[j++];
29 }
30 }
31 }
32
33 bh.consume(rs);
34 }
35
36 @Benchmark
37 public void maskCompressScalar[[TEST_TYPE]][[OP_NAME]](Blackhole bh) {
38 boolean[] im = fmt.apply(size);
39 boolean[] rm = new boolean[size];
40
41 for (int ic = 0; ic < INVOC_COUNT; ic++) {
42 for (int i = 0, j = 0; i < im.length; i++) {
43 if (im[i]) {
44 rm[j++] = im[i];
45 }
46 }
47 }
48
49 bh.consume(rm);
50 }