class PiBlockDDGNode

Declaration

class PiBlockDDGNode : public DDGNode { /* full declaration omitted */ };

Description

Subclass of DDGNode representing a pi-block. A pi-block represents a group of DDG nodes that are part of a strongly-connected component of the graph. Replacing all the SCCs with pi-blocks results in an acyclic representation of the DDG. For example if we have: {a -> b}, {b -> c, d}, {c -> a} the cycle a -> b -> c -> a is abstracted into a pi-block "p" as follows: {p -> d} with "p" containing: {a -> b}, {b -> c}, {c -> a}

Declared at: llvm/include/llvm/Analysis/DDG.h:170

Inherits from: DDGNode

Method Overview

Inherited from DDGNode:

Methods

PiBlockDDGNode()

Declared at: llvm/include/llvm/Analysis/DDG.h:174

PiBlockDDGNode(
    const llvm::PiBlockDDGNode::PiNodeList& List)

Declared at: llvm/include/llvm/Analysis/DDG.h:175

Parameters

const llvm::PiBlockDDGNode::PiNodeList& List

PiBlockDDGNode(const llvm::PiBlockDDGNode& N)

Declared at: llvm/include/llvm/Analysis/DDG.h:176

Parameters

const llvm::PiBlockDDGNode& N

PiBlockDDGNode(llvm::PiBlockDDGNode&& N)

Declared at: llvm/include/llvm/Analysis/DDG.h:177

Parameters

llvm::PiBlockDDGNode&& N

static bool classof(const llvm::DDGNode* N)

Description

Define classof to be able to use isa < >, cast < >, dyn_cast < >, etc.

Declared at: llvm/include/llvm/Analysis/DDG.h:203

Parameters

const llvm::DDGNode* N

const llvm::PiBlockDDGNode::PiNodeList& getNodes()
    const

Description

Get the list of nodes in this pi-block.

Declared at: llvm/include/llvm/Analysis/DDG.h:193

llvm::PiBlockDDGNode::PiNodeList& getNodes()

Declared at: llvm/include/llvm/Analysis/DDG.h:197

~PiBlockDDGNode()

Declared at: llvm/include/llvm/Analysis/DDG.h:178