The following are the details when wamrc is compiled:
wamrc --target=riscv32 --target-abi=ilp32d --size-level=1 --enable-multi-thread --format=aot -o foo.aot foo.asm
Create AoT compiler with:
target: riscv32
target cpu:
target triple: riscv32-pc-linux-ilp32d
cpu features: +d
opt level: 3
size level: 1
output format: AoT file
Compile success, file foo.aot was generated.
Then when I tried to load and run this aot module, this error occurred:
AOT module load failed: resolve symbol __atomic_compare_exchange_4 failed.
I tried to use the same compilation option on other platforms, but only modified the -target option, which seems to work normally.
Do I need to provide implementation for functions like __atomic_compare_exchange_4 and __atomic_store_4 in riscv?
Thank you very much for your reply.