Jlm
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
jlm::hls::ExitResult Class Referencefinal

#include <hls.hpp>

Inheritance diagram for jlm::hls::ExitResult:
Inheritance graph
[legend]
Collaboration diagram for jlm::hls::ExitResult:
Collaboration graph
[legend]

Public Member Functions

 ~ExitResult () noexcept override
 
ExitResultCopy (rvsdg::Output &origin, rvsdg::StructuralOutput *output) const override
 
- Public Member Functions inherited from jlm::rvsdg::RegionResult
 ~RegionResult () noexcept override
 
 RegionResult (rvsdg::Region *region, rvsdg::Output *origin, StructuralOutput *output, std::shared_ptr< const rvsdg::Type > type)
 
 RegionResult (const RegionResult &)=delete
 
 RegionResult (RegionResult &&)=delete
 
RegionResultoperator= (const RegionResult &)=delete
 
RegionResultoperator= (RegionResult &&)=delete
 
std::string debug_string () const override
 
StructuralOutputoutput () const noexcept
 
- Public Member Functions inherited from jlm::rvsdg::Input
virtual ~Input () noexcept
 
 Input (const Input &)=delete
 
 Input (Input &&)=delete
 
Inputoperator= (const Input &)=delete
 
Inputoperator= (Input &&)=delete
 
size_t index () const noexcept
 
Outputorigin () const noexcept
 
void divert_to (Output *new_origin)
 
const std::shared_ptr< const rvsdg::Type > & Type () const noexcept
 
Regionregion () const noexcept
 
std::variant< Node *, Region * > GetOwner () const noexcept
 

Static Public Member Functions

static ExitResultCreate (rvsdg::Output &origin, rvsdg::StructuralOutput &output)
 
- Static Public Member Functions inherited from jlm::rvsdg::RegionResult
static RegionResultCreate (rvsdg::Region &region, rvsdg::Output &origin, StructuralOutput *output, std::shared_ptr< const rvsdg::Type > type)
 Create region exit result. More...
 

Private Member Functions

 ExitResult (rvsdg::Output &origin, rvsdg::StructuralOutput &output)
 

Private Attributes

friend LoopNode
 

Additional Inherited Members

- Public Types inherited from jlm::rvsdg::RegionResult
typedef util::IntrusiveListAccessor< RegionResult, &RegionResult::structural_output_anchor_structural_output_accessor
 
- Protected Member Functions inherited from jlm::rvsdg::Input
 Input (Node &owner, Output &origin, std::shared_ptr< const rvsdg::Type > type)
 
 Input (Region &owner, Output &origin, std::shared_ptr< const rvsdg::Type > type)
 

Detailed Description

Represents the exit result of the HLS loop.

Definition at line 685 of file hls.hpp.

Constructor & Destructor Documentation

◆ ExitResult()

jlm::hls::ExitResult::ExitResult ( rvsdg::Output origin,
rvsdg::StructuralOutput output 
)
private

Definition at line 121 of file hls.cpp.

◆ ~ExitResult()

jlm::hls::ExitResult::~ExitResult ( )
overridedefaultnoexcept

Member Function Documentation

◆ Copy()

ExitResult & jlm::hls::ExitResult::Copy ( rvsdg::Output origin,
rvsdg::StructuralOutput output 
) const
overridevirtual

Creates a copy of the result with origin and structural_output output. The result is created with the same type as origin and in the same region as origin.

Parameters
originThe origin for the result.
outputThe structural_output to the result, if any.
Returns
A reference to the copied result.

Reimplemented from jlm::rvsdg::RegionResult.

Definition at line 128 of file hls.cpp.

◆ Create()

static ExitResult& jlm::hls::ExitResult::Create ( rvsdg::Output origin,
rvsdg::StructuralOutput output 
)
inlinestatic

Definition at line 700 of file hls.hpp.

Member Data Documentation

◆ LoopNode

friend jlm::hls::ExitResult::LoopNode
private

Definition at line 687 of file hls.hpp.


The documentation for this class was generated from the following files: