class IVStrideUse

Declaration

class IVStrideUse : public CallbackVH, public ilist_node { /* full declaration omitted */ };

Description

IVStrideUse - Keep track of one use of a strided induction variable. The Expr member keeps track of the expression, User is the actual user instruction of the operand, and 'OperandValToReplace' is the operand of the User that is the use.

Declared at: llvm/include/llvm/Analysis/IVUsers.h:34

Inherits from: CallbackVH, ilist_node

Member Variables

private llvm::IVUsers* Parent
Parent - a pointer to the IVUsers that owns this IVStrideUse.
private llvm::WeakTrackingVH OperandValToReplace
OperandValToReplace - The Value of the operand in the user instruction that this IVStrideUse is representing.
private llvm::PostIncLoopSet PostIncLoops
PostIncLoops - The set of loops for which Expr has been adjusted to use post-inc mode. This corresponds with SCEVExpander's post-inc concept.

Method Overview

Inherited from CallbackVH:

Inherited from ValueHandleBase:

Methods

IVStrideUse(llvm::IVUsers* P,
            llvm::Instruction* U,
            llvm::Value* O)

Declared at: llvm/include/llvm/Analysis/IVUsers.h:37

Parameters

llvm::IVUsers* P
llvm::Instruction* U
llvm::Value* O

void deleted()

Description

Deleted - Implementation of CallbackVH virtual function to receive notification when the User is deleted.

Declared at: llvm/include/llvm/Analysis/IVUsers.h:87

llvm::Value* getOperandValToReplace() const

Description

getOperandValToReplace - Return the Value of the operand in the user instruction that this IVStrideUse is representing.

Declared at: llvm/include/llvm/Analysis/IVUsers.h:53

const llvm::PostIncLoopSet& getPostIncLoops()
    const

Description

getPostIncLoops - Return the set of loops for which the expression has been adjusted to use post-inc mode.

Declared at: llvm/include/llvm/Analysis/IVUsers.h:65

llvm::Instruction* getUser() const

Description

getUser - Return the user instruction for this use.

Declared at: llvm/include/llvm/Analysis/IVUsers.h:42

void setOperandValToReplace(llvm::Value* Op)

Description

setOperandValToReplace - Assign a new Value as the operand value to replace.

Declared at: llvm/include/llvm/Analysis/IVUsers.h:59

Parameters

llvm::Value* Op

void setUser(llvm::Instruction* NewUser)

Description

setUser - Assign a new user instruction for this use.

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

Parameters

llvm::Instruction* NewUser

void transformToPostInc(const llvm::Loop* L)

Description

transformToPostInc - Transform the expression to post-inc form for the given loop.

Declared at: llvm/include/llvm/Analysis/IVUsers.h:71

Parameters

const llvm::Loop* L