LLVM API Documentation

Classes | Public Member Functions | Friends
llvm::LazyCallGraph::postorder_scc_iterator Class Reference

A post-order depth-first SCC iterator over the call graph. More...

#include <LazyCallGraph.h>

Inheritance diagram for llvm::LazyCallGraph::postorder_scc_iterator:
Inheritance graph
[legend]
Collaboration diagram for llvm::LazyCallGraph::postorder_scc_iterator:
Collaboration graph
[legend]

List of all members.

Classes

struct  IsAtEndT
 Nonce type to select the constructor for the end iterator.

Public Member Functions

bool operator== (const postorder_scc_iterator &Arg) const
reference operator* () const
postorder_scc_iteratoroperator++ ()

Friends

class LazyCallGraph
class LazyCallGraph::Node

Detailed Description

A post-order depth-first SCC iterator over the call graph.

This iterator triggers the Tarjan DFS-based formation of the SCC DAG for the call graph, walking it lazily in depth-first post-order. That is, it always visits SCCs for a callee prior to visiting the SCC for a caller (when they are in different SCCs).

Definition at line 349 of file LazyCallGraph.h.


Member Function Documentation

reference llvm::LazyCallGraph::postorder_scc_iterator::operator* ( ) const [inline]

Definition at line 375 of file LazyCallGraph.h.

postorder_scc_iterator& llvm::LazyCallGraph::postorder_scc_iterator::operator++ ( ) [inline]
bool llvm::LazyCallGraph::postorder_scc_iterator::operator== ( const postorder_scc_iterator Arg) const [inline]

Definition at line 371 of file LazyCallGraph.h.


Friends And Related Function Documentation

friend class LazyCallGraph [friend]

Definition at line 352 of file LazyCallGraph.h.

friend class LazyCallGraph::Node [friend]

Definition at line 353 of file LazyCallGraph.h.


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