reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

include/llvm/ADT/FoldingSet.h
  221   static void Profile(const T &X, FoldingSetNodeID &ID) {
  224   static void Profile(T &X, FoldingSetNodeID &ID) {
  232   static inline bool Equals(T &X, const FoldingSetNodeID &ID, unsigned IDHash,
  240   static inline unsigned ComputeHash(T &X, FoldingSetNodeID &TempID);
  250   : public DefaultFoldingSetTrait<T> {};
  369   FoldingSetTrait<T>::Profile(X, TempID);
  375   FoldingSetTrait<T>::Profile(X, TempID);
  410   using iterator = FoldingSetIterator<T>;
  415   using const_iterator = FoldingSetIterator<const T>;
  420   using bucket_iterator = FoldingSetBucketIterator<T>;
  432   bool RemoveNode(T *N) { return FoldingSetBase::RemoveNode(N); }
  437   T *GetOrInsertNode(T *N) {
  437   T *GetOrInsertNode(T *N) {
  444   T *FindNodeOrInsertPos(const FoldingSetNodeID &ID, void *&InsertPos) {
  451   void InsertNode(T *N, void *InsertPos) {
  457   void InsertNode(T *N) {
  473 template <class T> class FoldingSet final : public FoldingSetImpl<T> {
  474   using Super = FoldingSetImpl<T>;
  480     T *TN = static_cast<T *>(N);
  481     FoldingSetTrait<T>::Profile(*TN, ID);
  488     T *TN = static_cast<T *>(N);
  489     return FoldingSetTrait<T>::Equals(*TN, ID, IDHash, TempID);
  495     T *TN = static_cast<T *>(N);
  496     return FoldingSetTrait<T>::ComputeHash(*TN, TempID);
include/llvm/CodeGen/GlobalISel/CSEInfo.h
   76   FoldingSet<UniqueMachineInstr> CSEMap;
   84   DenseMap<const MachineInstr *, UniqueMachineInstr *> InstrMapping;
   94   bool isUniqueMachineInstValid(const UniqueMachineInstr &UMI) const;
   96   void invalidateUniqueMachineInstr(UniqueMachineInstr *UMI);
   98   UniqueMachineInstr *getNodeIfExists(FoldingSetNodeID &ID,
  102   UniqueMachineInstr *getUniqueInstrForMI(const MachineInstr *MI);
  104   void insertNode(UniqueMachineInstr *UMI, void *InsertPos = nullptr);
lib/CodeGen/GlobalISel/CSEInfo.cpp
   86     const UniqueMachineInstr &UMI) const {
   94 void GISelCSEInfo::invalidateUniqueMachineInstr(UniqueMachineInstr *UMI) {
  101 UniqueMachineInstr *GISelCSEInfo::getNodeIfExists(FoldingSetNodeID &ID,
  104   auto *Node = CSEMap.FindNodeOrInsertPos(ID, InsertPos);
  117 void GISelCSEInfo::insertNode(UniqueMachineInstr *UMI, void *InsertPos) {
  120   UniqueMachineInstr *MaybeNewNode = UMI;
  134 UniqueMachineInstr *GISelCSEInfo::getUniqueInstrForMI(const MachineInstr *MI) {
  136   auto *Node = new (UniqueInstrAllocator) UniqueMachineInstr(MI);
  136   auto *Node = new (UniqueInstrAllocator) UniqueMachineInstr(MI);
  144   auto *Node = getUniqueInstrForMI(MI);
  152   if (auto *Inst = getNodeIfExists(ID, MBB, InsertPos)) {
  178   auto *UMI = InstrMapping.lookup(MI);
  199   if (auto *UMI = InstrMapping.lookup(MI)) {