1*4bdc9457SAndroid Build Coastguard Worker#!/bin/sh 2*4bdc9457SAndroid Build Coastguard Worker# Copyright 2019 Google LLC 3*4bdc9457SAndroid Build Coastguard Worker# 4*4bdc9457SAndroid Build Coastguard Worker# This source code is licensed under the BSD-style license found in the 5*4bdc9457SAndroid Build Coastguard Worker# LICENSE file in the root directory of this source tree. 6*4bdc9457SAndroid Build Coastguard Worker 7*4bdc9457SAndroid Build Coastguard Worker#################################### Scalar ################################### 8*4bdc9457SAndroid Build Coastguard Worker### Microkernels without unrolling 9*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar.c.in -D MR=1 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/1x1-minmax-scalar.c & 10*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar.c.in -D MR=2 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/2x1-minmax-scalar.c & 11*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar.c.in -D MR=4 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/4x1-minmax-scalar.c & 12*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar.c.in -D MR=8 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/8x1-minmax-scalar.c & 13*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar.c.in -D MR=8 -D NR=2 -D UNROLL=1 -o src/f32-spmm/gen/8x2-minmax-scalar.c & 14*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar.c.in -D MR=8 -D NR=4 -D UNROLL=1 -o src/f32-spmm/gen/8x4-minmax-scalar.c & 15*4bdc9457SAndroid Build Coastguard Worker### Microkernels with software pipelining 16*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar-pipelined.c.in -D MR=1 -D NR=1 -o src/f32-spmm/gen/1x1-minmax-scalar-pipelined.c & 17*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar-pipelined.c.in -D MR=2 -D NR=1 -o src/f32-spmm/gen/2x1-minmax-scalar-pipelined.c & 18*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar-pipelined.c.in -D MR=4 -D NR=1 -o src/f32-spmm/gen/4x1-minmax-scalar-pipelined.c & 19*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/scalar-pipelined.c.in -D MR=8 -D NR=1 -o src/f32-spmm/gen/8x1-minmax-scalar-pipelined.c & 20*4bdc9457SAndroid Build Coastguard Worker 21*4bdc9457SAndroid Build Coastguard Worker################################### ARM NEON ################################## 22*4bdc9457SAndroid Build Coastguard Worker### Microkernels without unrolling 23*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=4 -D NR=1 -D UNROLL=1 -D FMA=0 -o src/f32-spmm/gen/4x1-minmax-neon.c & 24*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=8 -D NR=1 -D UNROLL=1 -D FMA=0 -o src/f32-spmm/gen/8x1-minmax-neon.c & 25*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=12 -D NR=1 -D UNROLL=1 -D FMA=0 -o src/f32-spmm/gen/12x1-minmax-neon.c & 26*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=16 -D NR=1 -D UNROLL=1 -D FMA=0 -o src/f32-spmm/gen/16x1-minmax-neon.c & 27*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=32 -D NR=1 -D UNROLL=1 -D FMA=0 -o src/f32-spmm/gen/32x1-minmax-neon.c & 28*4bdc9457SAndroid Build Coastguard Worker 29*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=4 -D NR=1 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/4x1-minmax-neonfma.c & 30*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=8 -D NR=1 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/8x1-minmax-neonfma.c & 31*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=12 -D NR=1 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/12x1-minmax-neonfma.c & 32*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=16 -D NR=1 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/16x1-minmax-neonfma.c & 33*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=32 -D NR=1 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/32x1-minmax-neonfma.c & 34*4bdc9457SAndroid Build Coastguard Worker 35*4bdc9457SAndroid Build Coastguard Worker### Microkernels with 2X unrolling 36*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=4 -D NR=1 -D UNROLL=2 -D FMA=0 -o src/f32-spmm/gen/4x1-minmax-neon-x2.c & 37*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=8 -D NR=1 -D UNROLL=2 -D FMA=0 -o src/f32-spmm/gen/8x1-minmax-neon-x2.c & 38*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=16 -D NR=1 -D UNROLL=2 -D FMA=0 -o src/f32-spmm/gen/16x1-minmax-neon-x2.c & 39*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=32 -D NR=1 -D UNROLL=2 -D FMA=0 -o src/f32-spmm/gen/32x1-minmax-neon-x2.c & 40*4bdc9457SAndroid Build Coastguard Worker 41*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=4 -D NR=1 -D UNROLL=2 -D FMA=1 -o src/f32-spmm/gen/4x1-minmax-neonfma-x2.c & 42*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=8 -D NR=1 -D UNROLL=2 -D FMA=1 -o src/f32-spmm/gen/8x1-minmax-neonfma-x2.c & 43*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=16 -D NR=1 -D UNROLL=2 -D FMA=1 -o src/f32-spmm/gen/16x1-minmax-neonfma-x2.c & 44*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon.c.in -D MR=32 -D NR=1 -D UNROLL=2 -D FMA=1 -o src/f32-spmm/gen/32x1-minmax-neonfma-x2.c & 45*4bdc9457SAndroid Build Coastguard Worker 46*4bdc9457SAndroid Build Coastguard Worker### Microkernels for blocks of output channels 47*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=4 -D NR=2 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/4x2-minmax-neonfma.c & 48*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=8 -D NR=2 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/8x2-minmax-neonfma.c & 49*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=12 -D NR=2 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/12x2-minmax-neonfma.c & 50*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=16 -D NR=2 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/16x2-minmax-neonfma.c & 51*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=32 -D NR=2 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/32x2-minmax-neonfma.c & 52*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=4 -D NR=4 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/4x4-minmax-neonfma.c & 53*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=8 -D NR=4 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/8x4-minmax-neonfma.c & 54*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=12 -D NR=4 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/12x4-minmax-neonfma.c & 55*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=16 -D NR=4 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/16x4-minmax-neonfma.c & 56*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-blocked.c.in -D MR=32 -D NR=4 -D UNROLL=1 -D FMA=1 -o src/f32-spmm/gen/32x4-minmax-neonfma.c & 57*4bdc9457SAndroid Build Coastguard Worker 58*4bdc9457SAndroid Build Coastguard Worker### Microkernels with software pipelining 59*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=4 -D NR=1 -D FMA=0 -o src/f32-spmm/gen/4x1-minmax-neon-pipelined.c & 60*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=8 -D NR=1 -D FMA=0 -o src/f32-spmm/gen/8x1-minmax-neon-pipelined.c & 61*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=16 -D NR=1 -D FMA=0 -o src/f32-spmm/gen/16x1-minmax-neon-pipelined.c & 62*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=32 -D NR=1 -D FMA=0 -o src/f32-spmm/gen/32x1-minmax-neon-pipelined.c & 63*4bdc9457SAndroid Build Coastguard Worker 64*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=4 -D NR=1 -D FMA=1 -o src/f32-spmm/gen/4x1-minmax-neonfma-pipelined.c & 65*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=8 -D NR=1 -D FMA=1 -o src/f32-spmm/gen/8x1-minmax-neonfma-pipelined.c & 66*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=16 -D NR=1 -D FMA=1 -o src/f32-spmm/gen/16x1-minmax-neonfma-pipelined.c & 67*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/neon-pipelined.c.in -D MR=32 -D NR=1 -D FMA=1 -o src/f32-spmm/gen/32x1-minmax-neonfma-pipelined.c & 68*4bdc9457SAndroid Build Coastguard Worker 69*4bdc9457SAndroid Build Coastguard Worker################################### x86 SSE ################################### 70*4bdc9457SAndroid Build Coastguard Worker### Microkernels without unrolling 71*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/sse.c.in -D MR=4 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/4x1-minmax-sse.c & 72*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/sse.c.in -D MR=8 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/8x1-minmax-sse.c & 73*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/sse.c.in -D MR=16 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/16x1-minmax-sse.c & 74*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/sse.c.in -D MR=32 -D NR=1 -D UNROLL=1 -o src/f32-spmm/gen/32x1-minmax-sse.c & 75*4bdc9457SAndroid Build Coastguard Worker 76*4bdc9457SAndroid Build Coastguard Worker################################### WASM SIMD ################################### 77*4bdc9457SAndroid Build Coastguard Worker### Microkernels without unrolling. 78*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=4 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-arm.c & 79*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=8 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-arm.c & 80*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=16 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-arm.c & 81*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=32 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-arm.c & 82*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=4 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-x86.c & 83*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=8 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-x86.c & 84*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=16 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-x86.c & 85*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=32 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-x86.c & 86*4bdc9457SAndroid Build Coastguard Worker 87*4bdc9457SAndroid Build Coastguard Worker### Microkernels with 2X unrolling 88*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=4 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-arm-x2.c & 89*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=8 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-arm-x2.c & 90*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=16 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-arm-x2.c & 91*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=32 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-arm-x2.c & 92*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=4 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-x86-x2.c & 93*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=8 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-x86-x2.c & 94*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=16 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-x86-x2.c & 95*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=32 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-x86-x2.c & 96*4bdc9457SAndroid Build Coastguard Worker 97*4bdc9457SAndroid Build Coastguard Worker### Microkernels with 4X unrolling 98*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=4 -D NR=1 -D UNROLL=4 -D MINMAX=MINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-arm-x4.c & 99*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=8 -D NR=1 -D UNROLL=4 -D MINMAX=MINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-arm-x4.c & 100*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=16 -D NR=1 -D UNROLL=4 -D MINMAX=MINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-arm-x4.c & 101*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=32 -D NR=1 -D UNROLL=4 -D MINMAX=MINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-arm-x4.c & 102*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=4 -D NR=1 -D UNROLL=4 -D MINMAX=PMINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-x86-x4.c & 103*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=8 -D NR=1 -D UNROLL=4 -D MINMAX=PMINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-x86-x4.c & 104*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=16 -D NR=1 -D UNROLL=4 -D MINMAX=PMINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-x86-x4.c & 105*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd.c.in -D MR=32 -D NR=1 -D UNROLL=4 -D MINMAX=PMINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-x86-x4.c & 106*4bdc9457SAndroid Build Coastguard Worker 107*4bdc9457SAndroid Build Coastguard Worker### Microkernels with software pipelining 108*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=4 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-arm-pipelined.c & 109*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=8 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-arm-pipelined.c & 110*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=16 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-arm-pipelined.c & 111*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=32 -D NR=1 -D UNROLL=1 -D MINMAX=MINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-arm-pipelined.c & 112*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=4 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-x86-pipelined.c & 113*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=8 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-x86-pipelined.c & 114*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=16 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-x86-pipelined.c & 115*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=32 -D NR=1 -D UNROLL=1 -D MINMAX=PMINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-x86-pipelined.c & 116*4bdc9457SAndroid Build Coastguard Worker 117*4bdc9457SAndroid Build Coastguard Worker### Microkernels with software pipelining and 2X unrolling 118*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=4 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-arm-pipelined-x2.c & 119*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=8 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-arm-pipelined-x2.c & 120*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=16 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-arm-pipelined-x2.c & 121*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=32 -D NR=1 -D UNROLL=2 -D MINMAX=MINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-arm-pipelined-x2.c & 122*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=4 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/4x1-minmax-wasmsimd-x86-pipelined-x2.c & 123*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=8 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/8x1-minmax-wasmsimd-x86-pipelined-x2.c & 124*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=16 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/16x1-minmax-wasmsimd-x86-pipelined-x2.c & 125*4bdc9457SAndroid Build Coastguard Workertools/xngen src/f32-spmm/wasmsimd-pipelined.c.in -D MR=32 -D NR=1 -D UNROLL=2 -D MINMAX=PMINMAX -o src/f32-spmm/gen/32x1-minmax-wasmsimd-x86-pipelined-x2.c & 126*4bdc9457SAndroid Build Coastguard Worker 127*4bdc9457SAndroid Build Coastguard Worker################################## Unit tests ################################# 128*4bdc9457SAndroid Build Coastguard Workertools/generate-spmm-test.py --spec test/f32-spmm-minmax.yaml --output test/f32-spmm-minmax.cc & 129*4bdc9457SAndroid Build Coastguard Worker 130*4bdc9457SAndroid Build Coastguard Workerwait 131