LLVM API Documentation
#include <Operator.h>
Public Types | |
enum | { IsExact = (1 << 0) } |
Public Member Functions | |
bool | isExact () const |
Static Public Member Functions | |
static bool | isPossiblyExactOpcode (unsigned OpC) |
static bool | classof (const ConstantExpr *CE) |
static bool | classof (const Instruction *I) |
static bool | classof (const Value *V) |
Friends | |
class | BinaryOperator |
class | ConstantExpr |
PossiblyExactOperator - A udiv or sdiv instruction, which can be marked as "exact", indicating that no bits are destroyed.
Definition at line 131 of file Operator.h.
anonymous enum |
Definition at line 133 of file Operator.h.
static bool llvm::PossiblyExactOperator::classof | ( | const ConstantExpr * | CE | ) | [inline, static] |
Reimplemented from llvm::Operator.
Reimplemented in llvm::ConcreteOperator< PossiblyExactOperator, Instruction::SDiv >, llvm::ConcreteOperator< PossiblyExactOperator, Instruction::UDiv >, llvm::ConcreteOperator< PossiblyExactOperator, Instruction::LShr >, and llvm::ConcreteOperator< PossiblyExactOperator, Instruction::AShr >.
Definition at line 157 of file Operator.h.
References llvm::ConstantExpr::getOpcode(), and isPossiblyExactOpcode().
Referenced by classof(), llvm::FPMathOperator::classof(), and llvm::ConcreteOperator< Operator, Instruction::PtrToInt >::classof().
static bool llvm::PossiblyExactOperator::classof | ( | const Instruction * | I | ) | [inline, static] |
Reimplemented from llvm::Operator.
Reimplemented in llvm::ConcreteOperator< PossiblyExactOperator, Instruction::SDiv >, llvm::ConcreteOperator< PossiblyExactOperator, Instruction::UDiv >, llvm::ConcreteOperator< PossiblyExactOperator, Instruction::LShr >, and llvm::ConcreteOperator< PossiblyExactOperator, Instruction::AShr >.
Definition at line 160 of file Operator.h.
References llvm::Instruction::getOpcode(), and isPossiblyExactOpcode().
static bool llvm::PossiblyExactOperator::classof | ( | const Value * | V | ) | [inline, static] |
Reimplemented from llvm::Operator.
Reimplemented in llvm::ConcreteOperator< PossiblyExactOperator, Instruction::SDiv >, llvm::ConcreteOperator< PossiblyExactOperator, Instruction::UDiv >, llvm::ConcreteOperator< PossiblyExactOperator, Instruction::LShr >, and llvm::ConcreteOperator< PossiblyExactOperator, Instruction::AShr >.
Definition at line 163 of file Operator.h.
References classof().
bool llvm::PossiblyExactOperator::isExact | ( | ) | const [inline] |
isExact - Test whether this division is known to be exact, with zero remainder.
Definition at line 147 of file Operator.h.
References IsExact, and llvm::Value::SubclassOptionalData.
Referenced by isKnownNonZero().
static bool llvm::PossiblyExactOperator::isPossiblyExactOpcode | ( | unsigned | OpC | ) | [inline, static] |
friend class BinaryOperator [friend] |
Definition at line 138 of file Operator.h.
friend class ConstantExpr [friend] |
Definition at line 139 of file Operator.h.