LLVM 22.0.0git
llvm::ScheduleDAGInstrs::Value2SUsMap Class Reference
Inheritance diagram for llvm::ScheduleDAGInstrs::Value2SUsMap:
[legend]

Public Member Functions

 Value2SUsMap (unsigned lat=0)
ValueTypeoperator[] (const SUList &Key)
 To keep NumNodes up to date, insert() is used instead of this operator w/ push_back().
void insert (SUnit *SU, ValueType V)
 Adds SU to the SUList of V.
void clearList (ValueType V)
 Clears the list of SUs mapped to V.
void clear ()
 Clears map from all contents.
unsigned size () const
void reComputeSize ()
 Counts the number of SUs in this map after a reduction.
unsigned getTrueMemOrderLatency () const
void dump ()
Public Member Functions inherited from llvm::MapVector< ValueType, SUList, SmallDenseMap< ValueType, unsigned, N >, SmallVector< std::pair< ValueType, SUList >, N > >
void remove_if (Function Pred)
SmallVector< std::pair< ValueType, SUList >, NtakeVector ()
 Clear the MapVector and return the underlying vector.
ArrayRef< value_typegetArrayRef () const
 Returns an array reference of the underlying vector.
size_type size () const
void reserve (size_type NumEntries)
 Grow the MapVector so that it can contain at least NumEntries items before resizing again.
iterator begin ()
iterator end ()
reverse_iterator rbegin ()
reverse_iterator rend ()
bool empty () const
std::pair< ValueType, SUList > & front ()
std::pair< ValueType, SUList > & back ()
void clear ()
void swap (MapVector &RHS)
SUList & operator[] (const ValueType &Key)
SUList lookup (const ValueType &Key) const
std::pair< iterator, booltry_emplace (const ValueType &Key, Ts &&...Args)
std::pair< iterator, boolinsert (const std::pair< ValueType, SUList > &KV)
std::pair< iterator, boolinsert_or_assign (const ValueType &Key, V &&Val)
bool contains (const ValueType &Key) const
size_type count (const ValueType &Key) const
iterator find (const ValueType &Key)
void pop_back ()
 Remove the last element from the vector.
SmallVector< std::pair< ValueType, SUList >, N >::iterator erase (typename SmallVector< std::pair< ValueType, SUList >, N >::iterator Iterator)
 Remove the element given by Iterator.

Additional Inherited Members

Public Types inherited from llvm::MapVector< ValueType, SUList, SmallDenseMap< ValueType, unsigned, N >, SmallVector< std::pair< ValueType, SUList >, N > >
using key_type
using value_type
using size_type
using iterator
using const_iterator
using reverse_iterator
using const_reverse_iterator

Detailed Description

Definition at line 639 of file ScheduleDAGInstrs.cpp.

Constructor & Destructor Documentation

◆ Value2SUsMap()

llvm::ScheduleDAGInstrs::Value2SUsMap::Value2SUsMap ( unsigned lat = 0)
inline

Definition at line 648 of file ScheduleDAGInstrs.cpp.

Member Function Documentation

◆ clear()

void llvm::ScheduleDAGInstrs::Value2SUsMap::clear ( )
inline

◆ clearList()

void llvm::ScheduleDAGInstrs::Value2SUsMap::clearList ( ValueType V)
inline

◆ dump()

void llvm::ScheduleDAGInstrs::Value2SUsMap::dump ( )

◆ getTrueMemOrderLatency()

unsigned llvm::ScheduleDAGInstrs::Value2SUsMap::getTrueMemOrderLatency ( ) const
inline

◆ insert()

void llvm::ScheduleDAGInstrs::Value2SUsMap::insert ( SUnit * SU,
ValueType V )
inline

Adds SU to the SUList of V.

If Map grows huge, reduce its size by calling reduce().

Definition at line 657 of file ScheduleDAGInstrs.cpp.

References llvm::MapVector< KeyT, ValueT, MapType, VectorType >::operator[]().

Referenced by llvm::ScheduleDAGInstrs::buildSchedGraph().

◆ operator[]()

ValueType & llvm::ScheduleDAGInstrs::Value2SUsMap::operator[] ( const SUList & Key)
inline

To keep NumNodes up to date, insert() is used instead of this operator w/ push_back().

Definition at line 652 of file ScheduleDAGInstrs.cpp.

References llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs... >::Key, and llvm_unreachable.

◆ reComputeSize()

void llvm::ScheduleDAGInstrs::Value2SUsMap::reComputeSize ( )
inline

Counts the number of SUs in this map after a reduction.

Definition at line 682 of file ScheduleDAGInstrs.cpp.

References I.

Referenced by llvm::ScheduleDAGInstrs::insertBarrierChain().

◆ size()

unsigned llvm::ScheduleDAGInstrs::Value2SUsMap::size ( ) const
inline

Definition at line 679 of file ScheduleDAGInstrs.cpp.

Referenced by llvm::ScheduleDAGInstrs::buildSchedGraph().


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