Jlm
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
jlm::llvm::MemSetOperation Class Referenceabstract

#include <StdLibIntrinsicOperations.hpp>

Inheritance diagram for jlm::llvm::MemSetOperation:
Inheritance graph
[legend]
Collaboration diagram for jlm::llvm::MemSetOperation:
Collaboration graph
[legend]

Public Member Functions

const rvsdg::BitTypelengthType () const noexcept
 
virtual size_t numMemoryStates () const noexcept=0
 
- 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
 
virtual std::string debug_string () const =0
 
virtual std::unique_ptr< Operationcopy () const =0
 
bool operator!= (const Operation &other) const noexcept
 

Static Public Member Functions

static rvsdg::InputdestinationInput (const rvsdg::Node &node) noexcept
 
static rvsdg::InputvalueInput (const rvsdg::Node &node) noexcept
 
static rvsdg::InputlengthInput (const rvsdg::Node &node) noexcept
 
static rvsdg::InputmapMemoryStateOutputToInput (const rvsdg::Output &output)
 
static rvsdg::OutputmapMemoryStateInputToOutput (const rvsdg::Input &input)
 

Protected Member Functions

 MemSetOperation (const std::vector< std::shared_ptr< const rvsdg::Type >> &operandTypes, const std::vector< std::shared_ptr< const rvsdg::Type >> &resultTypes)
 

Detailed Description

Abstract base class for memset operations.

See also
MemSetNonVolatileOperation

Definition at line 341 of file StdLibIntrinsicOperations.hpp.

Constructor & Destructor Documentation

◆ MemSetOperation()

jlm::llvm::MemSetOperation::MemSetOperation ( const std::vector< std::shared_ptr< const rvsdg::Type >> &  operandTypes,
const std::vector< std::shared_ptr< const rvsdg::Type >> &  resultTypes 
)
inlineprotected

Definition at line 344 of file StdLibIntrinsicOperations.hpp.

Member Function Documentation

◆ destinationInput()

static rvsdg::Input& jlm::llvm::MemSetOperation::destinationInput ( const rvsdg::Node node)
inlinestaticnoexcept
Parameters
nodea SimpleNode containing a MemSetOperation
Returns
the input of node that points to the destination to fill.

Definition at line 395 of file StdLibIntrinsicOperations.hpp.

◆ lengthInput()

static rvsdg::Input& jlm::llvm::MemSetOperation::lengthInput ( const rvsdg::Node node)
inlinestaticnoexcept
Parameters
nodea SimpleNode containing a MemSetOperation
Returns
the input of node that points to the number of bytes that need to be filled.

Definition at line 421 of file StdLibIntrinsicOperations.hpp.

◆ lengthType()

const rvsdg::BitType& jlm::llvm::MemSetOperation::lengthType ( ) const
inlinenoexcept
Returns
The type of the length argument

Definition at line 376 of file StdLibIntrinsicOperations.hpp.

◆ mapMemoryStateInputToOutput()

static rvsdg::Output& jlm::llvm::MemSetOperation::mapMemoryStateInputToOutput ( const rvsdg::Input input)
inlinestatic

Maps a memory state input to its corresponding memory state output.

Definition at line 455 of file StdLibIntrinsicOperations.hpp.

◆ mapMemoryStateOutputToInput()

static rvsdg::Input& jlm::llvm::MemSetOperation::mapMemoryStateOutputToInput ( const rvsdg::Output output)
inlinestatic

Maps a memory state output to its corresponding memory state input.

Definition at line 435 of file StdLibIntrinsicOperations.hpp.

◆ numMemoryStates()

virtual size_t jlm::llvm::MemSetOperation::numMemoryStates ( ) const
pure virtualnoexcept
Returns
Number of memory states

Implemented in jlm::llvm::MemSetNonVolatileOperation.

◆ valueInput()

static rvsdg::Input& jlm::llvm::MemSetOperation::valueInput ( const rvsdg::Node node)
inlinestaticnoexcept
Parameters
nodea SimpleNode containing a MemSetOperation
Returns
the input of node that points to the byte value with which to fill the memory

Definition at line 408 of file StdLibIntrinsicOperations.hpp.


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