LLVM  15.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 ()=default
 
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 300 of file Attributor.h.

Member Typedef Documentation

◆ aaiterator

Definition at line 321 of file Attributor.h.

◆ DepTy

Definition at line 303 of file Attributor.h.

◆ iterator

Definition at line 319 of file Attributor.h.

Constructor & Destructor Documentation

◆ ~AADepGraphNode()

virtual llvm::AADepGraphNode::~AADepGraphNode ( )
virtualdefault

Member Function Documentation

◆ begin()

aaiterator llvm::AADepGraphNode::begin ( )
inline

◆ child_begin()

iterator llvm::AADepGraphNode::child_begin ( )
inline

Definition at line 325 of file Attributor.h.

References DepGetVal(), and Deps.

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

◆ child_end()

iterator llvm::AADepGraphNode::child_end ( )
inline

Definition at line 326 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 324 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 329 of file Attributor.h.

References Deps.

◆ operator AbstractAttribute *()

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

Definition at line 315 of file Attributor.h.

◆ print()

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

Reimplemented in llvm::AbstractAttribute.

Definition at line 328 of file Attributor.h.

Friends And Related Function Documentation

◆ AADepGraph

friend struct AADepGraph
friend

Definition at line 332 of file Attributor.h.

◆ Attributor

friend struct Attributor
friend

Definition at line 331 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 308 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: