![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <wasm-load-elimination-reducer.h>
Public Types | |
| enum class | EntriesWithOffsets { kInvalidate , kKeep } |
| using | MemoryAddress = WasmMemoryAddress |
Public Types inherited from v8::internal::compiler::turboshaft::ChangeTrackingSnapshotTable< WasmMemoryContentTable, OpIndex, KeyData > | |
| using | Super |
| using | Key |
Public Types inherited from v8::internal::compiler::turboshaft::SnapshotTable< OpIndex, KeyData > | |
| using | TableEntry |
| using | Key |
Public Member Functions | |
| WasmMemoryContentTable (PipelineData *data, Zone *zone, SparseOpIndexSnapshotTable< bool > &non_aliasing_objects, FixedOpIndexSidetable< OpIndex > &replacements, Graph &graph) | |
| void | OnNewKey (Key key, OpIndex value) |
| void | OnValueChange (Key key, OpIndex old_value, OpIndex new_value) |
| bool | TypesUnrelated (wasm::ModuleTypeIndex type1, wasm::ModuleTypeIndex type2) |
| void | Invalidate (const StructSetOp &set) |
| template<EntriesWithOffsets offsets = EntriesWithOffsets::kInvalidate> | |
| void | InvalidateMaybeAliasing () |
| int | field_offset (const wasm::StructType *type, int field_index) |
| OpIndex | Find (const StructGetOp &get) |
| bool | HasValueWithIncorrectMutability (const StructSetOp &set) |
| OpIndex | FindLoadLike (OpIndex op_idx, int offset_sentinel) |
| OpIndex | FindImpl (OpIndex object, int offset, wasm::ModuleTypeIndex type_index, uint8_t size, bool mutability, OptionalOpIndex index=OptionalOpIndex::Nullopt()) |
| void | Insert (const StructSetOp &set) |
| void | Insert (const StructGetOp &get, OpIndex get_idx) |
| void | InsertLoadLike (OpIndex base_idx, int offset_sentinel, OpIndex value_idx) |
| OpIndex | ResolveBase (OpIndex base) |
| void | AddKeyInBaseOffsetMaps (Key key) |
| void | RemoveKeyFromBaseOffsetMaps (Key key) |
Public Member Functions inherited from v8::internal::compiler::turboshaft::ChangeTrackingSnapshotTable< WasmMemoryContentTable, OpIndex, KeyData > | |
| void | StartNewSnapshot (base::Vector< const Snapshot > predecessors) |
| void | StartNewSnapshot (std::initializer_list< Snapshot > predecessors={}) |
| void | StartNewSnapshot (Snapshot parent) |
| void | StartNewSnapshot (base::Vector< const Snapshot > predecessors, const MergeFun &merge_fun) |
| void | StartNewSnapshot (std::initializer_list< Snapshot > predecessors, const MergeFun &merge_fun) |
| void | Set (Key key, OpIndex new_value) |
| void | SetNoNotify (Key key, OpIndex new_value) |
| Key | NewKey (KeyData data, OpIndex initial_value=OpIndex{}) |
| Key | NewKey (OpIndex initial_value=OpIndex{}) |
Public Member Functions inherited from v8::internal::compiler::turboshaft::SnapshotTable< OpIndex, KeyData > | |
| void | StartNewSnapshot (base::Vector< const Snapshot > predecessors, const ChangeCallback &change_callback={}) |
| void | StartNewSnapshot (std::initializer_list< Snapshot > predecessors={}, const ChangeCallback &change_callback={}) |
| void | StartNewSnapshot (Snapshot parent, const ChangeCallback &change_callback={}) |
| void | StartNewSnapshot (base::Vector< const Snapshot > predecessors, const MergeFun &merge_fun, const ChangeCallback &change_callback={}) |
| void | StartNewSnapshot (std::initializer_list< Snapshot > predecessors, const MergeFun &merge_fun, const ChangeCallback &change_callback={}) |
| Snapshot | Seal () |
| const OpIndex & | Get (Key key) const |
| const OpIndex & | GetPredecessorValue (Key key, int predecessor_index) |
| bool | Set (Key key, OpIndex new_value) |
| SnapshotTable (Zone *zone) | |
| Key | NewKey (KeyData data, OpIndex initial_value=OpIndex{}) |
| Key | NewKey (OpIndex initial_value=OpIndex{}) |
| bool | IsSealed () |
Public Attributes | |
| SparseOpIndexSnapshotTable< bool > & | non_aliasing_objects_ |
| FixedOpIndexSidetable< OpIndex > & | replacements_ |
| PipelineData * | data_ |
| Graph & | graph_ |
| const wasm::WasmModule * | module_ = data_->wasm_module() |
| ZoneUnorderedMap< WasmMemoryAddress, Key > | all_keys_ |
| ZoneUnorderedMap< OpIndex, BaseData > | base_keys_ |
| ZoneUnorderedMap< int, v8::base::DoublyThreadedList< Key, OffsetListTraits > > | offset_keys_ |
Private Member Functions | |
| void | Insert (OpIndex base, int32_t offset, wasm::ModuleTypeIndex type_index, uint8_t size, bool mutability, OpIndex value) |
Definition at line 101 of file wasm-load-elimination-reducer.h.
| using v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::MemoryAddress = WasmMemoryAddress |
Definition at line 105 of file wasm-load-elimination-reducer.h.
|
strong |
| Enumerator | |
|---|---|
| kInvalidate | |
| kKeep | |
Definition at line 174 of file wasm-load-elimination-reducer.h.
|
inlineexplicit |
Definition at line 107 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 323 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 203 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 207 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 230 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 224 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 215 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 247 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 239 of file wasm-load-elimination-reducer.h.
|
inlineprivate |
Definition at line 276 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 255 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 143 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 176 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 120 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 126 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 347 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 303 of file wasm-load-elimination-reducer.h.
|
inline |
Definition at line 137 of file wasm-load-elimination-reducer.h.
| ZoneUnorderedMap<WasmMemoryAddress, Key> v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::all_keys_ |
Definition at line 366 of file wasm-load-elimination-reducer.h.
| ZoneUnorderedMap<OpIndex, BaseData> v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::base_keys_ |
Definition at line 368 of file wasm-load-elimination-reducer.h.
| PipelineData* v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::data_ |
Definition at line 356 of file wasm-load-elimination-reducer.h.
| Graph& v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::graph_ |
Definition at line 357 of file wasm-load-elimination-reducer.h.
| const wasm::WasmModule* v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::module_ = data_->wasm_module() |
Definition at line 359 of file wasm-load-elimination-reducer.h.
| SparseOpIndexSnapshotTable<bool>& v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::non_aliasing_objects_ |
Definition at line 353 of file wasm-load-elimination-reducer.h.
| ZoneUnorderedMap<int, v8::base::DoublyThreadedList<Key, OffsetListTraits> > v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::offset_keys_ |
Definition at line 371 of file wasm-load-elimination-reducer.h.
| FixedOpIndexSidetable<OpIndex>& v8::internal::compiler::turboshaft::wle::WasmMemoryContentTable::replacements_ |
Definition at line 354 of file wasm-load-elimination-reducer.h.