LLVM 17.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.
 

Friends

struct Attributor
 
struct AADepGraph
 

Detailed Description

}

The data structure for the nodes of a dependency graph

Definition at line 482 of file Attributor.h.

Member Typedef Documentation

◆ aaiterator

Definition at line 502 of file Attributor.h.

◆ DepTy

Definition at line 485 of file Attributor.h.

◆ iterator

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

References DepGetVal(), and Deps.

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

◆ child_end()

iterator llvm::AADepGraphNode::child_end ( )
inline

Definition at line 508 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 506 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 511 of file Attributor.h.

References Deps.

◆ operator AbstractAttribute *()

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

Definition at line 497 of file Attributor.h.

◆ print()

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

Reimplemented in llvm::AbstractAttribute.

Definition at line 510 of file Attributor.h.

Friends And Related Function Documentation

◆ AADepGraph

friend struct AADepGraph
friend

Definition at line 514 of file Attributor.h.

◆ Attributor

friend struct Attributor
friend

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

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


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