llvm::CycleRef

Opaque handle to a cycle within a GenericCycleInfo that wraps the cycle's preorder index. Handles remain valid as long as the cycle forest is not recomputed; addBlockToCycle() adds a block but never adds, removes, or reorders cycles, so it leaves every handle valid.

Synopsis

Declared in <llvm/ADT/GenericCycleInfo.h>

class CycleRef;

Member Functions

NameDescription
CycleRef [constructor]Construct an invalid cycle handle.
isValid Return true if this handle names a real cycle.
operator bool Return true if this handle names a real cycle.
operator== Return true if both handles name the same cycle index.
operator!= Return true if the handles name different cycle indices.

Friends

NameDescription
llvm::DenseMapInfo<CycleRef>
llvm::GenericCycleInfoComputeHelper class for computing cycle information.
llvm::GenericCycleInfoCycle information for a function.

Non-Member Functions

NameDescription
getExtDivCycleReturn the outermost cycle made divergent by branch outside it.
getIntDivCycleReturn the outermost cycle made divergent by branch inside it.
getOutermostDivergentCycleReturn the outermost cycle made divergent by a join of paths from DivTermBlock through JoinBlock.