|
Jlm
|
#include <tac.hpp>
Public Member Functions | |
| ~ThreeAddressCode () noexcept=default | |
| ThreeAddressCode (std::unique_ptr< rvsdg::SimpleOperation > operation, const std::vector< const Variable * > &operands) | |
| ThreeAddressCode (std::unique_ptr< rvsdg::SimpleOperation > operation, const std::vector< const Variable * > &operands, const std::vector< std::string > &names) | |
| ThreeAddressCode (std::unique_ptr< rvsdg::SimpleOperation > operation, const std::vector< const Variable * > &operands, std::vector< std::unique_ptr< ThreeAddressCodeVariable >> results) | |
| ThreeAddressCode (const llvm::ThreeAddressCode &)=delete | |
| ThreeAddressCode (llvm::ThreeAddressCode &&)=delete | |
| ThreeAddressCode & | operator= (const llvm::ThreeAddressCode &)=delete |
| ThreeAddressCode & | operator= (llvm::ThreeAddressCode &&)=delete |
| const rvsdg::SimpleOperation & | operation () const noexcept |
| size_t | noperands () const noexcept |
| const Variable * | operand (size_t index) const noexcept |
| size_t | nresults () const noexcept |
| const ThreeAddressCodeVariable * | result (size_t index) const noexcept |
| std::vector< std::unique_ptr< ThreeAddressCodeVariable > > | results () |
| void | replace (const rvsdg::SimpleOperation &operation, const std::vector< const Variable * > &operands) |
| void | convert (const rvsdg::SimpleOperation &operation, const std::vector< const Variable * > &operands) |
Static Public Member Functions | |
| static std::string | ToAscii (const ThreeAddressCode &threeAddressCode) |
| static std::unique_ptr< llvm::ThreeAddressCode > | create (std::unique_ptr< rvsdg::SimpleOperation > operation, const std::vector< const Variable * > &operands) |
| static std::unique_ptr< llvm::ThreeAddressCode > | create (std::unique_ptr< rvsdg::SimpleOperation > operation, const std::vector< const Variable * > &operands, const std::vector< std::string > &names) |
| static std::unique_ptr< llvm::ThreeAddressCode > | create (std::unique_ptr< rvsdg::SimpleOperation > operation, const std::vector< const Variable * > &operands, std::vector< std::unique_ptr< ThreeAddressCodeVariable >> results) |
Private Member Functions | |
| void | create_results (const rvsdg::SimpleOperation &operation, const std::vector< std::string > &names) |
Static Private Member Functions | |
| static std::vector< std::string > | create_names (size_t nnames) |
Private Attributes | |
| std::vector< const Variable * > | operands_ |
| std::unique_ptr< rvsdg::Operation > | operation_ |
| std::vector< std::unique_ptr< ThreeAddressCodeVariable > > | results_ |
|
defaultnoexcept |
| jlm::llvm::ThreeAddressCode::ThreeAddressCode | ( | std::unique_ptr< rvsdg::SimpleOperation > | operation, |
| const std::vector< const Variable * > & | operands | ||
| ) |
| jlm::llvm::ThreeAddressCode::ThreeAddressCode | ( | std::unique_ptr< rvsdg::SimpleOperation > | operation, |
| const std::vector< const Variable * > & | operands, | ||
| const std::vector< std::string > & | names | ||
| ) |
| jlm::llvm::ThreeAddressCode::ThreeAddressCode | ( | std::unique_ptr< rvsdg::SimpleOperation > | operation, |
| const std::vector< const Variable * > & | operands, | ||
| std::vector< std::unique_ptr< ThreeAddressCodeVariable >> | results | ||
| ) |
|
delete |
|
delete |
| void jlm::llvm::ThreeAddressCode::convert | ( | const rvsdg::SimpleOperation & | operation, |
| const std::vector< const Variable * > & | operands | ||
| ) |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestaticprivate |
|
inlineprivate |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
delete |
|
delete |
| void jlm::llvm::ThreeAddressCode::replace | ( | const rvsdg::SimpleOperation & | operation, |
| const std::vector< const Variable * > & | operands | ||
| ) |
|
inlinenoexcept |
|
inline |
|
static |
|
private |
|
private |
|
private |