committed by
GitHub
parent
cfdcf1315b
commit
45cd9dfc0f
@@ -6,7 +6,17 @@ cc_binary(
|
||||
srcs = ["hello-world.cc"],
|
||||
)
|
||||
|
||||
cc_binary(
|
||||
name = "hello-world-simd",
|
||||
srcs = ["hello-world-simd.cc"],
|
||||
)
|
||||
|
||||
wasm_cc_binary(
|
||||
name = "hello-world-wasm",
|
||||
cc_target = ":hello-world",
|
||||
)
|
||||
|
||||
wasm_cc_binary(
|
||||
name = "hello-world-wasm-simd",
|
||||
cc_target = ":hello-world-simd",
|
||||
)
|
||||
|
||||
10
bazel/hello-world/hello-world-simd.cc
Normal file
10
bazel/hello-world/hello-world-simd.cc
Normal file
@@ -0,0 +1,10 @@
|
||||
#include <wasm_simd128.h>
|
||||
|
||||
void multiply_arrays(int* out, int* in_a, int* in_b, int size) {
|
||||
for (int i = 0; i < size; i += 4) {
|
||||
v128_t a = wasm_v128_load(&in_a[i]);
|
||||
v128_t b = wasm_v128_load(&in_b[i]);
|
||||
v128_t prod = wasm_i32x4_mul(a, b);
|
||||
wasm_v128_store(&out[i], prod);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user