LLVM 20.0.0git
|
Utility class representing a non-constant Xor-operand. More...
Public Member Functions | |
XorOpnd (Value *V) | |
bool | isInvalid () const |
bool | isOrExpr () const |
Value * | getValue () const |
Value * | getSymbolicPart () const |
unsigned | getSymbolicRank () const |
const APInt & | getConstPart () const |
void | Invalidate () |
void | setSymbolicRank (unsigned R) |
Utility class representing a non-constant Xor-operand.
We classify non-constant Xor-Operands into two categories: C1) The operand is in the form "X & C", where C is a constant and C != ~0 C2) C2.1) The operand is in the form of "X | C", where C is a non-zero constant. C2.2) Any operand E which doesn't fall into C1 and C2.1, we view this operand as "E | 0"
Definition at line 102 of file Reassociate.cpp.
XorOpnd::XorOpnd | ( | Value * | V | ) |
Definition at line 124 of file Reassociate.cpp.
References assert(), llvm::CallingConv::C, llvm::APInt::getZero(), I, llvm::PatternMatch::m_APInt(), llvm::PatternMatch::match(), and std::swap().
Definition at line 111 of file Reassociate.cpp.
|
inline |
Definition at line 109 of file Reassociate.cpp.
|
inline |
Definition at line 110 of file Reassociate.cpp.
|
inline |
Definition at line 108 of file Reassociate.cpp.
|
inline |
Definition at line 113 of file Reassociate.cpp.
|
inline |
Definition at line 106 of file Reassociate.cpp.
|
inline |
Definition at line 107 of file Reassociate.cpp.
|
inline |
Definition at line 114 of file Reassociate.cpp.