|
mini-llvm 0.1.0
|
#include <Call.h>


Public Types | |
| using | arg_iterator = IndirectIterator<ArgumentList::iterator, Use<Value>> |
| using | const_arg_iterator = IndirectIterator<ArgumentList::const_iterator, const Use<Value>> |
| Public Types inherited from mini_llvm::ir::Value | |
| using | use_iterator = IndirectIterator<UseSet::iterator, UseBase> |
Public Member Functions | |
| Call (std::weak_ptr< Function > callee, std::vector< std::shared_ptr< Value > > args={}) | |
| template<typename Self> | |
| auto & | callee (this Self &&self) |
| arg_iterator | arg_begin () |
| arg_iterator | arg_end () |
| const_arg_iterator | arg_begin () const |
| const_arg_iterator | arg_end () const |
| bool | arg_empty () const |
| size_t | arg_size () const |
| Use< Value > & | arg (size_t i) |
| const Use< Value > & | arg (size_t i) const |
| void | addArg (const_arg_iterator pos, std::shared_ptr< Value > arg) |
| void | appendArg (std::shared_ptr< Value > arg) |
| void | removeArg (const_arg_iterator pos) |
| void | removeLastArg () |
| void | clearArgs () |
| std::unordered_set< const UseBase * > | operands () const override |
| void | accept (InstructionVisitor &visitor) override |
| void | accept (InstructionVisitor &visitor) const override |
| bool | isWellFormed () const override |
| std::unique_ptr< Type > | type () const override |
| std::string | format () const override |
| std::unique_ptr< Value > | clone () const override |
| Public Member Functions inherited from mini_llvm::ir::Instruction | |
| BasicBlock * | parent () const |
| BasicBlock::iterator | parentIterator () const |
| std::unordered_set< UseBase * > | operands () |
| virtual bool | isFoldable () const |
| virtual std::shared_ptr< Constant > | fold () const |
| bool | isWellFormed () const override |
| std::string | formatAsOperand () const override |
| Public Member Functions inherited from mini_llvm::ir::Value | |
| virtual | ~Value ()=default |
| Value ()=default | |
| Value (const Value &)=delete | |
| Value & | operator= (const Value &)=delete |
| Value (Value &&)=delete | |
| Value & | operator= (Value &&)=delete |
| const std::string & | name () const & |
| std::string && | name () && |
| void | setName (std::string name) |
| std::string | formatName () const |
| use_iterator | use_begin () const |
| use_iterator | use_end () const |
| bool | use_empty () const |
| size_t | use_size () const |
| using mini_llvm::ir::Call::arg_iterator = IndirectIterator<ArgumentList::iterator, Use<Value>> |
| using mini_llvm::ir::Call::const_arg_iterator = IndirectIterator<ArgumentList::const_iterator, const Use<Value>> |
|
explicit |
|
inlineoverridevirtual |
Implements mini_llvm::ir::Instruction.
|
inlineoverridevirtual |
Implements mini_llvm::ir::Instruction.
| void mini_llvm::ir::Call::addArg | ( | const_arg_iterator | pos, |
| std::shared_ptr< Value > | arg ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| void mini_llvm::ir::Call::clearArgs | ( | ) |
|
overridevirtual |
Implements mini_llvm::ir::Value.
|
overridevirtual |
Implements mini_llvm::ir::Value.
|
overridevirtual |
Reimplemented from mini_llvm::ir::Value.
|
overridevirtual |
Implements mini_llvm::ir::Instruction.
| void mini_llvm::ir::Call::removeArg | ( | const_arg_iterator | pos | ) |
|
inline |
|
inlineoverridevirtual |
Implements mini_llvm::ir::Value.