|
Joos1W Compiler Framework
|
Load instruction. This instruction loads a value from a pointer. The size of the value loaded is determined by the type of the load instr, not by the type of the pointer. Pointer types are opaque. More...
#include <Instructions.h>

Public Member Functions | |
| std::ostream & | print (std::ostream &os) const override |
Public Member Functions inherited from tir::Instruction | |
| Instruction (Context &ctx, tir::Type *resultTy) | |
| Instruction (Context &ctx, tir::Type *resultTy, DataType data) | |
| Instruction (const Instruction &)=delete | |
| Instruction (Instruction &&)=delete | |
| Instruction & | operator= (const Instruction &)=delete |
| Instruction & | operator= (Instruction &&)=delete |
| virtual bool | isTerminator () const |
| void | insertBefore (Instruction *inst) |
| void | insertAfter (Instruction *inst) |
| auto * | parent () const |
| Instruction * | next () const |
| Instruction * | prev () const |
| auto | nextIter () |
| auto | prevIter () |
| auto | iter () |
| void | eraseFromParent (bool keep=false) |
| Removes this instruction from its parent BB if it exists. Also will unlink this instruction from the list, re-linking the previous and next instructions. | |
| void | setParent (BasicBlock *parent) |
Public Member Functions inherited from tir::User | |
| User (Context &ctx, Type *type) | |
| auto | children () const |
| auto | numChildren () const |
| Value * | getChild (unsigned idx) const |
Public Member Functions inherited from tir::Value | |
| Value (Context &ctx, Type *type) | |
| tir::Context & | ctx () |
| auto | users () |
| auto | users () const |
| Type * | type () const |
| void | addUser (User *user) |
| void | removeUser (User *user) |
| std::string_view | name () const |
| auto | nameOpt () const |
| void | replaceAllUsesWith (Value *newValue) |
| void | setName (std::string_view name) |
| std::ostream & | printName (std::ostream &os) const |
| void | dump () const |
Static Public Member Functions | |
| static LoadInst * | Create (Context &ctx, Type *type, Value *ptr) |
Additional Inherited Members | |
Protected Types inherited from tir::Instruction | |
| using | DataType = std::variant< BinOp, Predicate, CastOp, Type *, StructType * > |
Protected Member Functions inherited from tir::Instruction | |
| template<typename T > | |
| constexpr T const & | get () const |
Protected Member Functions inherited from tir::User | |
| void | addChild (Value *operand) |
| void | replaceChild (unsigned idx, Value *operand) |
| void | destroy () |
| bool | isDestroyed () const |
Load instruction. This instruction loads a value from a pointer. The size of the value loaded is determined by the type of the load instr, not by the type of the pointer. Pointer types are opaque.
Definition at line 254 of file Instructions.h.