Produce an estimate of the unrolled cost of the specified loop.

Synopsis

Declared in <llvm/Transforms/Utils/UnrollLoop.h>

class UnrollCostEstimator;

Description

This is used to a) produce a cost estimate for partial unrolling and b) to cheaply estimate cost for full unrolling when we don't want to symbolically evaluate all iterations.

Member Functions

Name

Description

UnrollCostEstimator [constructor]

Estimate the rolled size and convergence properties of loop L.

canUnroll

Whether it is legal to unroll this loop. If ORE and L are provided, emit an optimization remark on failure.

getRolledLoopSize

Return the estimated size of the loop before unrolling.

getUnrolledLoopSize

Returns loop size estimation for an unrolled loop with the given unroll count and the unrolling configuration specified by UP.

Data Members

Name

Description

Convergence

Convergence kind of operations found in the loop body.

ConvergenceAllowsRuntime

True if convergence still permits runtime unrolling with a remainder.

NumInlineCandidates

Number of calls that look like profitable inlining candidates.

Created with MrDocs