|
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 34 of file operators.hpp.
|
overridedefaultnoexcept |
|
inline |
Definition at line 39 of file operators.hpp.
|
default |
|
overridevirtual |
Implements jlm::rvsdg::Operation.
Definition at line 47 of file operators.cpp.
|
inlinestatic |
Definition at line 77 of file operators.hpp.
|
overridevirtual |
Implements jlm::rvsdg::Operation.
Definition at line 32 of file operators.cpp.
|
inlinenoexcept |
Definition at line 70 of file operators.hpp.
|
delete |
|
delete |
|
overridenoexcept |
Definition at line 25 of file operators.cpp.
|
inlinenoexcept |
Definition at line 64 of file operators.hpp.
|
private |
Definition at line 94 of file operators.hpp.