LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::SCEVUDivExpr Class Reference

#include <ScalarEvolutionExpressions.h>

Inheritance diagram for llvm::SCEVUDivExpr:

Inheritance graph
[legend]
Collaboration diagram for llvm::SCEVUDivExpr:

Collaboration graph
[legend]
List of all members.

Public Member Functions

const SCEVHandlegetLHS () const
const SCEVHandlegetRHS () const
virtual bool isLoopInvariant (const Loop *L) const
virtual bool hasComputableLoopEvolution (const Loop *L) const
virtual const TypegetType () const
void print (std::ostream &OS) const

Static Public Member Functions

static SCEVHandle get (const SCEVHandle &LHS, const SCEVHandle &RHS)
static bool classof (const SCEVUDivExpr *S)
 Methods for support type inquiry through isa, cast, and dyn_cast:.
static bool classof (const SCEV *S)

Detailed Description

SCEVUDivExpr - This class represents a binary unsigned division operation.

Definition at line 266 of file ScalarEvolutionExpressions.h.


Member Function Documentation

static bool llvm::SCEVUDivExpr::classof const SCEV S  )  [inline, static]
 

Definition at line 295 of file ScalarEvolutionExpressions.h.

References llvm::SCEV::getSCEVType(), and llvm::scUDivExpr.

static bool llvm::SCEVUDivExpr::classof const SCEVUDivExpr S  )  [inline, static]
 

Methods for support type inquiry through isa, cast, and dyn_cast:.

Definition at line 294 of file ScalarEvolutionExpressions.h.

SCEVHandle SCEVUDivExpr::get const SCEVHandle LHS,
const SCEVHandle RHS
[static]
 

get method - This just gets and returns a new SCEVUDiv object.

Definition at line 944 of file ScalarEvolution.cpp.

References llvm::SCEVUnknown::get(), llvm::ConstantExpr::getCast(), llvm::ConstantExpr::getDiv(), getNegativeSCEV(), llvm::Value::getType(), llvm::Type::getUnsignedVersion(), and llvm::Type::isSigned().

Referenced by llvm::SCEVAddRecExpr::evaluateAtIteration().

const SCEVHandle& llvm::SCEVUDivExpr::getLHS  )  const [inline]
 

Definition at line 277 of file ScalarEvolutionExpressions.h.

const SCEVHandle& llvm::SCEVUDivExpr::getRHS  )  const [inline]
 

Definition at line 278 of file ScalarEvolutionExpressions.h.

const Type * SCEVUDivExpr::getType  )  const [virtual]
 

getType - Return the LLVM type of this SCEV expression.

Implements llvm::SCEV.

Definition at line 275 of file ScalarEvolution.cpp.

References llvm::Type::getUnsignedVersion(), and llvm::Type::isSigned().

virtual bool llvm::SCEVUDivExpr::hasComputableLoopEvolution const Loop L  )  const [inline, virtual]
 

hasComputableLoopEvolution - Return true if this SCEV changes value in a known way in the specified loop. This property being true implies that the value is variant in the loop AND that we can emit an expression to compute the value of the expression at any particular loop iteration.

Implements llvm::SCEV.

Definition at line 284 of file ScalarEvolutionExpressions.h.

virtual bool llvm::SCEVUDivExpr::isLoopInvariant const Loop L  )  const [inline, virtual]
 

isLoopInvariant - Return true if the value of this SCEV is unchanging in the specified loop.

Implements llvm::SCEV.

Definition at line 280 of file ScalarEvolutionExpressions.h.

void SCEVUDivExpr::print std::ostream &  OS  )  const [virtual]
 

print - Print out the internal representation of this scalar to the specified stream. This should really only be used for debugging purposes.

Implements llvm::SCEV.

Definition at line 271 of file ScalarEvolution.cpp.


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