v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData > Class Template Reference

#include <snapshot-table-opindex.h>

Inheritance diagram for v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >:
Collaboration diagram for v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >:

Public Types

using Base = SnapshotTable<Value, KeyData>
 
using Key = typename SnapshotTable<Value, KeyData>::Key
 
- Public Types inherited from v8::internal::compiler::turboshaft::SnapshotTable< Value, NoKeyData >
using TableEntry
 
using Key
 

Public Member Functions

 SparseOpIndexSnapshotTable (Zone *zone)
 
Value Get (OpIndex idx) const
 
Value GetPredecessorValue (OpIndex idx, int predecessor_index)
 
bool Set (OpIndex idx, Value new_value)
 
void NewKey (OpIndex idx, KeyData data, Value initial_value=Value{})
 
void NewKey (OpIndex idx, Value initial_value=Value{})
 
bool HasKeyFor (OpIndex idx) const
 
std::optional< KeyTryGetKeyFor (OpIndex idx) const
 
const ValueGet (Key key) const
 
bool Set (Key key, Value new_value)
 
- Public Member Functions inherited from v8::internal::compiler::turboshaft::SnapshotTable< Value, NoKeyData >
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 ValueGet (Key key) const
 
const ValueGetPredecessorValue (Key key, int predecessor_index)
 
bool Set (Key key, Value new_value)
 
 SnapshotTable (Zone *zone)
 
Key NewKey (NoKeyData data, Value initial_value=Value{})
 
Key NewKey (Value initial_value=Value{})
 
bool IsSealed ()
 

Private Member Functions

Key GetOrCreateKey (OpIndex idx)
 

Private Attributes

ZoneAbslFlatHashMap< OpIndex, Keyindices_to_keys_
 

Detailed Description

template<class Value, class KeyData = NoKeyData>
class v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >

Definition at line 18 of file snapshot-table-opindex.h.

Member Typedef Documentation

◆ Base

Definition at line 20 of file snapshot-table-opindex.h.

◆ Key

template<class Value , class KeyData = NoKeyData>
using v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::Key = typename SnapshotTable<Value, KeyData>::Key

Definition at line 21 of file snapshot-table-opindex.h.

Constructor & Destructor Documentation

◆ SparseOpIndexSnapshotTable()

template<class Value , class KeyData = NoKeyData>
v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::SparseOpIndexSnapshotTable ( Zone * zone)
inlineexplicit

Definition at line 23 of file snapshot-table-opindex.h.

Member Function Documentation

◆ Get() [1/2]

template<class Value , class KeyData = NoKeyData>
const Value & v8::internal::compiler::turboshaft::SnapshotTable< Value, KeyData >::Get ( Key key) const
inline

Definition at line 222 of file snapshot-table.h.

◆ Get() [2/2]

template<class Value , class KeyData = NoKeyData>
Value v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::Get ( OpIndex idx) const
inline

Definition at line 27 of file snapshot-table-opindex.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetOrCreateKey()

template<class Value , class KeyData = NoKeyData>
Key v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::GetOrCreateKey ( OpIndex idx)
inlineprivate

Definition at line 64 of file snapshot-table-opindex.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetPredecessorValue()

template<class Value , class KeyData = NoKeyData>
Value v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::GetPredecessorValue ( OpIndex idx,
int predecessor_index )
inline

Definition at line 33 of file snapshot-table-opindex.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasKeyFor()

template<class Value , class KeyData = NoKeyData>
bool v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::HasKeyFor ( OpIndex idx) const
inline

Definition at line 53 of file snapshot-table-opindex.h.

Here is the caller graph for this function:

◆ NewKey() [1/2]

template<class Value , class KeyData = NoKeyData>
void v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::NewKey ( OpIndex idx,
KeyData data,
Value initial_value = Value{} )
inline

Definition at line 45 of file snapshot-table-opindex.h.

◆ NewKey() [2/2]

template<class Value , class KeyData = NoKeyData>
void v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::NewKey ( OpIndex idx,
Value initial_value = Value{} )
inline

Definition at line 49 of file snapshot-table-opindex.h.

◆ Set() [1/2]

template<class Value , class KeyData = NoKeyData>
bool v8::internal::compiler::turboshaft::SnapshotTable< Value, KeyData >::Set ( Key key,
Value new_value )
inline

Definition at line 239 of file snapshot-table.h.

◆ Set() [2/2]

template<class Value , class KeyData = NoKeyData>
bool v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::Set ( OpIndex idx,
Value new_value )
inline

Definition at line 40 of file snapshot-table-opindex.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TryGetKeyFor()

template<class Value , class KeyData = NoKeyData>
std::optional< Key > v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::TryGetKeyFor ( OpIndex idx) const
inline

Definition at line 57 of file snapshot-table-opindex.h.

Here is the caller graph for this function:

Member Data Documentation

◆ indices_to_keys_

template<class Value , class KeyData = NoKeyData>
ZoneAbslFlatHashMap<OpIndex, Key> v8::internal::compiler::turboshaft::SparseOpIndexSnapshotTable< Value, KeyData >::indices_to_keys_
private

Definition at line 71 of file snapshot-table-opindex.h.


The documentation for this class was generated from the following file: