|
Jlm
|
Lambda operation. More...
#include <lambda.hpp>


Public Member Functions | |
| ~LlvmLambdaOperation () override | |
| LlvmLambdaOperation (std::shared_ptr< const jlm::rvsdg::FunctionType > type, std::string name, const jlm::llvm::Linkage &linkage, jlm::llvm::CallingConvention callingConvention_, jlm::llvm::AttributeSet attributes) | |
| const std::string & | name () const noexcept |
| const jlm::llvm::Linkage & | linkage () const noexcept |
| CallingConvention | callingConvention () const noexcept |
| const jlm::llvm::AttributeSet & | attributes () const noexcept |
| std::string | debug_string () const override |
| bool | operator== (const Operation &other) const noexcept override |
| std::unique_ptr< Operation > | copy () const override |
| const jlm::llvm::AttributeSet & | GetArgumentAttributes (std::size_t index) const noexcept |
| void | SetArgumentAttributes (std::size_t index, const jlm::llvm::AttributeSet &attributes) |
Public Member Functions inherited from jlm::rvsdg::LambdaOperation | |
| ~LambdaOperation () override | |
| LambdaOperation (std::shared_ptr< const FunctionType > type) | |
| const FunctionType & | type () const noexcept |
| const std::shared_ptr< const FunctionType > & | Type () const noexcept |
| std::string | debug_string () const override |
| bool | operator== (const Operation &other) const noexcept override |
| std::unique_ptr< Operation > | copy () const override |
Public Member Functions inherited from jlm::rvsdg::StructuralOperation | |
| bool | operator== (const Operation &other) const noexcept override |
Public Member Functions inherited from jlm::rvsdg::Operation | |
| virtual | ~Operation () noexcept |
| bool | operator!= (const Operation &other) const noexcept |
Static Public Member Functions | |
| static rvsdg::Output & | getIOStateArgument (const rvsdg::LambdaNode &lambdaNode) noexcept |
| static std::unique_ptr< LlvmLambdaOperation > | Create (std::shared_ptr< const jlm::rvsdg::FunctionType > type, std::string name, const jlm::llvm::Linkage &linkage, jlm::llvm::CallingConvention callingConvention, jlm::llvm::AttributeSet attributes) |
| static std::unique_ptr< LlvmLambdaOperation > | Create (std::shared_ptr< const jlm::rvsdg::FunctionType > type, std::string name, const jlm::llvm::Linkage &linkage) |
Private Attributes | |
| std::string | name_ |
| jlm::llvm::Linkage | linkage_ |
| jlm::llvm::CallingConvention | callingConvention_ |
| jlm::llvm::AttributeSet | attributes_ |
| std::vector< jlm::llvm::AttributeSet > | ArgumentAttributes_ |
Lambda operation.
A lambda operation determines a lambda's name and function type.
Definition at line 29 of file lambda.hpp.
|
overridedefault |
| jlm::llvm::LlvmLambdaOperation::LlvmLambdaOperation | ( | std::shared_ptr< const jlm::rvsdg::FunctionType > | type, |
| std::string | name, | ||
| const jlm::llvm::Linkage & | linkage, | ||
| jlm::llvm::CallingConvention | callingConvention_, | ||
| jlm::llvm::AttributeSet | attributes | ||
| ) |
Definition at line 15 of file lambda.cpp.
|
inlinenoexcept |
Definition at line 60 of file lambda.hpp.
|
inlinenoexcept |
Definition at line 54 of file lambda.hpp.
|
overridevirtual |
Implements jlm::rvsdg::Operation.
Definition at line 45 of file lambda.cpp.
|
inlinestatic |
Helper for creating an LlvmLambdaOperation with default calling convention and empty attribute set.
Definition at line 104 of file lambda.hpp.
|
inlinestatic |
Definition at line 84 of file lambda.hpp.
|
overridevirtual |
Implements jlm::rvsdg::Operation.
Definition at line 31 of file lambda.cpp.
|
noexcept |
Definition at line 51 of file lambda.cpp.
|
staticnoexcept |
Definition at line 67 of file lambda.cpp.
|
inlinenoexcept |
Definition at line 48 of file lambda.hpp.
|
inlinenoexcept |
Definition at line 42 of file lambda.hpp.
|
overridenoexcept |
Definition at line 37 of file lambda.cpp.
| void jlm::llvm::LlvmLambdaOperation::SetArgumentAttributes | ( | std::size_t | index, |
| const jlm::llvm::AttributeSet & | attributes | ||
| ) |
Definition at line 58 of file lambda.cpp.
|
private |
Definition at line 122 of file lambda.hpp.
|
private |
Definition at line 121 of file lambda.hpp.
|
private |
Definition at line 120 of file lambda.hpp.
|
private |
Definition at line 119 of file lambda.hpp.
|
private |
Definition at line 118 of file lambda.hpp.