|
Jlm
|
#include <operators.hpp>


Public Member Functions | |
| ~SsaPhiOperation () noexcept override | |
| SsaPhiOperation (std::vector< ControlFlowGraphNode * > incomingNodes, const std::shared_ptr< const jlm::rvsdg::Type > &type) | |
| SsaPhiOperation (const SsaPhiOperation &)=default | |
| SsaPhiOperation & | operator= (const SsaPhiOperation &)=delete |
| SsaPhiOperation & | operator= (SsaPhiOperation &&)=delete |
| bool | operator== (const Operation &other) const noexcept override |
| std::string | debug_string () const override |
| std::unique_ptr< Operation > | copy () const override |
| const std::shared_ptr< const rvsdg::Type > & | Type () const noexcept |
| ControlFlowGraphNode * | GetIncomingNode (size_t n) const noexcept |
Public Member Functions inherited from jlm::rvsdg::SimpleOperation | |
| ~SimpleOperation () noexcept override | |
| SimpleOperation (std::vector< std::shared_ptr< const jlm::rvsdg::Type >> operands, std::vector< std::shared_ptr< const jlm::rvsdg::Type >> results) | |
| size_t | narguments () const noexcept |
| const std::shared_ptr< const rvsdg::Type > & | argument (size_t index) const noexcept |
| size_t | nresults () const noexcept |
| const std::shared_ptr< const rvsdg::Type > & | result (size_t index) const noexcept |
Public Member Functions inherited from jlm::rvsdg::Operation | |
| virtual | ~Operation () noexcept |
| virtual bool | operator== (const Operation &other) const noexcept=0 |
| bool | operator!= (const Operation &other) const noexcept |
Static Public Member Functions | |
| static std::unique_ptr< llvm::ThreeAddressCode > | create (const std::vector< std::pair< const Variable *, ControlFlowGraphNode * >> &arguments, std::shared_ptr< const jlm::rvsdg::Type > type) |
Private Attributes | |
| std::vector< ControlFlowGraphNode * > | IncomingNodes_ |
Operation that picks its value based on which node branched to the current basic block. All SsaPhiOperations must be at the top of their basic blocks.
Each operand corresponds to an incoming basic block, and the list of incoming nodes must include every predecessor in the cfg exactly once.
Definition at line 33 of file operators.hpp.
|
overridedefaultnoexcept |
|
inline |
Definition at line 38 of file operators.hpp.
|
default |
|
overridevirtual |
Implements jlm::rvsdg::Operation.
Definition at line 43 of file operators.cpp.
|
inlinestatic |
Definition at line 76 of file operators.hpp.
|
overridevirtual |
Implements jlm::rvsdg::Operation.
Definition at line 28 of file operators.cpp.
|
inlinenoexcept |
Definition at line 69 of file operators.hpp.
|
delete |
|
delete |
|
overridenoexcept |
Definition at line 21 of file operators.cpp.
|
inlinenoexcept |
Definition at line 63 of file operators.hpp.
|
private |
Definition at line 93 of file operators.hpp.