LLVM 20.0.0git
|
#include "llvm/SandboxIR/Constant.h"
Static Public Member Functions | |
static BlockAddress * | get (Function *F, BasicBlock *BB) |
Return a BlockAddress for the specified function and basic block. | |
static BlockAddress * | get (BasicBlock *BB) |
Return a BlockAddress for the specified basic block. | |
static BlockAddress * | lookup (const BasicBlock *BB) |
Lookup an existing BlockAddress constant for the given BasicBlock. | |
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 { DEF_VALUE , DEF_USER , DEF_CONST , DEF_INSTR } |
using | use_iterator = UserUseIterator |
using | const_use_iterator = UserUseIterator |
using | user_iterator = mapped_iterator< sandboxir::UserUseIterator, UseToUser > |
using | const_user_iterator = user_iterator |
Protected Member Functions inherited from llvm::sandboxir::Constant | |
Constant (llvm::Constant *C, sandboxir::Context &SBCtx) | |
Constant (ClassID ID, llvm::Constant *C, sandboxir::Context &SBCtx) | |
Use | getOperandUseInternal (unsigned OpIdx, bool Verify) const override |
\Returns the Use for the OpIdx'th operand. | |
Protected Member Functions inherited from llvm::sandboxir::User | |
User (ClassID ID, llvm::Value *V, Context &Ctx) | |
Use | getOperandUseDefault (unsigned OpIdx, bool Verify) const |
\Returns the Use edge that corresponds to OpIdx . | |
virtual Use | getOperandUseInternal (unsigned OpIdx, bool Verify) const =0 |
\Returns the Use for the OpIdx'th operand. | |
unsigned | getUseOperandNoDefault (const Use &Use) const |
The default implementation works only for single-LLVMIR-instruction Users and only if they match exactly the LLVM instruction. | |
virtual unsigned | getUseOperandNo (const Use &Use) const =0 |
\Returns the operand index of Use . | |
void | swapOperandsInternal (unsigned OpIdxA, unsigned OpIdxB) |
void | verifyUserOfLLVMUse (const llvm::Use &Use) const |
Protected Member Functions inherited from llvm::sandboxir::Value | |
void | clearValue () |
Value (ClassID SubclassID, llvm::Value *Val, Context &Ctx) | |
Value (const Value &)=delete | |
Disable copies. | |
Value & | operator= (const Value &)=delete |
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 1160 of file Constant.h.
|
inlinestatic |
|
static |
Return a BlockAddress for the specified basic block.
The basic block must be embedded into a function.
Definition at line 463 of file Constant.cpp.
References llvm::BlockAddress::get(), llvm::sandboxir::BasicBlock::getContext(), llvm::sandboxir::Context::getOrCreateConstant(), and llvm::sandboxir::Value::Val.
|
static |
Return a BlockAddress for the specified function and basic block.
Definition at line 457 of file Constant.cpp.
References F, llvm::BlockAddress::get(), and llvm::sandboxir::Value::Val.
BasicBlock * llvm::sandboxir::BlockAddress::getBasicBlock | ( | ) | const |
Definition at line 478 of file Constant.cpp.
References llvm::sandboxir::Value::Ctx, llvm::sandboxir::Context::getValue(), and llvm::sandboxir::Value::Val.
Function * llvm::sandboxir::BlockAddress::getFunction | ( | ) | const |
Definition at line 473 of file Constant.cpp.
References llvm::sandboxir::Value::Ctx, llvm::sandboxir::Context::getValue(), and llvm::sandboxir::Value::Val.
|
static |
Lookup an existing BlockAddress
constant for the given BasicBlock.
!BB->hasAddressTaken()
, otherwise the BlockAddress
. Definition at line 468 of file Constant.cpp.
References llvm::sandboxir::BasicBlock::getContext(), llvm::sandboxir::Context::getValue(), llvm::BlockAddress::lookup(), and llvm::sandboxir::Value::Val.
|
friend |
Definition at line 1163 of file Constant.h.