Commit 5acab94
committed
Reuse code for Wasm linear memories for GC heaps
Instead of bespoke code paths and structures for Wasm GC, this commit makes it
so that we now reuse VM structures like `VMMemoryDefinition` and bounds-checking
logic. Notably, we also reuse all the associated bounds-checking optimizations
and, when possible, virtual-memory techniques to completely elide them.
Fixes bytecodealliance#93501 parent 865d1bb commit 5acab94
File tree
777 files changed
+6288
-5617
lines changed- cranelift/codegen/src/isa/x64
- inst
- crates
- cranelift/src
- compiler
- func_environ/gc
- enabled
- translate
- environ/src
- compile
- component
- wasmtime/src
- runtime
- gc/enabled
- module
- store
- trampoline
- vm
- gc
- enabled
- instance
- allocator
- pooling
- memory
- winch/src
- tests
- all
- disas
- gc
- drc
- null
- load-store
- aarch64
- riscv64
- s390x
- x64
- pulley
- winch
- aarch64
- call_indirect
- load
- store
- x64
- atomic
- fence
- load
- rmw
- add
- and
- cmpxchg
- or
- sub
- xchg
- xor
- store
- call_indirect
- fuel
- load
- store
- table
- v128_ops
- load_lane
- store_lane
- misc_testsuite
- winch/codegen/src/codegen
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
777 files changed
+6288
-5617
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
134 | | - | |
| 134 | + | |
| 135 | + | |
135 | 136 | | |
136 | 137 | | |
137 | 138 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
154 | 154 | | |
155 | 155 | | |
156 | 156 | | |
157 | | - | |
| 157 | + | |
158 | 158 | | |
159 | 159 | | |
160 | 160 | | |
| |||
0 commit comments