History log of /wasmtime-44.0.1/tests/all/ (Results 1 – 25 of 841)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
39e910be09-Apr-2026 Alex Crichton <[email protected]>

[44.0.0] Merged backports for security advisories (#13007)

* fix(environ): repair unsound StringPool::try_clone()

The 43.0 release introduced a soundness bug in StringPool::try_clone(): the
cloned

[44.0.0] Merged backports for security advisories (#13007)

* fix(environ): repair unsound StringPool::try_clone()

The 43.0 release introduced a soundness bug in StringPool::try_clone(): the
cloned map retains &'static str keys pointing into the original pool's
strings storage. Once the original Linker is dropped those keys dangle.

Cloning a Linker, then dropping the original one, leaves a linker whose
registered imports could no longer be found, causing instantiation to
fail with "unknown import".

Signed-off-by: Flavio Castelli <[email protected]>

* Fix pooling allocator predicate to reset VM permissions

This commit fixes a mistake that was introduced in #9583 where the logic
to reset a linear memory slot in the pooling allocator used the wrong
predicate. Specifically VM permissions must be reset if virtual memory
can be relied on at all, and the preexisting predicate of
`can_elide_bounds_check` was an inaccurate representation of this. The
correct predicate to check is `can_use_virtual_memory`.

* winch: Fix the type of the `table.size` output register

This commit corrects the tagged size of the output of the `table.size`
instruction. Previously this was hardcoded as a 32-bit integer instead
of consulting the table's index type to use the
index-type-sized-register instead.

* winch: Fix a host panic when executing `table.fill`

This commit fixes a possible panic when a Winch-compiled module executes
the `table.fill` instruction. Refactoring in #11254 updated Cranelift
but forgot to update Winch meaning that Winch's indices were still using
the module-level indices instead of the `DefinedTableIndex` space. This
adds some tests and updates Winch's translation to use preexisting
helpers.

* x64: Fix `f64x2.splat` without SSE3

Don't sink a load into `pshufd` which loads 16 bytes, instead force
`put_in_xmm` to ensure only 8 bytes are loaded.

* Properly verify alignment in string transcoding

This commit updates string transcoding between guest modules to properly
verify alignment. Previously alignment was only verified on the first
allocation, not reallocations, which is not spec-compliant. This
additionally fixes a possible host panic when dealing with unaligned
pointers.

* Fix type confusion in AArch64 amode RegScaled folding

* winch: Add add_uextend to perform explicit extension when needed.

This commit fixes an out-of-bounds access caused by the lack zero
extension in the code responsible for calculating the heap address for
loads/stores.

This issue manifests in aarch64 (unlike x64) given that no automatic
extension is performed, resulting in an out-of-bounds access.

An alternative approach is to emit an extend for the index, however
this approach is preferred given that it gives the MacroAssembler
layer better control of how to lower addition, e.g., in aarch64 we can
inline the desired extension in a single instruction.

* winch: Correctly type the result of table.grow

This commit fixes an out-of-bounds access caused by the lack of type
narrowing from the `table.grow` builtin. Without explicit narrowing,
the type is treated as 64-bit value, which could cause issues when
paired with loads/stores.

* Review comments

* Properly handle table index types

Only narrow when dealing with the 64-bit pointer/32-bit tables

* Fix panic with out-of-bounds flags in `Value`

This commit fixes a panic when a component model `Value` is lifted from
a flags value which specifies out-of-bounds bits as 1. This is specified
in the component model to ignore the out-of-bounds bits, which `flags!`
correctly did (and thus `bindgen!`), but `Value` treated out-of-bounds
bits as a panic due to indexing an array.

* Fix bounds checks in FACT's `string_to_compact` method

We need to bounds check the source byte length, not the number of code units.

* Add missing realloc validation in string transcoding

This commit adds a missing validation that a return value of `realloc`
is inbounds during string transcoding. This was accidentally missing on
the transcoding path from `utf8` to `latin1+utf16` which meant that a
nearly-raw pointer could get passed to the host to perform the
transcode.

* winch: Refine zero extension heuristic

This commit refines the zero extension heuristic such that it
unconditionally emits a zero extension when dealing with 32-bit
heaps. This eliminates any ambiguity related to the value of the
memory indices across ISAs.

* Fix failure on 32-bit

* Fix miri test

---------

Signed-off-by: Flavio Castelli <[email protected]>
Co-authored-by: Flavio Castelli <[email protected]>
Co-authored-by: Shun Kashiwa <[email protected]>
Co-authored-by: Saúl Cabrera <[email protected]>
Co-authored-by: Nick Fitzgerald <[email protected]>

show more ...


/wasmtime-44.0.1/Cargo.lock
/wasmtime-44.0.1/Cargo.toml
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/abi.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst/args.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst/emit.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst/emit_tests.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/lower/isle.rs
/wasmtime-44.0.1/cranelift/codegen/src/opts/arithmetic.isle
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/arithmetic-precise.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/issue-shift-masked-imm-type.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/preserve-all.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/riscv64/trapz-sign-extend-load32.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/x64/atomic-128.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/x64/i128.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/uadd_overflow.clif
/wasmtime-44.0.1/crates/c-api/Cargo.toml
/wasmtime-44.0.1/crates/c-api/artifact/Cargo.toml
/wasmtime-44.0.1/crates/c-api/build.rs
/wasmtime-44.0.1/crates/c-api/cmake/features.cmake
/wasmtime-44.0.1/crates/c-api/include/wasmtime/component/linker.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/component/linker.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/conf.h.in
/wasmtime-44.0.1/crates/c-api/include/wasmtime/gc.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/gc.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/store.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/val.hh
/wasmtime-44.0.1/crates/c-api/src/component/linker.rs
/wasmtime-44.0.1/crates/c-api/src/ref.rs
/wasmtime-44.0.1/crates/c-api/src/store.rs
/wasmtime-44.0.1/crates/c-api/tests/gc.cc
/wasmtime-44.0.1/crates/environ/src/fact/trampoline.rs
/wasmtime-44.0.1/crates/environ/src/string_pool.rs
/wasmtime-44.0.1/crates/fiber/src/nostd.rs
/wasmtime-44.0.1/crates/fiber/src/unix.rs
/wasmtime-44.0.1/crates/fuzzing/Cargo.toml
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/mutator.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/ops.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/tests.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/types.rs
/wasmtime-44.0.1/crates/fuzzing/src/oom.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/func.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/values.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/cow.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/pooling/generic_stack_pool.rs
/wasmtime-44.0.1/docs/stability-wasm-proposals.md
component_model/dynamic.rs
linker.rs
pooling_allocator.rs
/wasmtime-44.0.1/tests/disas/winch/aarch64/load/dynamic_heap.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/load/f32.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/load/f64.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/load/i32.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/load/i64.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/store/dynamic_heap.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/store/f32.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/store/f64.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/store/i32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/fence/fence.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/load/i32_atomic_load.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/load/i32_atomic_load16_u.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/load/i32_atomic_load8_u.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/load/i64_atomic_load.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/load/i64_atomic_load16_u.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/load/i64_atomic_load32_u.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/load/i64_atomic_load8_u.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/add/i32_atomic_rmw16_addu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/add/i32_atomic_rmw8_addu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/add/i32_atomic_rmw_add.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/add/i64_atomic_rmw16_addu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/add/i64_atomic_rmw32_addu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/add/i64_atomic_rmw8_addu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/add/i64_atomic_rmw_add.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/and/i32_atomic_rmw16_andu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/and/i32_atomic_rmw8_andu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/and/i32_atomic_rmw_and.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/and/i64_atomic_rmw16_andu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/and/i64_atomic_rmw32_andu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/and/i64_atomic_rmw8_andu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/and/i64_atomic_rmw_and.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/cmpxchg/i32_atomic_rmw16_cmpxchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/cmpxchg/i32_atomic_rmw8_cmpxchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/cmpxchg/i32_atomic_rmw_cmpxchg.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/cmpxchg/i64_atomic_rmw16_cmpxchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/cmpxchg/i64_atomic_rmw32_cmpxchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/cmpxchg/i64_atomic_rmw8_cmpxchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/cmpxchg/i64_atomic_rmw_cmpxchg.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/or/i32_atomic_rmw16_oru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/or/i32_atomic_rmw8_oru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/or/i32_atomic_rmw_or.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/or/i64_atomic_rmw16_oru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/or/i64_atomic_rmw32_oru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/or/i64_atomic_rmw8_oru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/or/i64_atomic_rmw_or.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/sub/i32_atomic_rmw16_subu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/sub/i32_atomic_rmw8_subu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/sub/i32_atomic_rmw_sub.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/sub/i64_atomic_rmw16_subu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/sub/i64_atomic_rmw32_subu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/sub/i64_atomic_rmw8_subu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/sub/i64_atomic_rmw_sub.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xchg/i32_atomic_rmw16_xchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xchg/i32_atomic_rmw8_xchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xchg/i32_atomic_rmw_xchg.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xchg/i64_atomic_rmw16_xchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xchg/i64_atomic_rmw32_xchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xchg/i64_atomic_rmw8_xchgu.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xchg/i64_atomic_rmw_xchg.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xor/i32_atomic_rmw16_xoru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xor/i32_atomic_rmw8_xoru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xor/i32_atomic_rmw_xor.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xor/i64_atomic_rmw16_xoru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xor/i64_atomic_rmw32_xoru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xor/i64_atomic_rmw8_xoru.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/rmw/xor/i64_atomic_rmw_xor.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/store/i32_atomic_store.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/store/i32_atomic_store16.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/store/i32_atomic_store8.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/store/i64_atomic_store.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/store/i64_atomic_store16.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/store/i64_atomic_store32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/store/i64_atomic_store8.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/f32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/f64.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/grow_load.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/i32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/i64.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load16_splat_avx2.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load16x4_s_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load16x4_u_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load32_splat_avx2.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load32_zero_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load32x2_s_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load32x2_s_oob_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load32x2_u_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load32x2_u_oob_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load64_splat_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load64_zero_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load8_splat_avx2.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load8x8_s_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/v128_load8x8_u_avx.wat
/wasmtime-44.0.1/tests/disas/winch/x64/store/f32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/store/f64.wat
/wasmtime-44.0.1/tests/disas/winch/x64/store/i32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/store/oob.wat
/wasmtime-44.0.1/tests/disas/winch/x64/store/v128.wat
/wasmtime-44.0.1/tests/disas/winch/x64/table/grow.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/load_lane/load16.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/load_lane/load32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/load_lane/load64.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/load_lane/load8.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/store_lane/store16.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/store_lane/store32.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/store_lane/store64.wat
/wasmtime-44.0.1/tests/disas/winch/x64/v128_ops/store_lane/store8.wat
/wasmtime-44.0.1/tests/misc_testsuite/component-model/string-transcode-invalid.wast
/wasmtime-44.0.1/tests/misc_testsuite/component-model/strings.wast
/wasmtime-44.0.1/tests/misc_testsuite/pooling-oob-on-reuse.wast
/wasmtime-44.0.1/tests/misc_testsuite/simd/edge-of-memory.wast
/wasmtime-44.0.1/tests/misc_testsuite/winch/oob_extend.wast
/wasmtime-44.0.1/tests/misc_testsuite/winch/oob_table_grow.wast
/wasmtime-44.0.1/tests/misc_testsuite/winch/table64.wast
/wasmtime-44.0.1/tests/misc_testsuite/winch/table_fill.wast
/wasmtime-44.0.1/winch/codegen/src/codegen/bounds.rs
/wasmtime-44.0.1/winch/codegen/src/codegen/env.rs
/wasmtime-44.0.1/winch/codegen/src/codegen/mod.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/asm.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/masm.rs
/wasmtime-44.0.1/winch/codegen/src/isa/x64/masm.rs
/wasmtime-44.0.1/winch/codegen/src/masm.rs
/wasmtime-44.0.1/winch/codegen/src/visitor.rs
071c406102-Apr-2026 r-near <[email protected]>

winch: implement ref.null, ref.is_null, ref.func, and typed select (#12940)

* winch: implement ref.null, ref.is_null, ref.func, and typed select

* add disas tests and ref.func call_indirect coverag

winch: implement ref.null, ref.is_null, ref.func, and typed select (#12940)

* winch: implement ref.null, ref.is_null, ref.func, and typed select

* add disas tests and ref.func call_indirect coverage

* register wasmtime module in fuzz wast_test to fix wast_smoke_test

show more ...


/wasmtime-44.0.1/.github/workflows/main.yml
/wasmtime-44.0.1/Cargo.lock
/wasmtime-44.0.1/Cargo.toml
/wasmtime-44.0.1/cranelift/codegen/meta/src/isa/arm64.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/inst/emit.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/inst/emit_tests.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower/isle.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/buffer.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/opts/arithmetic.isle
/wasmtime-44.0.1/cranelift/codegen/src/opts/bitops.isle
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/arithmetic-precise.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/fold-bitops.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/bti.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/bti_with_csdb.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/condops-with-csdb.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/condops.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/jumptable.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/jumptable_with_csdb.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/arithmetic.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/fold-bitops.clif
/wasmtime-44.0.1/crates/c-api/include/wasmtime.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/gc.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/gc.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/store.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/val.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/val.hh
/wasmtime-44.0.1/crates/c-api/src/ref.rs
/wasmtime-44.0.1/crates/c-api/tests/CMakeLists.txt
/wasmtime-44.0.1/crates/c-api/tests/gc.cc
/wasmtime-44.0.1/crates/cranelift/src/func_environ.rs
/wasmtime-44.0.1/crates/cranelift/src/func_environ/gc/enabled.rs
/wasmtime-44.0.1/crates/environ/src/gc.rs
/wasmtime-44.0.1/crates/fiber/src/lib.rs
/wasmtime-44.0.1/crates/fiber/src/miri.rs
/wasmtime-44.0.1/crates/fiber/src/nostd.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch/aarch64.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch/arm.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch/riscv32imac.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch/riscv64.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch/s390x.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch/x86.rs
/wasmtime-44.0.1/crates/fiber/src/stackswitch/x86_64.rs
/wasmtime-44.0.1/crates/fiber/src/unix.rs
/wasmtime-44.0.1/crates/fiber/src/windows.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/exception_ops.rs
/wasmtime-44.0.1/crates/fuzzing/src/oracles.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_streams.rs
/wasmtime-44.0.1/crates/test-util/src/wast.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/gc/enabled/anyref.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/store/gc.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/gc.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/gc/enabled/drc.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/gc/enabled/free_list.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator.rs
/wasmtime-44.0.1/crates/wast/src/wast.rs
/wasmtime-44.0.1/docs/security.md
/wasmtime-44.0.1/docs/stability-wasm-proposals.md
/wasmtime-44.0.1/fuzz/Cargo.toml
/wasmtime-44.0.1/fuzz/fuzz_targets/exception_ops.rs
func.rs
/wasmtime-44.0.1/tests/disas/gc/issue-11753.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i32_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i32_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i32_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i32_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i32_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/aarch64/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/br_table/large.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/br_table/nested_br_table_loop_block.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/call_indirect/call_indirect.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/call_indirect/local_arg.wat
/wasmtime-44.0.1/tests/disas/winch/x64/call_indirect/call_indirect.wat
/wasmtime-44.0.1/tests/disas/winch/x64/call_indirect/local_arg.wat
/wasmtime-44.0.1/tests/disas/winch/x64/ref/func.wat
/wasmtime-44.0.1/tests/disas/winch/x64/ref/is_null.wat
/wasmtime-44.0.1/tests/disas/winch/x64/ref/null.wat
/wasmtime-44.0.1/tests/disas/winch/x64/select/typed.wat
/wasmtime-44.0.1/tests/disas/winch/x64/table/fill.wat
/wasmtime-44.0.1/tests/disas/winch/x64/table/get.wat
/wasmtime-44.0.1/tests/disas/winch/x64/table/init_copy_drop.wat
/wasmtime-44.0.1/tests/disas/winch/x64/table/set.wat
/wasmtime-44.0.1/tests/misc_testsuite/gc/array-new-data-missing-stack-map.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/array-new-elem-missing-stack-map.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/issue-11753.wast
/wasmtime-44.0.1/tests/misc_testsuite/winch/ref-types-basic.wast
/wasmtime-44.0.1/tests/wast.rs
/wasmtime-44.0.1/winch/codegen/src/codegen/mod.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/asm.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/masm.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/mod.rs
/wasmtime-44.0.1/winch/codegen/src/visitor.rs
4c7c01dc01-Apr-2026 Chris Fallin <[email protected]>

Debugging: add debugger support for `wasmtime serve`. (#12859)

This adopts a simple solution to #12776: it takes the "instance reuse"
paradigm to the extreme, instantiating exactly one instance and

Debugging: add debugger support for `wasmtime serve`. (#12859)

This adopts a simple solution to #12776: it takes the "instance reuse"
paradigm to the extreme, instantiating exactly one instance and
serializing all requests into that one instance. This allows the
debugger component to operate on one `Store`, setting breakpoint state
and presenting its execution to the attached debugger as a single
program execution and minimizing impedance mismatches.

This also adds an integration test that runs an existing wasi-http
test component under the debugger.

show more ...

8c22e58c31-Mar-2026 Alex Crichton <[email protected]>

mpk: Fix index used when purging a module in the pooling allocator (#12910)

This commit fixes an issue with the pooling allocator when MPK is
enabled, which is off-by-default at compile time. When a

mpk: Fix index used when purging a module in the pooling allocator (#12910)

This commit fixes an issue with the pooling allocator when MPK is
enabled, which is off-by-default at compile time. When a module is
dropped all remaining images are purged from the pooling allocator, but
the purging logic mistakenly used the wrong kind of index during purging
which led to corruption of the pooling allocator itself. This fixes the
logic and adds regression tests showcasing the issue as well.

show more ...


/wasmtime-44.0.1/crates/c-api/include/wasmtime.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/exn.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/exn.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/extern.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/extern.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/extern_declare.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/instance.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/store.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/tag.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/tag.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/tag.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/val.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/val.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/val.hh
/wasmtime-44.0.1/crates/c-api/src/exn.rs
/wasmtime-44.0.1/crates/c-api/src/extern.rs
/wasmtime-44.0.1/crates/c-api/src/func.rs
/wasmtime-44.0.1/crates/c-api/src/lib.rs
/wasmtime-44.0.1/crates/c-api/src/ref.rs
/wasmtime-44.0.1/crates/c-api/src/tag.rs
/wasmtime-44.0.1/crates/c-api/src/types/tag.rs
/wasmtime-44.0.1/crates/c-api/src/types/val.rs
/wasmtime-44.0.1/crates/c-api/src/val.rs
/wasmtime-44.0.1/crates/c-api/tests/CMakeLists.txt
/wasmtime-44.0.1/crates/c-api/tests/exception.cc
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/types.rs
/wasmtime-44.0.1/crates/test-util/src/wast.rs
/wasmtime-44.0.1/crates/wasi-http/src/p3/body.rs
/wasmtime-44.0.1/crates/wasi-http/tests/all/p3/mod.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/pooling/memory_pool.rs
pooling_allocator.rs
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/notify/notify_offset.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/wait/wait32_offset.wat
/wasmtime-44.0.1/tests/disas/winch/x64/atomic/wait/wait64_offset.wat
/wasmtime-44.0.1/tests/misc_testsuite/memory64/threads.wast
/wasmtime-44.0.1/tests/misc_testsuite/pooling-drop-out-of-order.wast
/wasmtime-44.0.1/winch/codegen/src/codegen/mod.rs
9500c41731-Mar-2026 Chris Fallin <[email protected]>

Several fixes to debugging infrastructure: component vs. module PCs and gdbstub wasm module names. (#12901)

* Debugging: fix module-relative vs component-relative PCs and unique library names.

Two

Several fixes to debugging infrastructure: component vs. module PCs and gdbstub wasm module names. (#12901)

* Debugging: fix module-relative vs component-relative PCs and unique library names.

Two bugfixes for guest debugging with components:

1. Convert component-relative source locations to module-relative PCs
in the frame table. The guest-debug API presents a core-Wasm view
where components are deconstructed into individual modules, so all
PCs must be module-relative. This adds a `wasm_module_offset` field
to `ModuleTranslation` and `FuncEnvironment`, set during component
translation, and subtracts it in `debug_tags()`.

2. Give unique names to "library" entries in the gdbstub XML response.
LLDB's DynamicLoader deduplicates by name, so using "wasm" for all
modules caused only the first to be loaded.

* Debugging: add ModulePC and ComponentPC newtypes for Wasm PC offsets.

Introduce `ModulePC` (module-relative) and `ComponentPC`
(component-relative) newtype wrappers around u32 Wasm bytecode
offsets. These replace raw u32 values throughout the frame table,
breakpoint, and debug systems to prevent confusion between the two
offset spaces.

* Debugging: add regression test for component module-relative PCs.

show more ...


/wasmtime-44.0.1/cranelift/codegen/meta/src/shared/settings.rs
/wasmtime-44.0.1/cranelift/codegen/src/context.rs
/wasmtime-44.0.1/cranelift/codegen/src/egraph/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/ir/dfg.rs
/wasmtime-44.0.1/cranelift/codegen/src/ir/entities.rs
/wasmtime-44.0.1/cranelift/codegen/src/ir/function.rs
/wasmtime-44.0.1/cranelift/codegen/src/ir/memflags.rs
/wasmtime-44.0.1/cranelift/codegen/src/ir/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower/isle.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/pulley_shared/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/inst/args.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/inst/vector.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/legalizer/globalvalue.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/blockorder.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/compile.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/isle.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/vcode.rs
/wasmtime-44.0.1/cranelift/codegen/src/prelude_lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/print_errors.rs
/wasmtime-44.0.1/cranelift/codegen/src/result.rs
/wasmtime-44.0.1/cranelift/codegen/src/settings.rs
/wasmtime-44.0.1/cranelift/codegen/src/verifier/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/write.rs
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/aarch64/simd.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/riscv64/issue-12811.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/bitops.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/simd-splat.clif
/wasmtime-44.0.1/cranelift/reader/src/parser.rs
/wasmtime-44.0.1/cranelift/reader/src/sourcemap.rs
/wasmtime-44.0.1/crates/cli-flags/src/lib.rs
/wasmtime-44.0.1/crates/cranelift/src/bounds_checks.rs
/wasmtime-44.0.1/crates/cranelift/src/compiled_function.rs
/wasmtime-44.0.1/crates/cranelift/src/compiler.rs
/wasmtime-44.0.1/crates/cranelift/src/func_environ.rs
/wasmtime-44.0.1/crates/cranelift/src/func_environ/gc/enabled.rs
/wasmtime-44.0.1/crates/cranelift/src/translate/code_translator.rs
/wasmtime-44.0.1/crates/cranelift/src/translate/environ/spec.rs
/wasmtime-44.0.1/crates/cranelift/src/translate/heap.rs
/wasmtime-44.0.1/crates/debugger/src/host/opaque.rs
/wasmtime-44.0.1/crates/debugger/src/lib.rs
/wasmtime-44.0.1/crates/environ/src/address_map.rs
/wasmtime-44.0.1/crates/environ/src/compile/frame_table.rs
/wasmtime-44.0.1/crates/environ/src/compile/module_environ.rs
/wasmtime-44.0.1/crates/environ/src/component/info.rs
/wasmtime-44.0.1/crates/environ/src/component/translate.rs
/wasmtime-44.0.1/crates/environ/src/fact/trampoline.rs
/wasmtime-44.0.1/crates/environ/src/frame_table.rs
/wasmtime-44.0.1/crates/fiber/src/lib.rs
/wasmtime-44.0.1/crates/fiber/src/nostd.rs
/wasmtime-44.0.1/crates/fiber/src/unix.rs
/wasmtime-44.0.1/crates/fuzzing/Cargo.toml
/wasmtime-44.0.1/crates/fuzzing/src/generators/config.rs
/wasmtime-44.0.1/crates/fuzzing/src/oracles.rs
/wasmtime-44.0.1/crates/fuzzing/src/oracles/memory.rs
/wasmtime-44.0.1/crates/gdbstub-component/src/target.rs
/wasmtime-44.0.1/crates/wasi-tls/Cargo.toml
/wasmtime-44.0.1/crates/wasi-tls/src/lib.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p2/host.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p2/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/host.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/tests/p2/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/tests/p3/mod.rs
/wasmtime-44.0.1/crates/wasmtime/src/config.rs
/wasmtime-44.0.1/crates/wasmtime/src/engine.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/func/typed.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/debug.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/pooling.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/pooling/decommit_queue.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/pooling/memory_pool.rs
/wasmtime-44.0.1/src/commands/objdump.rs
/wasmtime-44.0.1/src/commands/run.rs
debug.rs
pulley.rs
/wasmtime-44.0.1/tests/disas/aarch64-extr.wat
/wasmtime-44.0.1/tests/disas/basic-wat-test.wat
/wasmtime-44.0.1/tests/disas/bounds-check.wat
/wasmtime-44.0.1/tests/disas/debug-exceptions.wat
/wasmtime-44.0.1/tests/disas/debug.wat
/wasmtime-44.0.1/tests/disas/duplicate-loads-dynamic-memory.wat
/wasmtime-44.0.1/tests/disas/duplicate-loads-static-memory.wat
/wasmtime-44.0.1/tests/disas/dynamic-memory-no-spectre-access-same-index-different-offsets.wat
/wasmtime-44.0.1/tests/disas/dynamic-memory-yes-spectre-access-same-index-different-offsets.wat
/wasmtime-44.0.1/tests/disas/f32-load.wat
/wasmtime-44.0.1/tests/disas/f32-store.wat
/wasmtime-44.0.1/tests/disas/f64-load.wat
/wasmtime-44.0.1/tests/disas/f64-store.wat
/wasmtime-44.0.1/tests/disas/fibonacci.wat
/wasmtime-44.0.1/tests/disas/fixed-size-memory.wat
/wasmtime-44.0.1/tests/disas/globals.wat
/wasmtime-44.0.1/tests/disas/i32-load.wat
/wasmtime-44.0.1/tests/disas/i32-load16-s.wat
/wasmtime-44.0.1/tests/disas/i32-load16-u.wat
/wasmtime-44.0.1/tests/disas/i32-load8-s.wat
/wasmtime-44.0.1/tests/disas/i32-load8-u.wat
/wasmtime-44.0.1/tests/disas/i32-store.wat
/wasmtime-44.0.1/tests/disas/i32-store16.wat
/wasmtime-44.0.1/tests/disas/i32-store8.wat
/wasmtime-44.0.1/tests/disas/i64-load.wat
/wasmtime-44.0.1/tests/disas/i64-load16-s.wat
/wasmtime-44.0.1/tests/disas/i64-load16-u.wat
/wasmtime-44.0.1/tests/disas/i64-load8-s.wat
/wasmtime-44.0.1/tests/disas/i64-load8-u.wat
/wasmtime-44.0.1/tests/disas/i64-store.wat
/wasmtime-44.0.1/tests/disas/i64-store16.wat
/wasmtime-44.0.1/tests/disas/i64-store32.wat
/wasmtime-44.0.1/tests/disas/i64-store8.wat
/wasmtime-44.0.1/tests/disas/if-unreachable-else-params-2.wat
/wasmtime-44.0.1/tests/disas/if-unreachable-else-params.wat
/wasmtime-44.0.1/tests/disas/issue-12808.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_dynamic_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i32_index_0xffffffff_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_no_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_no_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_no_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_no_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_no_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_no_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i32_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0x1000_offset.wat
/wasmtime-44.0.1/tests/disas/load-store/load_store_static_kind_i64_index_0xffffffff_guard_yes_spectre_i8_access_0xffff0000_offset.wat
/wasmtime-44.0.1/tests/disas/memory-min-max-same.wat
/wasmtime-44.0.1/tests/disas/memory.wat
/wasmtime-44.0.1/tests/disas/non-fixed-size-memory.wat
/wasmtime-44.0.1/tests/disas/passive-data.wat
/wasmtime-44.0.1/tests/disas/pr2303.wat
/wasmtime-44.0.1/tests/disas/readonly-heap-base-pointer1.wat
/wasmtime-44.0.1/tests/disas/readonly-heap-base-pointer2.wat
/wasmtime-44.0.1/tests/disas/readonly-heap-base-pointer3.wat
/wasmtime-44.0.1/tests/disas/simd-store.wat
/wasmtime-44.0.1/tests/disas/winch/aarch64/memory_offsets/index.wat
/wasmtime-44.0.1/tests/disas/winch/x64/load/grow_load.wat
/wasmtime-44.0.1/tests/misc_testsuite/aarch64-extr.wast
/wasmtime-44.0.1/tests/misc_testsuite/big-memory-behavior.wast
/wasmtime-44.0.1/tests/misc_testsuite/component-model/strings.wast
/wasmtime-44.0.1/tests/misc_testsuite/winch/memory_offsets.wast
/wasmtime-44.0.1/winch/codegen/src/codegen/mod.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/address.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/asm.rs
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/masm.rs
958860e830-Mar-2026 Alex Crichton <[email protected]>

Fix overlap assertions in string transcoding (#12893)

Fixes an off-by-one assertion which is possible to happen when linear
memories are directly adjacent to each other. While an esoteric
situation,

Fix overlap assertions in string transcoding (#12893)

Fixes an off-by-one assertion which is possible to happen when linear
memories are directly adjacent to each other. While an esoteric
situation, it's technically possible as the added test shows.

Closes #12678

show more ...

439de7fb30-Mar-2026 Nick Fitzgerald <[email protected]>

Handle OOM in the rest of Wasmtime's non-component, -async, -compilation APIs (#12858)

* Handle OOM in more places in the public API

A bunch of random places:

* Add: `Trap::try_new` to handle OOM

Handle OOM in the rest of Wasmtime's non-component, -async, -compilation APIs (#12858)

* Handle OOM in more places in the public API

A bunch of random places:

* Add: `Trap::try_new` to handle OOM while creating traps
* Use: `TryVec` inside `Func::call_impl_do_call` and `wasm_val_raw_storage` to
hold the args and rets
* Add: `Instance::try_exports` for iterating over an instance's exports while
handling OOM
* `Linker:try_get`, like `Linker::get` but handling OOM
* `Linker:try_get_by_import`, like `Linker::get_by_import` but handling OOM
* Use `try_new` to box things in `SharedMemory::new`
* Use `TryVec` instead of `Vec` in our dynamic tables

* Add OOM tests for most of Wasmtime's public API

Excludes component-, async-, and compilation-related APIs.

* address review feedback

* fix test compilation

* fix c-api

show more ...


/wasmtime-44.0.1/cranelift/codegen/src/write.rs
/wasmtime-44.0.1/cranelift/frontend/src/frontend/safepoints.rs
/wasmtime-44.0.1/crates/c-api/src/linker.rs
/wasmtime-44.0.1/crates/core/src/alloc/vec.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/caller.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/func.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/global.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/instance.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/linker.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/main.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/memory.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/module_read.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/shared_memory.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/store.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/table.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/tag.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/types.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/val.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/instance.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/debug.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/externals.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/func.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/instance.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/linker.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/store.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/types.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/memory/shared_memory.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/table.rs
/wasmtime-44.0.1/crates/wast/src/wast.rs
linker.rs
2283e84f30-Mar-2026 Alex Crichton <[email protected]>

Fix a panic with a massive `max_wasm_stack` configured (#12869)

* Fix a panic with a massive `max_wasm_stack` configured

This commit fixes a panic through a `checked_add(...).unwrap()` which
can ha

Fix a panic with a massive `max_wasm_stack` configured (#12869)

* Fix a panic with a massive `max_wasm_stack` configured

This commit fixes a panic through a `checked_add(...).unwrap()` which
can happen when `Config::max_wasm_stack` is configured to be a very
large value. This is a mostly benign panic as it's unlikely this is
configured much in the wild, but nevertheless seems like a good issues
to fix regardless.

* Fix an overflow/OOM panic in pulley

prtest:full

* Fix CI

* Another CI fix

* Fix test on 32-bit

* Fix miri test

show more ...

425a601730-Mar-2026 Alex Crichton <[email protected]>

Fix a stacked borrows violation in futures/streams copy (#12872)

* Fix a stacked borrows violation in futures/streams copy

This commit fixes an issue in the copy implementation for
futures/streams

Fix a stacked borrows violation in futures/streams copy (#12872)

* Fix a stacked borrows violation in futures/streams copy

This commit fixes an issue in the copy implementation for
futures/streams related to component-model-async. Specifically the added
tests here tripped an error in Miri which is related to intra-component
copies and stacked borrows. This refactoring ends up using `copy_within`
for the intra-component case and `copy_to_nonoverlapping` for the
inter-component case to resolve this issue. This commit additionally
refactors the validation/checks to happen in one location instead of in
a few to ensure that all validation is done up-front in a shared manner.

* Fix CI

* Fix expected error message

* Review comments

show more ...

b860c2c630-Mar-2026 Alex Crichton <[email protected]>

Adjust behavior of 4gb memories with custom page sizes (#12884)

* Adjust behavior of 4gb memories with custom page sizes

This commit adjust what happens when a linear memory grows up to 4gb
large w

Adjust behavior of 4gb memories with custom page sizes (#12884)

* Adjust behavior of 4gb memories with custom page sizes

This commit adjust what happens when a linear memory grows up to 4gb
large when custom page sizes are used. This is an open question in the
upstream proposal at WebAssembly/custom-page-sizes#45 but without any
special handling a return value of -1 is ambiguous if it succeeded or
failed. For now eagerly trap memory operations reaching these conditions
while the upstream specification question is resolved.

* Fix CI

* Debug CI failure

prtest:full

* Fix 32-bit platforms

show more ...

37c4942830-Mar-2026 Alex Crichton <[email protected]>

Fix a panic in `Bytes{,Mut}` `StreamProducer` impls (#12878)

This commit fixes the logic of these `impl`s to match the `Vec`-style
blocks to relinquish the entire buffer to Wasmtime immediately. Thi

Fix a panic in `Bytes{,Mut}` `StreamProducer` impls (#12878)

This commit fixes the logic of these `impl`s to match the `Vec`-style
blocks to relinquish the entire buffer to Wasmtime immediately. This
fixes an issue where `split_off` is called with too large a value which
can panic.

show more ...

2ab5f54730-Mar-2026 Alex Crichton <[email protected]>

Fix a copy/paste typo in `StreamAny` (#12871)

When closing, close a stream, not a future. Fixes the test added here as
well.


/wasmtime-44.0.1/.github/workflows/main.yml
/wasmtime-44.0.1/Cargo.lock
/wasmtime-44.0.1/Cargo.toml
/wasmtime-44.0.1/ci/vendor-wit.sh
/wasmtime-44.0.1/cranelift/codegen/build.rs
/wasmtime-44.0.1/crates/component-macro/src/bindgen.rs
/wasmtime-44.0.1/crates/test-programs/artifacts/build.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p2_tls_sample_application.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_tls_sample_application.rs
/wasmtime-44.0.1/crates/test-programs/src/p3/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/Cargo.toml
/wasmtime-44.0.1/crates/wasi-tls/src/error.rs
/wasmtime-44.0.1/crates/wasi-tls/src/lib.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p2/bindings.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p2/host.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p2/io.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p2/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/bindings.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/host.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/util/closed.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/util/deferred.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/util/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/util/pipe.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/util/shared.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/util/tokio_streams.rs
/wasmtime-44.0.1/crates/wasi-tls/src/p3/wit/deps/tls/client.wit
/wasmtime-44.0.1/crates/wasi-tls/src/p3/wit/deps/tls/types.wit
/wasmtime-44.0.1/crates/wasi-tls/src/p3/wit/deps/tls/world.wit
/wasmtime-44.0.1/crates/wasi-tls/src/p3/wit/world.wit
/wasmtime-44.0.1/crates/wasi-tls/src/providers/nativetls.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/openssl.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/rustls.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/unsupported.rs
/wasmtime-44.0.1/crates/wasi-tls/tests/main.rs
/wasmtime-44.0.1/crates/wasi-tls/tests/p2/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/tests/p3/mod.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/concurrent/future_stream_any.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/concurrent/futures_and_streams/buffers.rs
/wasmtime-44.0.1/src/commands/run.rs
component_model/async_dynamic.rs
2cd4882830-Mar-2026 Nick Fitzgerald <[email protected]>

Fix `select` missing stack map declarations for GC refs (#12862)

* Fix `select` missing stack map declarations for GC refs

The `select` and typed `select` Wasm operators create new SSA values in
Cr

Fix `select` missing stack map declarations for GC refs (#12862)

* Fix `select` missing stack map declarations for GC refs

The `select` and typed `select` Wasm operators create new SSA values in
Cranelift but were not calling `declare_value_needs_stack_map` on the result
when the operand type is a GC reference. This meant the result, when kept on the
Wasm operand stack (not stored in a local variable), would not appear in stack
maps at subsequent safepoints.

If a GC collection occurred at such a safepoint, the collector would not see the
`select`'s result as a live GC root and could free the referenced object,
leading to use-after-free.

The fix checks `select`'s operand types for reference types and declares the
result as requiring inclusion in stack maps when needed.

* address review feedback and make needs-stack-maps decision more precise

* fix assertion

show more ...

e50d897b30-Mar-2026 Alex Crichton <[email protected]>

Add `bulk_memory` to wast configuration (#12883)

Allows enabling/disabling this wasm proposal on a per-test basis.


/wasmtime-44.0.1/Cargo.lock
/wasmtime-44.0.1/Cargo.toml
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/lower.isle
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/x64/conditional-values.clif
/wasmtime-44.0.1/crates/environ/src/address_map.rs
/wasmtime-44.0.1/crates/environ/src/compile/address_map.rs
/wasmtime-44.0.1/crates/environ/src/compile/frame_table.rs
/wasmtime-44.0.1/crates/environ/src/compile/stack_maps.rs
/wasmtime-44.0.1/crates/environ/src/compile/trap_encoding.rs
/wasmtime-44.0.1/crates/environ/src/frame_table.rs
/wasmtime-44.0.1/crates/environ/src/stack_map.rs
/wasmtime-44.0.1/crates/environ/src/trap_encoding.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/config.rs
/wasmtime-44.0.1/crates/fuzzing/src/oracles/component_api.rs
/wasmtime-44.0.1/crates/test-util/src/wasmtime_wast.rs
/wasmtime-44.0.1/crates/test-util/src/wast.rs
/wasmtime-44.0.1/crates/unwinder/src/exception_table.rs
/wasmtime-44.0.1/crates/wasi-preview1-component-adapter/build.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/code_memory.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/native_debug.rs
/wasmtime-44.0.1/supply-chain/audits.toml
/wasmtime-44.0.1/supply-chain/config.toml
/wasmtime-44.0.1/supply-chain/imports.lock
fuel.rs
func.rs
/wasmtime-44.0.1/tests/misc_testsuite/component-model/async/many-params-with-retptr.wast
/wasmtime-44.0.1/tests/misc_testsuite/custom-page-sizes/custom-page-sizes.wast
/wasmtime-44.0.1/tests/misc_testsuite/elem-ref-null.wast
/wasmtime-44.0.1/tests/misc_testsuite/elem_drop.wast
/wasmtime-44.0.1/tests/misc_testsuite/externref-table-dropped-segment-issue-8281.wast
/wasmtime-44.0.1/tests/misc_testsuite/function-references/instance.wast
/wasmtime-44.0.1/tests/misc_testsuite/function-references/table_grow.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/array-init-data.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/array-new-data.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/array-new-elem.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/arrays-of-different-types.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/func-refs-in-gc-heap.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/i31ref-tables.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/issue-10397.wast
/wasmtime-44.0.1/tests/misc_testsuite/gc/issue-10459.wast
/wasmtime-44.0.1/tests/misc_testsuite/imported-memory-copy.wast
/wasmtime-44.0.1/tests/misc_testsuite/memory-copy.wast
/wasmtime-44.0.1/tests/misc_testsuite/memory64/bounds.wast
/wasmtime-44.0.1/tests/misc_testsuite/memory64/codegen.wast
/wasmtime-44.0.1/tests/misc_testsuite/memory64/multi-memory.wast
/wasmtime-44.0.1/tests/misc_testsuite/multi-memory/simple.wast
/wasmtime-44.0.1/tests/misc_testsuite/partial-init-memory-segment.wast
/wasmtime-44.0.1/tests/misc_testsuite/partial-init-table-segment.wast
/wasmtime-44.0.1/tests/misc_testsuite/simd/spillslot-size-fuzzbug.wast
/wasmtime-44.0.1/tests/misc_testsuite/table_copy.wast
/wasmtime-44.0.1/tests/misc_testsuite/table_copy_on_imported_tables.wast
/wasmtime-44.0.1/tests/misc_testsuite/winch/issue-424666628.wast
856fb27227-Mar-2026 Chris Fallin <[email protected]>

Debugging: add integration test with LLDB and some minor tweaks. (#12856)

This PR adds:

- An integration-test that runs LLDB against the Wasmtime CLI to
verify basic debugging functionality, simi

Debugging: add integration test with LLDB and some minor tweaks. (#12856)

This PR adds:

- An integration-test that runs LLDB against the Wasmtime CLI to
verify basic debugging functionality, similar to the existing
native-debug tests.

- A CI job that runs the above in CI.

- Some minor tweaks to the gdbstub debugger design:
- Rather than the initial single-step to get to the first Wasm
instruction where module(s) will be instantiated into the store
and visible to the debugger, we pre-register modules with the
store eagerly. This avoids the slightly hacky flow and also is a
preparation step for `wasmtime serve` debugging, where we can't
single-step into execution eagerly (because execution doesn't
start at all until an HTTP request arrives).
- Add a separate message-printing path for "debugger info messages",
allowing us to print the "debugger is listening on <PORT>" message
without inheriting stderr for the whole debugger component
environment. This message is necessary for the above integration
test (it parses the message to determine when the debuggee is ready).

show more ...


/wasmtime-44.0.1/.github/workflows/main.yml
/wasmtime-44.0.1/ADOPTERS.md
/wasmtime-44.0.1/Cargo.lock
/wasmtime-44.0.1/Cargo.toml
/wasmtime-44.0.1/ci/build-release-artifacts.sh
/wasmtime-44.0.1/cranelift/bforest/src/map.rs
/wasmtime-44.0.1/cranelift/codegen/build.rs
/wasmtime-44.0.1/cranelift/codegen/meta/src/shared/settings.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/buffer.rs
/wasmtime-44.0.1/cranelift/codegen/src/opts/cprop.isle
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/cprop.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/isa/riscv64/issue-12811.clif
/wasmtime-44.0.1/cranelift/isle/veri/veri_engine/src/annotations.rs
/wasmtime-44.0.1/cranelift/isle/veri/veri_engine/src/solver.rs
/wasmtime-44.0.1/cranelift/object/Cargo.toml
/wasmtime-44.0.1/cranelift/object/src/backend.rs
/wasmtime-44.0.1/cranelift/object/tests/basic.rs
/wasmtime-44.0.1/crates/core/src/alloc/vec.rs
/wasmtime-44.0.1/crates/cranelift/src/func_environ/stack_switching/instructions.rs
/wasmtime-44.0.1/crates/debugger/src/host.rs
/wasmtime-44.0.1/crates/debugger/wit/world.wit
/wasmtime-44.0.1/crates/environ/src/collections/btree_map.rs
/wasmtime-44.0.1/crates/environ/src/collections/hash_map.rs
/wasmtime-44.0.1/crates/environ/src/prelude.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/component_async.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/mutator.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/ops.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/types.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/func.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/global.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/instance.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/instance_pre.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/main.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/memory.rs
/wasmtime-44.0.1/crates/fuzzing/tests/oom/table.rs
/wasmtime-44.0.1/crates/gdbstub-component/Cargo.toml
/wasmtime-44.0.1/crates/gdbstub-component/artifact/Cargo.toml
/wasmtime-44.0.1/crates/gdbstub-component/artifact/build.rs
/wasmtime-44.0.1/crates/gdbstub-component/artifact/src/lib.rs
/wasmtime-44.0.1/crates/gdbstub-component/src/addr.rs
/wasmtime-44.0.1/crates/gdbstub-component/src/api.rs
/wasmtime-44.0.1/crates/gdbstub-component/src/lib.rs
/wasmtime-44.0.1/crates/gdbstub-component/src/target.rs
/wasmtime-44.0.1/crates/test-programs/artifacts/build.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/guest_debug_fib.c
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_streams.rs
/wasmtime-44.0.1/crates/wasi/src/p2/pipe.rs
/wasmtime-44.0.1/crates/wasi/src/p3/sockets/host/types/tcp.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/code.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/component.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/func/typed.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/instance.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/values.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/func.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/instance.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/linker.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/module.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/module/registry.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/store.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/store/func_refs.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/trampoline/global.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/trampoline/memory.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/trampoline/table.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/trampoline/tag.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/cow.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/on_demand.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/pooling.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/memory.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/memory/mmap.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/table.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/traphandlers.rs
/wasmtime-44.0.1/examples/min-platform/embedding/src/wasi.rs
/wasmtime-44.0.1/pulley/src/interp.rs
/wasmtime-44.0.1/scripts/publish.rs
/wasmtime-44.0.1/src/commands/run.rs
/wasmtime-44.0.1/src/commands/serve.rs
/wasmtime-44.0.1/src/commands/wizer.rs
/wasmtime-44.0.1/src/common.rs
/wasmtime-44.0.1/supply-chain/audits.toml
/wasmtime-44.0.1/supply-chain/config.toml
/wasmtime-44.0.1/supply-chain/imports.lock
guest_debug/mod.rs
main.rs
/wasmtime-44.0.1/tests/misc_testsuite/issue1809.wast
ab78bd8222-Mar-2026 Ho Kim <[email protected]>

fix: correct various typos (#12807)

Signed-off-by: Ho Kim <[email protected]>


/wasmtime-44.0.1/ci/vendor-c-api-headers.sh
/wasmtime-44.0.1/cranelift/assembler-x64/meta/src/generate/format.rs
/wasmtime-44.0.1/cranelift/bforest/src/map.rs
/wasmtime-44.0.1/cranelift/bforest/src/set.rs
/wasmtime-44.0.1/cranelift/codegen/src/egraph/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/inline.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/inst/imms.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/pulley_shared/abi.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/pulley_shared/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/pulley_shared/inst/emit.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/inst_vector.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/lower/isle.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst/emit.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst/mod.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/buffer.rs
/wasmtime-44.0.1/cranelift/codegen/src/prelude_opt.isle
/wasmtime-44.0.1/cranelift/filetests/filetests/verifier/exceptions.clif
/wasmtime-44.0.1/cranelift/isle/isle/src/codegen.rs
/wasmtime-44.0.1/cranelift/isle/veri/veri_engine/examples/broken/broken_fits_in_16_with_imm_rotl_to_rotr.isle
/wasmtime-44.0.1/cranelift/isle/veri/veri_engine/examples/x86/amode_add_shl.isle
/wasmtime-44.0.1/cranelift/isle/veri/veri_engine/examples/x86/amode_add_uextend_shl.isle
/wasmtime-44.0.1/cranelift/isle/veri/veri_engine/src/solver.rs
/wasmtime-44.0.1/crates/c-api/doxygen.conf.in
/wasmtime-44.0.1/crates/c-api/include/doc-wasm.h
/wasmtime-44.0.1/crates/c-api/include/wasm.h
/wasmtime-44.0.1/crates/c-api/include/wasm.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/component/linker.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/component/val.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/extern.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/tag.hh
/wasmtime-44.0.1/crates/c-api/src/types/func.rs
/wasmtime-44.0.1/crates/c-api/src/types/tag.rs
/wasmtime-44.0.1/crates/c-api/tests/tag_type.cc
/wasmtime-44.0.1/crates/cli-flags/src/lib.rs
/wasmtime-44.0.1/crates/core/src/alloc/boxed.rs
/wasmtime-44.0.1/crates/core/src/alloc/try_collect.rs
/wasmtime-44.0.1/crates/core/src/error/error.rs
/wasmtime-44.0.1/crates/cranelift/src/translate/code_translator.rs
/wasmtime-44.0.1/crates/debugger/src/lib.rs
/wasmtime-44.0.1/crates/environ/src/component/translate/inline.rs
/wasmtime-44.0.1/crates/environ/src/graphs/scc.rs
/wasmtime-44.0.1/crates/fiber/src/unix.rs
/wasmtime-44.0.1/crates/fuzzing/src/generators/gc_ops/types.rs
/wasmtime-44.0.1/crates/fuzzing/src/oom.rs
/wasmtime-44.0.1/crates/fuzzing/src/oracles/stacks.rs
/wasmtime-44.0.1/crates/test-macros/src/wasmtime_test.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/async_cancel_caller.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_big_random_buf.rs
/wasmtime-44.0.1/crates/test-util/src/component_fuzz.rs
/wasmtime-44.0.1/crates/wasi-http/src/handler.rs
/wasmtime-44.0.1/crates/wasi-io/src/impls.rs
/wasmtime-44.0.1/crates/wasi/tests/all/p3/mod.rs
/wasmtime-44.0.1/crates/wasmtime/src/config.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/code_memory.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/concurrent/futures_and_streams.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/debug.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/externals/table.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/store.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/instance/allocator/pooling/memory_pool.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/stack_switching.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/sys/unix/signals.rs
/wasmtime-44.0.1/crates/wiggle/tests/wasi.rs
/wasmtime-44.0.1/crates/wizer/README.md
/wasmtime-44.0.1/crates/wizer/src/component/wasmtime.rs
/wasmtime-44.0.1/crates/wizer/src/wasmtime.rs
/wasmtime-44.0.1/pulley/src/disas.rs
/wasmtime-44.0.1/pulley/src/interp.rs
/wasmtime-44.0.1/pulley/src/regs.rs
/wasmtime-44.0.1/src/commands/run.rs
/wasmtime-44.0.1/supply-chain/audits.toml
iloop.rs
/wasmtime-44.0.1/tests/disas/issue-12808.wat
/wasmtime-44.0.1/tests/disas/stack-switching/resume-suspend-data-passing.wat
/wasmtime-44.0.1/tests/misc_testsuite/issue1809.wast
/wasmtime-44.0.1/winch/README.md
/wasmtime-44.0.1/winch/codegen/src/isa/aarch64/masm.rs
4834727b19-Mar-2026 Chris Fallin <[email protected]>

Debugging: add debug-tags to instrumented trap sites so we actually get PCs on traps. (#12802)

This was not exposed earlier by (i) lack of handling of trap events in
the initial version of the gdbst

Debugging: add debug-tags to instrumented trap sites so we actually get PCs on traps. (#12802)

This was not exposed earlier by (i) lack of handling of trap events in
the initial version of the gdbstub component in #12771, and (ii) lack
of asserting some value for the PC on the top frame in the debug-event
test for traps. We got the PC for the last opcode in the function body
previously because, with no debug tags on the trapping path that calls
raise() (sunk to the bottom of the machine code body as cold code), we
scanned backward for the last tag metadata and found that
instead. Adding metadata according to the current source location when
emitting traps fixes this for all trapping events.

show more ...

97361cce19-Mar-2026 Chris Fallin <[email protected]>

Debugging: allow breakpoints to be set at "function start" by slipping forward to first opcode. (#12791)

LLDB, when instructed to `break main`, looks at the DWARF metadata for
`main` and finds its P

Debugging: allow breakpoints to be set at "function start" by slipping forward to first opcode. (#12791)

LLDB, when instructed to `break main`, looks at the DWARF metadata for
`main` and finds its PC range, then sets a breakpoint at the first
PC. This is reasonable behavior for native ISAs! That PC better be a
real instruction!

On Wasm, however, (i) toolchains typically emit the PC range as
*including* the *locals count*, a leb128 value that precedes the first
opcode and any types of locals; (ii) our gdbstub component that
bridges LLDB to our debug APIs (#12771) only supports *exact* PCs for
breakpoints, so when presented with a PC that does not actually point
to an opcode, setting the breakpoint is effectively a no-op. There
will always be a difference of at least 1 byte between the
start-of-function offset and first-opcode offset (for a leb128 of `0`
for no locals), so a breakpoint "on" a function will never work.

I initially prototyped a fix that adds a sequence point at the start
of every function (which, again, is *guaranteed* to be distinct from
the first opcode), and the branch is [here], but I didn't like the
developer experience: this meant that when a breakpoint at a function
start fired, LLDB had a weird interstitial state where no line-number
applied.

The behavior that would be closer in line with "native" debug
expectations is that we add a bit of fuzzy-ish matching: setting a
breakpoint at function start should break at the first opcode, even if
that's a few (or many) bytes later. There are two options here:
special-case function start, or generally change the semantics of our
breakpoint API so that "add breakpoint at `pc`" means "add breakpoint
at next opcode at or after `pc`". I opted for the latter in this PR
because it's more consistent.

The logic is a little subtle because we're effectively defining an
n-to-1 mapping with this "snap-to-next" behavior, so we have to
refcount each breakpoint (consider setting a breakpoint at function
start *and* at the first opcode, then deleting them, one at a time). I
believe the result is self-consistent, even if a little more
complicated now. And, importantly, with #12771 on top of this change,
it produces the expected behavior for the (very simple!) debug script
"`b main`; `continue`".

[here]: https://github.com/cfallin/wasmtime/tree/breakpoint-at-func-start

show more ...

75404ec917-Mar-2026 Alex Crichton <[email protected]>

wasip3: Limit randomness instead of trapping (#12794)

This updates the behavior of the randomness-generating interfaces in
WASIp3 to account for recent spec changes, notably the ability for the
gues

wasip3: Limit randomness instead of trapping (#12794)

This updates the behavior of the randomness-generating interfaces in
WASIp3 to account for recent spec changes, notably the ability for the
guest to receive less random bytes than requested to limit allocations
the host is forced to do.

cc WebAssembly/WASI#901

show more ...

a1a74d3a17-Mar-2026 Bailey Hayes <[email protected]>

WASIP3 HTTP return error for TooManyFields/TotalSizeTooBig (#12788)

* WASIP3 HTTP return error for TooManyFields/TotalSizeTooBig

Return new error from

* WASIP3 HTTP split tests between p2/p3

p2 c

WASIP3 HTTP return error for TooManyFields/TotalSizeTooBig (#12788)

* WASIP3 HTTP return error for TooManyFields/TotalSizeTooBig

Return new error from

* WASIP3 HTTP split tests between p2/p3

p2 cases unchanged (they trap before break is reached).

p3 cases assert the guest exited successfully and
that it printed "error received", confirming the limit was actually enforced.

show more ...


/wasmtime-44.0.1/.github/workflows/main.yml
/wasmtime-44.0.1/Cargo.lock
/wasmtime-44.0.1/Cargo.toml
/wasmtime-44.0.1/ci/run-tests.py
/wasmtime-44.0.1/ci/vendor-wit.sh
/wasmtime-44.0.1/cranelift/codegen/src/isle_prelude.rs
/wasmtime-44.0.1/cranelift/codegen/src/machinst/lower.rs
/wasmtime-44.0.1/cranelift/codegen/src/opts/bitops.isle
/wasmtime-44.0.1/cranelift/codegen/src/opts/cprop.isle
/wasmtime-44.0.1/cranelift/codegen/src/opts/shifts.isle
/wasmtime-44.0.1/cranelift/codegen/src/prelude.isle
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/bitops.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/cprop.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/icmp-parameterized.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/egraph/shifts.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/bitops.clif
/wasmtime-44.0.1/cranelift/filetests/filetests/runtests/rotr.clif
/wasmtime-44.0.1/crates/environ/src/component/types_builder.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p2_cli_http_headers.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_cli_many_tasks.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_http_middleware.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_http_middleware_with_chain.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_readdir.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_ip_name_lookup.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_bind.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_connect.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_listen.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_states.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_streams.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_udp_connect.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_udp_states.rs
/wasmtime-44.0.1/crates/test-programs/src/p3/mod.rs
/wasmtime-44.0.1/crates/wasi-http/src/p3/mod.rs
/wasmtime-44.0.1/crates/wasi-http/src/p3/wit/deps/cli.wit
/wasmtime-44.0.1/crates/wasi-http/src/p3/wit/deps/clocks.wit
/wasmtime-44.0.1/crates/wasi-http/src/p3/wit/deps/filesystem.wit
/wasmtime-44.0.1/crates/wasi-http/src/p3/wit/deps/http.wit
/wasmtime-44.0.1/crates/wasi-http/src/p3/wit/deps/random.wit
/wasmtime-44.0.1/crates/wasi-http/src/p3/wit/deps/sockets.wit
/wasmtime-44.0.1/crates/wasi-http/src/p3/wit/world.wit
/wasmtime-44.0.1/crates/wasi-http/tests/all/p3/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/Cargo.toml
/wasmtime-44.0.1/crates/wasi-tls/src/lib.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/mod.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/nativetls.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/openssl.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/rustls.rs
/wasmtime-44.0.1/crates/wasi-tls/src/providers/unsupported.rs
/wasmtime-44.0.1/crates/wasi-tls/tests/main.rs
/wasmtime-44.0.1/crates/wasi/src/p3/bindings.rs
/wasmtime-44.0.1/crates/wasi/src/p3/filesystem/mod.rs
/wasmtime-44.0.1/crates/wasi/src/p3/sockets/conv.rs
/wasmtime-44.0.1/crates/wasi/src/p3/wit/deps/cli.wit
/wasmtime-44.0.1/crates/wasi/src/p3/wit/deps/clocks.wit
/wasmtime-44.0.1/crates/wasi/src/p3/wit/deps/filesystem.wit
/wasmtime-44.0.1/crates/wasi/src/p3/wit/deps/random.wit
/wasmtime-44.0.1/crates/wasi/src/p3/wit/deps/sockets.wit
/wasmtime-44.0.1/scripts/publish.rs
/wasmtime-44.0.1/supply-chain/config.toml
cli_tests.rs
cf13898513-Mar-2026 Paul Osborne <[email protected]>

Include core instance sizes in component_instance_size limit (#12772)

* Include core instance sizes in component_instance_size limit

There exist several knobs for limiting the memory that might be

Include core instance sizes in component_instance_size limit (#12772)

* Include core instance sizes in component_instance_size limit

There exist several knobs for limiting the memory that might be consumed
for metadata for components. For core module instances within a
component, the two that previously existed to control metadata
allocations have been:
- A: max_core_instances_per_component
- B: component_instance_size

These allow for an embedder to set an upper bound on memory used by a
component's instances to A * B. This value could be quite large for
some systems and it would be nice to be able to set a cap on the total
memory that might be used for metadata across all instances while still
allowing for a greater number of instances with the potential for a
subset of those instances to be relatively large.

To allow for aggregate control over memory used within the runtime
for componenets, the existing `max_component_instance_size` limit
is extended to consider both the `VMComponentCtx` size as well as
the aggregate size of all core instances in the component.

* Fix err msg checks for component_instance_size_limit test

* Miri ignore component_core_instances_aggregate_size

show more ...

133a0ef413-Mar-2026 Chris Fallin <[email protected]>

Debugging: add the debug-main world. (#12756)

* Debugging: add the debug-main world.

This PR "draws the rest of the owl" for the debug-main
world (bytecodealliance/rfcs#45). This includes a WIT wor

Debugging: add the debug-main world. (#12756)

* Debugging: add the debug-main world.

This PR "draws the rest of the owl" for the debug-main
world (bytecodealliance/rfcs#45). This includes a WIT world that hosts
debug components that have access to "host debug powers" via a
debugging API, and the ability to load such a debug-component and give
it control of the main program as a debuggee when using `wasmtime
run`.

The WIT is namespaced to `bytecodealliance:wasmtime` and is slightly
aspirational in places: for example, the host does not yet implement
injection of early return values or exception-throws. I intend to fill
out a series of TODO issues once this all lands to track followup
("post-MVP") work.

This PR does not include any debug components. I separately have a
gdbstub component, with which I tested and co-developed this host-side
implementation. My plan is to land it in a followup PR as a component
that will be embedded in/shipped with the Wasmtime CLI and available
under an easy-to-use CLI option. Once we have that gdbstub component,
we can also implement end-to-end integration tests that boot up LLDB
and run through an expected interaction. (Separately, those
integration tests will require a release of wasi-sdk to ship an LLDB
binary that we can use.) As such, there are no real tests in this PR:
interesting behaviors only really occur with a full end-to-end flow.

The integration with the CLI is a little awkward (we internally build
another `wasmtime run` command that invokes the debug component, and
tie it together with the debuggee via a special `invoke_debugger` API;
this seemed less bad than reworking all of the WASI setup to be more
reusable). Happy to take more ideas here.

* Review feedback.

* Review feedback.

* Review feedback: update vendor-wit.sh.

* Review feedback: -Ddebugger-arg= -> -Darg=.

* Review feedback.

* Review feedback.

* Review feedback: factor host.rs into several submodules.

* Review feedback: rename Debugger to Debuggee on host side.

* Review feedback: split inherit_stdin_stdout, and add corresponding options for the debug component.

* Review feedback.

* Review feedback.

* Add simple debug-component tests.

* Add wasm32-wasip2 target in a few places in CI

* Cargo vets for wstd dependency.

* Add wasm32-wasip2 in more places

* fix debug-component test dependence on componentization byte offsets

* Review feedback.

* Fix cancel-safety of EventFuture.

* Fix: Interrupted events should only occur after interrupt(), not on every epoch yield.

* Review feedback.

* Review feedback: strip down WASI imports in debugger world.

* fold debugger test component back into wasip1 + adapter test artifact compilation flow

show more ...


/wasmtime-44.0.1/.github/actions/build-adapter-provider/action.yml
/wasmtime-44.0.1/.github/actions/install-rust/action.yml
/wasmtime-44.0.1/.github/workflows/main.yml
/wasmtime-44.0.1/Cargo.lock
/wasmtime-44.0.1/Cargo.toml
/wasmtime-44.0.1/ci/vendor-wit.sh
/wasmtime-44.0.1/cranelift/codegen/meta/src/gen_isle.rs
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/aarch64/lower_dynamic_neon.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/pulley_shared/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/pulley_shared/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/inst_vector.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/riscv64/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/s390x/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/inst.isle
/wasmtime-44.0.1/cranelift/codegen/src/isa/x64/lower.isle
/wasmtime-44.0.1/cranelift/codegen/src/machinst/isle.rs
/wasmtime-44.0.1/cranelift/codegen/src/prelude_lower.isle
/wasmtime-44.0.1/crates/c-api/include/wasmtime.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/tag.h
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/extern.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/func.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/tag.hh
/wasmtime-44.0.1/crates/c-api/include/wasmtime/types/val.hh
/wasmtime-44.0.1/crates/c-api/src/types.rs
/wasmtime-44.0.1/crates/c-api/src/types/extern.rs
/wasmtime-44.0.1/crates/c-api/src/types/tag.rs
/wasmtime-44.0.1/crates/c-api/tests/CMakeLists.txt
/wasmtime-44.0.1/crates/c-api/tests/tag_type.cc
/wasmtime-44.0.1/crates/cli-flags/src/lib.rs
/wasmtime-44.0.1/crates/cli-flags/src/opt.rs
/wasmtime-44.0.1/crates/debugger/Cargo.toml
/wasmtime-44.0.1/crates/debugger/src/host.rs
/wasmtime-44.0.1/crates/debugger/src/host/api.rs
/wasmtime-44.0.1/crates/debugger/src/host/bindings.rs
/wasmtime-44.0.1/crates/debugger/src/host/opaque.rs
/wasmtime-44.0.1/crates/debugger/src/lib.rs
/wasmtime-44.0.1/crates/debugger/wit/deps/cli.wit
/wasmtime-44.0.1/crates/debugger/wit/deps/clocks.wit
/wasmtime-44.0.1/crates/debugger/wit/deps/filesystem.wit
/wasmtime-44.0.1/crates/debugger/wit/deps/io.wit
/wasmtime-44.0.1/crates/debugger/wit/deps/random.wit
/wasmtime-44.0.1/crates/debugger/wit/deps/sockets.wit
/wasmtime-44.0.1/crates/debugger/wit/world.wit
/wasmtime-44.0.1/crates/test-programs/Cargo.toml
/wasmtime-44.0.1/crates/test-programs/artifacts/build.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/debugger_component.rs
/wasmtime-44.0.1/crates/test-programs/src/bin/debugger_debuggee_loop.wat
/wasmtime-44.0.1/crates/test-programs/src/bin/debugger_debuggee_simple.wat
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/concurrent/futures_and_streams.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/func/options.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/func/typed.rs
/wasmtime-44.0.1/crates/wasmtime/src/runtime/component/values.rs
/wasmtime-44.0.1/src/commands/run.rs
/wasmtime-44.0.1/src/common.rs
/wasmtime-44.0.1/supply-chain/audits.toml
debug_component.rs
main.rs
/wasmtime-44.0.1/tests/misc_testsuite/component-model/async/streams-massive-send.wast
2264f72a11-Mar-2026 Alex Crichton <[email protected]>

Enable limiting wasip3 resource limits (#12761)

* Enable limiting wasip3 resource limits

This commit adds a new `Store::concurrent_resource_table` method which
enables getting a handle to the under

Enable limiting wasip3 resource limits (#12761)

* Enable limiting wasip3 resource limits

This commit adds a new `Store::concurrent_resource_table` method which
enables getting a handle to the underlying `ResourceTable` used by the
concurrent implementation of component-model-async. This can in turn be
used to set the max capacity on the table and limit the guest usage of
the table.

Closes #11552

* Adjust features

* Fix imports

show more ...

511638f510-Mar-2026 Alex Crichton <[email protected]>

Refactor `wasi:http` headers' host representation (#12754)

* Refactor `wasi:http` headers' host representation

This commit is a follow-on/extension of #12748 and extends the changes
made for WASIp2

Refactor `wasi:http` headers' host representation (#12754)

* Refactor `wasi:http` headers' host representation

This commit is a follow-on/extension of #12748 and extends the changes
made for WASIp2 headers in #12652 to the WASIp3 implementation as well.
This is done through a number of refactorings to make the WASIp2 and
WASIp3 implementations more similar in terms of how they represent
headers. Changes here are:

* `FieldMap` now has its own dedicated module at the crate root instead
of intermingling with other WASIp2 types.
* `FieldMap` is now internally-`Arc`'d and is cheaply clonable.
`FieldMap` itself now tracks whether it's mutable or immutable (WASI
semantics) and doesn't need different wrappers in WASIp2 and WASIp3.
* Creation of an immutable `FieldMap` can be done without needing a size
limit. Flagging a `FieldMap` as mutable, however, requires a size limit.
* `FieldMap::set` was added to be a bit more efficient w.r.t. clones.
* `FieldMapError` is a new error type that covers all of the possible
error modes of operating with a `FieldMap`. Conversions from this to
WASIp{2,3} `header-error` types are now implemented as well.
* WASIp2 now flags `header-error` as a trappable-error-type, allowing
the use of `?` in implementing header functions (like WASIp3).
* Much of WASIp2's header implementation was refactored with `?`, moving
methods around, shuffling where headers are made vs `FieldMap`, some
minor idioms, etc.
* WASIp3 no longer uses `MaybeMutable` for headers and instead uses
`FieldMap` directly.

cc #12674

* Clippy warnings

show more ...

9593a3a110-Mar-2026 Chris Fallin <[email protected]>

Debugging: PC in a frame at a callsite should be the return address, not the call. (#12750)

* Debugging: PC in a frame at a callsite should be the return address, not the call.

In working out why a

Debugging: PC in a frame at a callsite should be the return address, not the call. (#12750)

* Debugging: PC in a frame at a callsite should be the return address, not the call.

In working out why a `finish` command in
LLDB-attached-to-Wasmtime-via-gdbstub wasn't working, I discovered that
our current debugging APIs, when presenting info from a frame suspended
at a callsite up the stack, present the current PC as *at* the call
instruction, rather than *past it* (at the return address). The latter
is conventional on all real ISAs, and is hence what the debugger
expects.

This PR makes the most straightforward fix: the debug tuple attached to
the call, and hence the metadata read out by the debug frame walker, now
encodes the PC of the next opcode. This is sufficient to fix `finish`
within LLDB.

An alternative I considered, and prototyped, is also worth mentioning:
one might see the argument for allowing a debugger to see the callsite
that invoked the next frame, and separately, see the return address
(i.e., both pieces of information are useful). In [an alternative
branch], there is a new table in the debug frame info metadata giving
the size of each callsite, so the debug frame-handle API can present a
`get-return-address` accessor on a `frame` resource alongside `get-pc`.
Ultimately I opted not to go with this because it has more overhead and
complexity and a *concrete* use-case wasn't forthcoming to me, but I'm
happy to reconsider if someone wants that instead.

[an alternative branch]: https://github.com/cfallin/wasmtime/tree/debugger-return-address-separate

* Fix return PC in Pulley test.

* Fix disas test.

show more ...

12345678910>>...34