Skip to content

Commit

Permalink
doc/build_wasm_app.md: Add a note about aot abi compatibility (byteco…
Browse files Browse the repository at this point in the history
yamt authored Jan 10, 2024
1 parent 0d4ade6 commit 49ac1e0
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions doc/build_wasm_app.md
Original file line number Diff line number Diff line change
@@ -372,6 +372,20 @@ Examples: wamrc -o test.aot test.wasm
wamrc --target=i386 --format=object -o test.o test.wasm
```
## AoT-compiled module compatibility among WAMR versions
When making major ABI changes for AoT-compiled modules, we bump
`AOT_CURRENT_VERSION` constant in `core/config.h` header.
The runtime rejects to load a module AoT-compiled with wamrc with
a different `AOT_CURRENT_VERSION`.
We try our best to maintain our runtime ABI for AoT-compiled modules
compatible among WAMR versions with the same `AOT_CURRENT_VERSION`
so that combinations of older wamrc and newer runtime usually work.
However, there might be minor incompatibilities time to time.
For productions, we recommend to use the exactly same version of
wamrc and the runtime.
## AoT compilation with 3rd-party toolchains
`wamrc` uses LLVM to compile wasm bytecode to AoT file, this works for most of the architectures, but there may be circumstances where you want to use 3rd-party toolchains to take over some steps of the compilation pipeline, e.g.

0 comments on commit 49ac1e0

Please sign in to comment.