LLVM 22.0.0git
|
#include "llvm/SandboxIR/Constant.h"
Public Member Functions | |
LLVM_ABI UndefValue * | getSequentialElement () const |
If this Undef has array or vector type, return a undef with the right element type. | |
LLVM_ABI UndefValue * | getStructElement (unsigned Elt) const |
If this undef has struct type, return a undef with the right element type for the specified element. | |
LLVM_ABI UndefValue * | getElementValue (Constant *C) const |
Return an undef of the right value for the specified GEP index if we can, otherwise return null (e.g. | |
LLVM_ABI UndefValue * | getElementValue (unsigned Idx) const |
Return an undef of the right value for the specified GEP index. | |
unsigned | getNumElements () const |
Return the number of elements in the array, vector, or struct. | |
unsigned | getUseOperandNo (const Use &Use) const final |
\Returns the operand index of Use . | |
void | verify () const override |
Should crash if there is something wrong with the instruction. | |
void | dumpOS (raw_ostream &OS) const override |
Public Member Functions inherited from llvm::sandboxir::Constant | |
sandboxir::Context & | getParent () const |
Public Member Functions inherited from llvm::sandboxir::User | |
virtual op_iterator | op_begin () |
virtual op_iterator | op_end () |
virtual const_op_iterator | op_begin () const |
virtual const_op_iterator | op_end () const |
op_range | operands () |
const_op_range | operands () const |
Value * | getOperand (unsigned OpIdx) const |
Use | getOperandUse (unsigned OpIdx) const |
\Returns the operand edge for OpIdx . | |
virtual unsigned | getNumOperands () const |
virtual void | setOperand (unsigned OperandIdx, Value *Operand) |
bool | replaceUsesOfWith (Value *FromV, Value *ToV) |
Replaces any operands that match FromV with ToV . | |
void | verify () const override |
Should crash if there is something wrong with the instruction. | |
void | dumpCommonHeader (raw_ostream &OS) const final |
void | dumpOS (raw_ostream &OS) const override |
Public Member Functions inherited from llvm::sandboxir::Value | |
virtual | ~Value ()=default |
ClassID | getSubclassID () const |
LLVM_ABI use_iterator | use_begin () |
const_use_iterator | use_begin () const |
use_iterator | use_end () |
const_use_iterator | use_end () const |
iterator_range< use_iterator > | uses () |
iterator_range< const_use_iterator > | uses () const |
LLVM_ABI user_iterator | user_begin () |
user_iterator | user_end () |
const_user_iterator | user_begin () const |
const_user_iterator | user_end () const |
iterator_range< user_iterator > | users () |
iterator_range< const_user_iterator > | users () const |
LLVM_ABI unsigned | getNumUses () const |
\Returns the number of user edges (not necessarily to unique users). | |
bool | hasNUsesOrMore (unsigned Num) const |
Return true if this value has N uses or more. | |
bool | hasNUses (unsigned Num) const |
Return true if this Value has exactly N uses. | |
LLVM_ABI Type * | getType () const |
Context & | getContext () const |
LLVM_ABI void | replaceUsesWithIf (Value *OtherV, llvm::function_ref< bool(const Use &)> ShouldReplace) |
LLVM_ABI void | replaceAllUsesWith (Value *Other) |
StringRef | getName () const |
\Returns the LLVM IR name of the bottom-most LLVM value. | |
std::string | getUid () const |
Returns the unique id in the form 'SB<number>.' like 'SB1.'. | |
void | dumpCommonFooter (raw_ostream &OS) const |
void | dumpCommonPrefix (raw_ostream &OS) const |
void | dumpCommonSuffix (raw_ostream &OS) const |
void | printAsOperandCommon (raw_ostream &OS) const |
LLVM_DUMP_METHOD void | dump () const |
Static Public Member Functions | |
static LLVM_ABI UndefValue * | get (Type *T) |
Static factory methods - Return an 'undef' object of the specified type. | |
static bool | classof (const sandboxir::Value *From) |
For isa/dyn_cast. | |
Static Public Member Functions inherited from llvm::sandboxir::Constant | |
static bool | classof (const sandboxir::Value *From) |
For isa/dyn_cast. | |
Static Public Member Functions inherited from llvm::sandboxir::User | |
static bool | classof (const Value *From) |
For isa/dyn_cast. |
Friends | |
class | Context |
Additional Inherited Members | |
Public Types inherited from llvm::sandboxir::User | |
using | op_iterator = OperandUseIterator |
using | const_op_iterator = OperandUseIterator |
using | op_range = iterator_range<op_iterator> |
using | const_op_range = iterator_range<const_op_iterator> |
Public Types inherited from llvm::sandboxir::Value | |
enum class | ClassID : unsigned |
using | use_iterator = UserUseIterator |
using | const_use_iterator = UserUseIterator |
using | user_iterator = mapped_iterator<sandboxir::UserUseIterator, UseToUser> |
using | const_user_iterator = user_iterator |
Static Protected Member Functions inherited from llvm::sandboxir::Value | |
static const char * | getSubclassIDStr (ClassID ID) |
Protected Attributes inherited from llvm::sandboxir::Value | |
ClassID | SubclassID |
For isa/dyn_cast. | |
unsigned | UID |
A unique ID used for forming the name (used for debugging). | |
llvm::Value * | Val = nullptr |
The LLVM Value that corresponds to this SandboxIR Value. | |
Context & | Ctx |
All values point to the context. |
Definition at line 797 of file Constant.h.
|
inlineprotected |
Definition at line 799 of file Constant.h.
References llvm::CallingConv::C, llvm::sandboxir::Constant::Constant(), Context, llvm::sandboxir::Value::Ctx, and UndefValue().
Referenced by Context, get(), getElementValue(), getElementValue(), getSequentialElement(), getStructElement(), and UndefValue().
|
inlineprotected |
Definition at line 801 of file Constant.h.
References llvm::CallingConv::C, llvm::sandboxir::Constant::Constant(), Context, and llvm::sandboxir::Value::Ctx.
|
inlinestatic |
For isa/dyn_cast.
Definition at line 830 of file Constant.h.
References llvm::sandboxir::Value::getSubclassID().
|
inlineoverridevirtual |
Reimplemented from llvm::sandboxir::Constant.
Definition at line 841 of file Constant.h.
References llvm::sandboxir::Value::dumpCommonPrefix(), and llvm::sandboxir::Value::dumpCommonSuffix().
|
static |
Static factory methods - Return an 'undef' object of the specified type.
Definition at line 233 of file Constant.cpp.
References llvm::cast(), llvm::UndefValue::get(), T, and UndefValue().
UndefValue * llvm::sandboxir::UndefValue::getElementValue | ( | Constant * | C | ) | const |
Return an undef of the right value for the specified GEP index if we can, otherwise return null (e.g.
if C is a ConstantExpr).
Definition at line 248 of file Constant.cpp.
References llvm::CallingConv::C, llvm::cast(), llvm::sandboxir::Constant::Constant(), llvm::sandboxir::Value::Ctx, UndefValue(), and llvm::sandboxir::Value::Val.
UndefValue * llvm::sandboxir::UndefValue::getElementValue | ( | unsigned | Idx | ) | const |
Return an undef of the right value for the specified GEP index.
Definition at line 254 of file Constant.cpp.
References llvm::cast(), llvm::sandboxir::Value::Ctx, UndefValue(), and llvm::sandboxir::Value::Val.
|
inline |
Return the number of elements in the array, vector, or struct.
Definition at line 825 of file Constant.h.
References llvm::cast(), and llvm::sandboxir::Value::Val.
UndefValue * llvm::sandboxir::UndefValue::getSequentialElement | ( | ) | const |
If this Undef has array or vector type, return a undef with the right element type.
Definition at line 238 of file Constant.cpp.
References llvm::cast(), llvm::sandboxir::Value::Ctx, UndefValue(), and llvm::sandboxir::Value::Val.
UndefValue * llvm::sandboxir::UndefValue::getStructElement | ( | unsigned | Elt | ) | const |
If this undef has struct type, return a undef with the right element type for the specified element.
Definition at line 243 of file Constant.cpp.
References llvm::cast(), llvm::sandboxir::Value::Ctx, UndefValue(), and llvm::sandboxir::Value::Val.
\Returns the operand index of Use
.
Reimplemented from llvm::sandboxir::Constant.
Definition at line 834 of file Constant.h.
References llvm_unreachable.
|
inlineoverridevirtual |
Should crash if there is something wrong with the instruction.
Reimplemented from llvm::sandboxir::Constant.
Definition at line 838 of file Constant.h.
References assert(), llvm::isa(), and llvm::sandboxir::Value::Val.
|
friend |
Definition at line 803 of file Constant.h.
References llvm::CallingConv::C, llvm::sandboxir::Constant::Constant(), Context, LLVM_ABI, T, and UndefValue().
Referenced by Context, UndefValue(), and UndefValue().