#include <sdfg/data_flow/library_nodes/atomic_op_node.h>
|
| | AtomicScalarOpCPUNodeDispatcher (codegen::LanguageExtension &language_extension, const Function &function, const data_flow::DataFlowGraph &data_flow_graph, const data_flow::AtomicScalarOpNode &node) |
| void | dispatch_code_with_edges (codegen::CodegenOutput &out, std::vector< codegen::DispatchInput > &inputs, std::vector< codegen::DispatchOutput > &outputs) override |
| | LibraryNodeDispatcher (LanguageExtension &language_extension, const Function &function, const data_flow::DataFlowGraph &data_flow_graph, const data_flow::LibraryNode &node) |
| | Construct a library node dispatcher.
|
| virtual | ~LibraryNodeDispatcher ()=default |
| virtual bool | begin_node (PrettyPrinter &stream) |
| | Begin code generation for the node.
|
| virtual void | end_node (PrettyPrinter &stream, bool has_declaration) |
| | End code generation for the node.
|
| virtual void | dispatch (PrettyPrinter &stream, PrettyPrinter &globals_stream, CodeSnippetFactory &library_snippet_factory) |
| | Dispatch the library node to code.
|
| virtual void | dispatch_code (PrettyPrinter &stream, PrettyPrinter &globals_stream, CodeSnippetFactory &library_snippet_factory) |
| | Generate the operation-specific code.
|
| virtual InstrumentationInfo | instrumentation_info () const |
| | Get instrumentation information for this node.
|
|
| | AtomicScalarOpNodeDispatcher (codegen::LanguageExtension &language_extension, const Function &function, const data_flow::DataFlowGraph &data_flow_graph, const data_flow::AtomicScalarOpNode &node) |
| void | require_locally_modifiable_var (CodegenOutput &out, DispatchInput &input) const |
| | Ensure that [input] points to a local copy that can be changed without modifying the actual source of the input Should only be needed to ensure that legacy [dispatch_code] code can act as before, where it always was a copy.
|
| void | pre_allocate_output (CodegenOutput &out, DispatchOutput &output, const std::string &var_name) const |
| | Declare a variable of the type of the output and with the name "var_name".
|
| void | register_output (DispatchOutput &output, const std::string &result_identifier) const |
| | The dispatcher as created an output that is identified by [result_identifier].
|
| void | copy_output (CodegenOutput &out, const DispatchOutput &output, const data_flow::Memlet &oedge) const |
| | This is a temporary & hopefully short-lived workaround.
|
| LanguageExtension & | language_extension_ |
| | Language extension for code generation.
|
| const Function & | function_ |
| | Function context.
|
| const data_flow::DataFlowGraph & | data_flow_graph_ |
| | Containing dataflow graph.
|
| const data_flow::LibraryNode & | node_ |
| | Library node being dispatched.
|
◆ AtomicScalarOpCPUNodeDispatcher()
◆ dispatch_code_with_edges()
The documentation for this class was generated from the following file: