move clobber definition into base lib.c

This commit is contained in:
2026-01-29 00:55:02 +01:00
parent ecfb162062
commit b8f4e987b7
3 changed files with 10 additions and 11 deletions

View File

@ -4,8 +4,7 @@ WASI_CC := ${WASI_ROOT}/bin/clang
WASI_CFLAGS := --target=wasm32 \ WASI_CFLAGS := --target=wasm32 \
--sysroot=${WASI_ROOT}/share/wasi-sysroot \ --sysroot=${WASI_ROOT}/share/wasi-sysroot \
-z stack-size=4096 \ -z stack-size=4096 \
-nostdlib \ -O2 -nostdlib \
-O0 -g -Wall \
-Wl,--no-entry \ -Wl,--no-entry \
-Wl,--initial-memory=65536 \ -Wl,--initial-memory=65536 \
-Wl,--export-all \ -Wl,--export-all \
@ -16,7 +15,8 @@ WASI_CFLAGS := --target=wasm32 \
WAMR := /opt/wamr WAMR := /opt/wamr
IWASM_LIB := /opt/wamr-libiwasm IWASM_LIB := /opt/wamr-libiwasm
CC := gcc CC := gcc
CFLAGS := -I. -include arch/${ARCH}/lib.c -O0 -g -m32 -fomit-frame-pointer # NOTE: Without -fomit-frame-pointer I get "error: bp cannot be used in asm here"
CFLAGS := -I. -O2 -m32 -ffunction-sections -fomit-frame-pointer
LDFLAGS := -Wl,-T linker.ld $^ -Wl,--build-id=none -static -nostdlib -m32 \ LDFLAGS := -Wl,-T linker.ld $^ -Wl,--build-id=none -static -nostdlib -m32 \
-Wl,-rpath,${IWASM_LIB} -L${IWASM_LIB} -liwasm -Wl,-rpath,${IWASM_LIB} -L${IWASM_LIB} -liwasm
INCL := -I${WAMR}/core/iwasm/include \ INCL := -I${WAMR}/core/iwasm/include \
@ -29,7 +29,6 @@ INCL := -I${WAMR}/core/iwasm/include \
WAMRC := /opt/wamr-wamrc/wamrc WAMRC := /opt/wamr-wamrc/wamrc
WAMRCFLAGS := --target=i386 --format=object WAMRCFLAGS := --target=i386 --format=object
XXD := busybox xxd XXD := busybox xxd
WASM2C := wasm2c
################################################################ ################################################################
@ -45,7 +44,7 @@ ${BUILD_DIR}/%/module.wasm: %.c
# ${WAMRC} ${WAMRCFLAGS} -o ${BUILD_DIR}/$*/system.o ${BUILD_DIR}/$*/module.wasm # ${WAMRC} ${WAMRCFLAGS} -o ${BUILD_DIR}/$*/system.o ${BUILD_DIR}/$*/module.wasm
# #
# ${BUILD_DIR}/startup.o: arch/bochs/startup.s # ${BUILD_DIR}/startup.o: arch/bochs/startup.s
# ${CC} $< ${CFLAGS} -c -ffunction-sections -o $@ # ${CC} $< ${CFLAGS} -c -o $@
# #
# ${BUILD_DIR}/%/system.elf: ${BUILD_DIR}/%/system.o ${BUILD_DIR}/startup.o # ${BUILD_DIR}/%/system.elf: ${BUILD_DIR}/%/system.o ${BUILD_DIR}/startup.o
# ${CC} ${LDFLAGS} -o $@ # ${CC} ${LDFLAGS} -o $@
@ -66,10 +65,10 @@ ${BUILD_DIR}/%/system.o: ${BUILD_DIR}/%/module_wasm.c
-e "s/__WASM_ARRAY__/build_bochs_$*_module_aot/g" \ -e "s/__WASM_ARRAY__/build_bochs_$*_module_aot/g" \
-e "s/__WASM_ARRAY_LEN__/build_bochs_$*_module_aot_len/g" \ -e "s/__WASM_ARRAY_LEN__/build_bochs_$*_module_aot_len/g" \
${BUILD_DIR}/$*/module_host.c ${BUILD_DIR}/$*/module_host.c
${CC} ${CFLAGS} ${INCL} -c -ffunction-sections ${BUILD_DIR}/$*/module_host.c -o $@ ${CC} ${CFLAGS} ${INCL} -c ${BUILD_DIR}/$*/module_host.c -o $@
${BUILD_DIR}/startup.o: arch/bochs/startup.s ${BUILD_DIR}/startup.o: arch/bochs/startup.s
${CC} $< ${CFLAGS} -c -ffunction-sections -o $@ ${CC} $< ${CFLAGS} -c -o $@
${BUILD_DIR}/%/system.elf: ${BUILD_DIR}/%/system.o ${BUILD_DIR}/startup.o ${BUILD_DIR}/%/system.elf: ${BUILD_DIR}/%/system.o ${BUILD_DIR}/startup.o
${CC} ${LDFLAGS} -o $@ ${CC} ${LDFLAGS} -o $@

View File

@ -1,4 +0,0 @@
#pragma once
#define ARCH_ASM_CLOBBER_ALL "eax", "ebx", "ecx", "edx", "esi", "edi", "ebp"

View File

@ -6,6 +6,10 @@
#define __QUOTE(x) #x #define __QUOTE(x) #x
#define QUOTE(x) __QUOTE(x) #define QUOTE(x) __QUOTE(x)
#ifndef ARCH_ASM_CLOBBER_ALL
#define ARCH_ASM_CLOBBER_ALL "eax", "ebx", "ecx", "edx", "esi", "edi", "ebp"
#endif
#ifndef MARKER #ifndef MARKER
#define MARKER(str) \ #define MARKER(str) \
__asm__ volatile(QUOTE(str) ":" \ __asm__ volatile(QUOTE(str) ":" \