build.sh 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #!/bin/bash
  2. # Copyright (C) 2019 Intel Corporation. All rights reserved.
  3. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  4. OUT_DIR=$PWD/out
  5. WAMRC_CMD=$PWD/../../../wamr-compiler/build/wamrc
  6. mkdir -p jetstream
  7. mkdir -p ${OUT_DIR}
  8. cd jetstream
  9. echo "Download source files .."
  10. wget https://browserbench.org/JetStream/wasm/gcc-loops.cpp
  11. wget https://browserbench.org/JetStream/wasm/quicksort.c
  12. wget https://browserbench.org/JetStream/wasm/HashSet.cpp
  13. wget https://browserbench.org/JetStream/simple/float-mm.c
  14. patch -p1 < ../jetstream.patch
  15. echo "Build gcc-loops with g++ .."
  16. g++ -O3 -msse2 -msse3 -msse4 -o ${OUT_DIR}/gcc-loops_native gcc-loops.cpp
  17. echo "Build gcc-loops with em++ .."
  18. em++ -O3 -s STANDALONE_WASM=1 -msimd128 \
  19. -s INITIAL_MEMORY=1048576 \
  20. -s TOTAL_STACK=32768 \
  21. -s "EXPORTED_FUNCTIONS=['_main']" \
  22. -s ERROR_ON_UNDEFINED_SYMBOLS=0 \
  23. -o ${OUT_DIR}/gcc-loops.wasm gcc-loops.cpp
  24. echo "Compile gcc-loops.wasm to gcc-loops.aot"
  25. ${WAMRC_CMD} -o ${OUT_DIR}/gcc-loops.aot ${OUT_DIR}/gcc-loops.wasm
  26. echo "Build quicksort with gcc .."
  27. gcc -O3 -msse2 -msse3 -msse4 -o ${OUT_DIR}/quicksort_native quicksort.c
  28. echo "Build quicksort with emcc .."
  29. emcc -O3 -s STANDALONE_WASM=1 -msimd128 \
  30. -s INITIAL_MEMORY=1048576 \
  31. -s TOTAL_STACK=32768 \
  32. -s "EXPORTED_FUNCTIONS=['_main']" \
  33. -o ${OUT_DIR}/quicksort.wasm quicksort.c
  34. echo "Compile quicksort.wasm to quicksort.aot"
  35. ${WAMRC_CMD} -o ${OUT_DIR}/quicksort.aot ${OUT_DIR}/quicksort.wasm
  36. echo "Build HashSet with g++ .."
  37. g++ -O3 -msse2 -msse3 -msse4 -o ${OUT_DIR}/HashSet_native HashSet.cpp \
  38. -lstdc++
  39. echo "Build HashSet with em++ .."
  40. em++ -O3 -s STANDALONE_WASM=1 -msimd128 \
  41. -s INITIAL_MEMORY=1048576 \
  42. -s TOTAL_STACK=32768 \
  43. -s "EXPORTED_FUNCTIONS=['_main']" \
  44. -o ${OUT_DIR}/HashSet.wasm HashSet.cpp
  45. echo "Compile HashSet.wasm to HashSet.aot"
  46. ${WAMRC_CMD} -o ${OUT_DIR}/HashSet.aot ${OUT_DIR}/HashSet.wasm
  47. echo "Build float-mm with gcc .."
  48. gcc -O3 -msse2 -msse3 -msse4 -o ${OUT_DIR}/float-mm_native float-mm.c
  49. echo "Build float-mm with emcc .."
  50. emcc -O3 -s STANDALONE_WASM=1 -msimd128 \
  51. -s INITIAL_MEMORY=1048576 \
  52. -s TOTAL_STACK=32768 \
  53. -s "EXPORTED_FUNCTIONS=['_main']" \
  54. -o ${OUT_DIR}/float-mm.wasm float-mm.c
  55. echo "Compile float-mm.wasm to float-mm.aot"
  56. ${WAMRC_CMD} -o ${OUT_DIR}/float-mm.aot ${OUT_DIR}/float-mm.wasm