class ScalarEvolution::ExitLimitCache

Declaration

class ScalarEvolution::ExitLimitCache { /* full declaration omitted */ };

Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:1676

Member Variables

private SmallDenseMap<PointerIntPair<llvm::Value*, 1>, llvm::ScalarEvolution::ExitLimit> TripCountMap
private const llvm::Loop* L
private bool ExitIfTrue
private bool AllowPredicates

Method Overview

  • public ExitLimitCache(const llvm::Loop * L, bool ExitIfTrue, bool AllowPredicates)
  • public Optional<llvm::ScalarEvolution::ExitLimit> find(const llvm::Loop * L, llvm::Value * ExitCond, bool ExitIfTrue, bool ControlsExit, bool AllowPredicates)
  • public void insert(const llvm::Loop * L, llvm::Value * ExitCond, bool ExitIfTrue, bool ControlsExit, bool AllowPredicates, const llvm::ScalarEvolution::ExitLimit & EL)

Methods

ExitLimitCache(const llvm::Loop* L,
               bool ExitIfTrue,
               bool AllowPredicates)

Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:1689

Parameters

const llvm::Loop* L
bool ExitIfTrue
bool AllowPredicates

Optional<llvm::ScalarEvolution::ExitLimit> find(
    const llvm::Loop* L,
    llvm::Value* ExitCond,
    bool ExitIfTrue,
    bool ControlsExit,
    bool AllowPredicates)

Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:1692

Parameters

const llvm::Loop* L
llvm::Value* ExitCond
bool ExitIfTrue
bool ControlsExit
bool AllowPredicates

void insert(
    const llvm::Loop* L,
    llvm::Value* ExitCond,
    bool ExitIfTrue,
    bool ControlsExit,
    bool AllowPredicates,
    const llvm::ScalarEvolution::ExitLimit& EL)

Declared at: llvm/include/llvm/Analysis/ScalarEvolution.h:1695

Parameters

const llvm::Loop* L
llvm::Value* ExitCond
bool ExitIfTrue
bool ControlsExit
bool AllowPredicates
const llvm::ScalarEvolution::ExitLimit& EL