LLVM API Documentation

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
SCEVHandle replaceSymbolicValuesWithConcrete (const SCEVHandle &Sym, const SCEVHandle &Conc, ScalarEvolution &SE) const
virtual const TypegetType () const
void print (std::ostream &OS) const
void print (std::ostream *OS) const

Static Public Member Functions

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

Friends

class ScalarEvolution


Detailed Description

SCEVUDivExpr - This class represents a binary unsigned division operation.

Definition at line 314 of file ScalarEvolutionExpressions.h.


Member Function Documentation

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

Definition at line 323 of file ScalarEvolutionExpressions.h.

References LHS.

Referenced by llvm::SCEVExpander::visitUDivExpr().

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

Definition at line 324 of file ScalarEvolutionExpressions.h.

References RHS.

Referenced by llvm::SCEVExpander::visitUDivExpr().

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 326 of file ScalarEvolutionExpressions.h.

References LHS, and RHS.

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 330 of file ScalarEvolutionExpressions.h.

References LHS, and RHS.

SCEVHandle llvm::SCEVUDivExpr::replaceSymbolicValuesWithConcrete ( const SCEVHandle Sym,
const SCEVHandle Conc,
ScalarEvolution SE 
) const [inline, virtual]

replaceSymbolicValuesWithConcrete - If this SCEV internally references the symbolic value "Sym", construct and return a new SCEV that produces the same value, but which uses the concrete value Conc instead of the symbolic value. If this SCEV does not use the symbolic value, it returns itself.

Implements llvm::SCEV.

Definition at line 335 of file ScalarEvolutionExpressions.h.

References llvm::ScalarEvolution::getUDivExpr(), L, LHS, R, and RHS.

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

getType - Return the LLVM type of this SCEV expression.

Implements llvm::SCEV.

Definition at line 324 of file ScalarEvolution.cpp.

References llvm::Value::getType(), and LHS.

Referenced by llvm::SCEVExpander::visitUDivExpr().

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 320 of file ScalarEvolution.cpp.

References LHS, and RHS.

Referenced by print().

void llvm::SCEVUDivExpr::print ( std::ostream *  OS  )  const [inline]

Reimplemented from llvm::SCEV.

Definition at line 350 of file ScalarEvolutionExpressions.h.

References print().

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

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

Definition at line 353 of file ScalarEvolutionExpressions.h.

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

Definition at line 354 of file ScalarEvolutionExpressions.h.

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


Friends And Related Function Documentation

friend class ScalarEvolution [friend]

Definition at line 315 of file ScalarEvolutionExpressions.h.


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



This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.