LLVM  16.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 351 of file Attributor.h.

Member Typedef Documentation

◆ aaiterator

Definition at line 372 of file Attributor.h.

◆ DepTy

Definition at line 354 of file Attributor.h.

◆ iterator

Definition at line 370 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 376 of file Attributor.h.

References DepGetVal(), and Deps.

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

◆ child_end()

iterator llvm::AADepGraphNode::child_end ( )
inline

Definition at line 377 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 375 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 380 of file Attributor.h.

References Deps.

◆ operator AbstractAttribute *()

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

Definition at line 366 of file Attributor.h.

◆ print()

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

Reimplemented in llvm::AbstractAttribute.

Definition at line 379 of file Attributor.h.

Friends And Related Function Documentation

◆ AADepGraph

friend struct AADepGraph
friend

Definition at line 383 of file Attributor.h.

◆ Attributor

friend struct Attributor
friend

Definition at line 382 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 359 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: