LLVM  14.0.0git
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
llvm::AADepGraphNode Struct Reference

} More...

#include "llvm/Transforms/IPO/Attributor.h"

Inheritance diagram for llvm::AADepGraphNode:
Inheritance graph
[legend]
Collaboration diagram for llvm::AADepGraphNode:
Collaboration graph
[legend]

Public Types

using DepTy = PointerIntPair< AADepGraphNode *, 1 >
 
using iterator = mapped_iterator< TinyPtrVector< DepTy >::iterator, decltype(&DepGetVal)>
 
using aaiterator = mapped_iterator< TinyPtrVector< DepTy >::iterator, decltype(&DepGetValAA)>
 

Public Member Functions

virtual ~AADepGraphNode ()
 
aaiterator begin ()
 
aaiterator end ()
 
iterator child_begin ()
 
iterator child_end ()
 
virtual void print (raw_ostream &OS) const
 
TinyPtrVector< DepTy > & getDeps ()
 

Protected Member Functions

 operator AbstractAttribute * ()
 

Static Protected Member Functions

static AADepGraphNodeDepGetVal (DepTy &DT)
 
static AbstractAttributeDepGetValAA (DepTy &DT)
 

Protected Attributes

TinyPtrVector< DepTyDeps
 Set of dependency graph nodes which should be updated if this one is updated. More...
 

Friends

struct Attributor
 
struct AADepGraph
 

Detailed Description

}

The data structure for the nodes of a dependency graph

Definition at line 228 of file Attributor.h.

Member Typedef Documentation

◆ aaiterator

Definition at line 249 of file Attributor.h.

◆ DepTy

Definition at line 231 of file Attributor.h.

◆ iterator

Definition at line 247 of file Attributor.h.

Constructor & Destructor Documentation

◆ ~AADepGraphNode()

virtual llvm::AADepGraphNode::~AADepGraphNode ( )
inlinevirtual

Definition at line 230 of file Attributor.h.

Member Function Documentation

◆ begin()

aaiterator llvm::AADepGraphNode::begin ( )
inline

◆ child_begin()

iterator llvm::AADepGraphNode::child_begin ( )
inline

Definition at line 253 of file Attributor.h.

References DepGetVal(), and Deps.

Referenced by llvm::AADepGraph::begin().

◆ child_end()

iterator llvm::AADepGraphNode::child_end ( )
inline

Definition at line 254 of file Attributor.h.

References DepGetVal(), and Deps.

Referenced by llvm::AADepGraph::end().

◆ DepGetVal()

static AADepGraphNode* llvm::AADepGraphNode::DepGetVal ( DepTy DT)
inlinestaticprotected

◆ DepGetValAA()

static AbstractAttribute* llvm::AADepGraphNode::DepGetValAA ( DepTy DT)
inlinestaticprotected

◆ end()

aaiterator llvm::AADepGraphNode::end ( )
inline

Definition at line 252 of file Attributor.h.

References DepGetValAA(), and Deps.

Referenced by llvm::AAIsDead::isLiveInstSet(), and llvm::AACallEdges::optimisticEdgesEnd().

◆ getDeps()

TinyPtrVector<DepTy>& llvm::AADepGraphNode::getDeps ( )
inline

Definition at line 257 of file Attributor.h.

References Deps.

◆ operator AbstractAttribute *()

llvm::AADepGraphNode::operator AbstractAttribute * ( )
inlineprotected

Definition at line 243 of file Attributor.h.

◆ print()

virtual void llvm::AADepGraphNode::print ( raw_ostream OS) const
inlinevirtual

Reimplemented in llvm::AbstractAttribute.

Definition at line 256 of file Attributor.h.

Friends And Related Function Documentation

◆ AADepGraph

friend struct AADepGraph
friend

Definition at line 260 of file Attributor.h.

◆ Attributor

friend struct Attributor
friend

Definition at line 259 of file Attributor.h.

Member Data Documentation

◆ Deps

TinyPtrVector<DepTy> llvm::AADepGraphNode::Deps
protected

Set of dependency graph nodes which should be updated if this one is updated.

The bit encodes if it is optional.

Definition at line 236 of file Attributor.h.

Referenced by begin(), child_begin(), child_end(), end(), getDeps(), llvm::AADepGraph::print(), llvm::AbstractAttribute::printWithDeps(), llvm::Attributor::registerAA(), and llvm::Attributor::~Attributor().


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