wasm-micro-runtime/core/iwasm/fast-jit/fe
YAMAMOTO Takashi 562a5dd1b6
Fix data/elem drop (#2747)
Currently, `data.drop` instruction is implemented by directly modifying the
underlying module. It breaks use cases where you have multiple instances
sharing a single loaded module. `elem.drop` has the same problem too.

This PR  fixes the issue by keeping track of which data/elem segments have
been dropped by using bitmaps for each module instances separately, and
add a sample to demonstrate the issue and make the CI run it.

Also add a missing check of dropped elements to the fast-jit `table.init`.

Fixes: https://github.com/bytecodealliance/wasm-micro-runtime/issues/2735
Fixes: https://github.com/bytecodealliance/wasm-micro-runtime/issues/2772
2023-11-18 08:50:16 +08:00
..
jit_emit_compare.c Fix invalid use of jit_reg_is_const_val in fast-jit (#2718) 2023-11-03 14:25:26 +08:00
jit_emit_compare.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_const.c Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_const.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_control.c Fix invalid use of jit_reg_is_const_val in fast-jit (#2718) 2023-11-03 14:25:26 +08:00
jit_emit_control.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_conversion.c Fix fast-jit f32/f64 truncate to i32/i64 (#2671) 2023-10-27 12:20:25 +08:00
jit_emit_conversion.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_exception.c Refactor interpreter/AOT module instance layout (#1559) 2022-10-18 10:59:28 +08:00
jit_emit_exception.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_function.c Fix fast-jit callnative translation (#2765) 2023-11-15 18:30:51 +08:00
jit_emit_function.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_memory.c Fix data/elem drop (#2747) 2023-11-18 08:50:16 +08:00
jit_emit_memory.h Implement Fast JIT multi-threading feature (#2134) 2023-04-20 10:09:34 +08:00
jit_emit_numberic.c Fix nightly run sanitizer error in Fast JIT (#2601) 2023-09-27 15:41:48 +08:00
jit_emit_numberic.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_parametric.c Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_parametric.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_table.c Fix data/elem drop (#2747) 2023-11-18 08:50:16 +08:00
jit_emit_table.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00
jit_emit_variable.c Implement Fast JIT dump call stack and perf profiling (#1633) 2022-10-27 09:28:32 +08:00
jit_emit_variable.h Import WAMR Fast JIT (#1343) 2022-08-02 16:03:50 +08:00