wasm: globals and wasm64 (#8)

This commit is contained in:
Philip Craig
2023-05-09 11:43:05 +10:00
committed by GitHub
parent 7794059d3a
commit 0bd0f08374
6 changed files with 43 additions and 0 deletions
+7
View File
@@ -0,0 +1,7 @@
export WASI_VERSION=12
export WASI_VERSION_FULL=${WASI_VERSION}.0
wget https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_VERSION}/wasi-sdk-${WASI_VERSION_FULL}-linux.tar.gz
tar xvf wasi-sdk-${WASI_VERSION_FULL}-linux.tar.gz
export WASI_SDK_PATH=`pwd`/wasi-sdk-${WASI_VERSION_FULL}
CC="${WASI_SDK_PATH}/bin/clang --sysroot=${WASI_SDK_PATH}/share/wasi-sysroot"
$CC base.c -o base.wasm
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+11
View File
@@ -0,0 +1,11 @@
#include <stdint.h>
void console_log(uint32_t value);
uint32_t global1 = 1;
uint32_t global2 = 2;
void print() {
console_log(global1);
console_log(global2);
}
+25
View File
@@ -0,0 +1,25 @@
clang-16 --target=wasm32 -nostdlib -c global.c -o global-wasm32.o
wasm-ld-16 \
--no-entry \
--export-all \
--allow-undefined \
global-wasm32.o \
-o global-wasm32
clang-16 --target=wasm64 -nostdlib -c global.c -o global-wasm64.o
wasm-ld-16 \
-mwasm64 \
--no-entry \
--export-all \
--allow-undefined \
global-wasm64.o \
-o global-wasm64
wasm-ld-16 \
-mwasm64 \
--no-entry \
--export-all \
--allow-undefined \
--import-memory \
global-wasm64.o \
-o global-wasm64-import