class Interval

Declaration

class Interval { /* full declaration omitted */ };

Description

Interval Class - An Interval is a set of nodes defined such that every node in the interval has all of its predecessors in the interval (except for the header)

Declared at: llvm/include/llvm/Analysis/Interval.h:36

Member Variables

public std::vector<BasicBlock*> Nodes
Nodes - The basic blocks in this interval.
public std::vector<BasicBlock*> Successors
Successors - List of BasicBlocks that are reachable directly from nodes in this interval, but are not in the interval themselves. These nodes necessarily must be header nodes for other intervals.
public std::vector<BasicBlock*> Predecessors
Predecessors - List of BasicBlocks that have this Interval's header block as one of their successors.

Method Overview

  • public inline Interval(llvm::BasicBlock * Header)
  • public inline bool contains(llvm::BasicBlock * BB) const
  • public inline llvm::BasicBlock * getHeaderNode() const
  • public bool isLoop() const
  • public inline bool isSuccessor(llvm::BasicBlock * BB) const
  • public void print(llvm::raw_ostream & O) const

Methods

inline Interval(llvm::BasicBlock* Header)

Declared at: llvm/include/llvm/Analysis/Interval.h:47

Parameters

llvm::BasicBlock* Header

inline bool contains(llvm::BasicBlock* BB) const

Description

contains - Find out if a basic block is in this interval

Declared at: llvm/include/llvm/Analysis/Interval.h:66

Parameters

llvm::BasicBlock* BB

inline llvm::BasicBlock* getHeaderNode() const

Declared at: llvm/include/llvm/Analysis/Interval.h:51

bool isLoop() const

Description

isLoop - Find out if there is a back edge in this interval...

Declared at: llvm/include/llvm/Analysis/Interval.h:93

inline bool isSuccessor(
    llvm::BasicBlock* BB) const

Description

isSuccessor - find out if a basic block is a successor of this Interval

Declared at: llvm/include/llvm/Analysis/Interval.h:76

Parameters

llvm::BasicBlock* BB

void print(llvm::raw_ostream& O) const

Description

print - Show contents in human readable format...

Declared at: llvm/include/llvm/Analysis/Interval.h:96

Parameters

llvm::raw_ostream& O