Jlm
Public Member Functions | Static Public Member Functions | Static Private Member Functions | List of all members
jlm::llvm::PoisonValueOperation Class Referencefinal

PoisonValueOperation class. More...

#include <operators.hpp>

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

Public Member Functions

 ~PoisonValueOperation () noexcept override
 
 PoisonValueOperation (std::shared_ptr< const jlm::rvsdg::Type > type)
 
 PoisonValueOperation (const PoisonValueOperation &)=default
 
 PoisonValueOperation (PoisonValueOperation &&)=delete
 
PoisonValueOperationoperator= (const PoisonValueOperation &)=delete
 
PoisonValueOperationoperator= (PoisonValueOperation &&)=delete
 
bool operator== (const Operation &other) const noexcept override
 
std::string debug_string () const override
 
std::unique_ptr< Operation > copy () const override
 
const jlm::rvsdg::TypeGetType () const noexcept
 
- 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
 
bool operator!= (const Operation &other) const noexcept
 

Static Public Member Functions

static std::unique_ptr< llvm::ThreeAddressCodeCreate (const std::shared_ptr< const jlm::rvsdg::Type > &type)
 
static jlm::rvsdg::OutputCreate (rvsdg::Region *region, const std::shared_ptr< const jlm::rvsdg::Type > &type)
 

Static Private Member Functions

static std::shared_ptr< const jlm::rvsdg::TypeCheckAndConvertType (const std::shared_ptr< const jlm::rvsdg::Type > &type)
 

Detailed Description

PoisonValueOperation class.

This operator is the Jlm equivalent of LLVM's PoisonValue constant.

Definition at line 1060 of file operators.hpp.

Constructor & Destructor Documentation

◆ ~PoisonValueOperation()

jlm::llvm::PoisonValueOperation::~PoisonValueOperation ( )
overridedefaultnoexcept

◆ PoisonValueOperation() [1/3]

jlm::llvm::PoisonValueOperation::PoisonValueOperation ( std::shared_ptr< const jlm::rvsdg::Type type)
inlineexplicit

Definition at line 1065 of file operators.hpp.

◆ PoisonValueOperation() [2/3]

jlm::llvm::PoisonValueOperation::PoisonValueOperation ( const PoisonValueOperation )
default

◆ PoisonValueOperation() [3/3]

jlm::llvm::PoisonValueOperation::PoisonValueOperation ( PoisonValueOperation &&  )
delete

Member Function Documentation

◆ CheckAndConvertType()

static std::shared_ptr<const jlm::rvsdg::Type> jlm::llvm::PoisonValueOperation::CheckAndConvertType ( const std::shared_ptr< const jlm::rvsdg::Type > &  type)
inlinestaticprivate

Definition at line 1113 of file operators.hpp.

◆ copy()

std::unique_ptr< rvsdg::Operation > jlm::llvm::PoisonValueOperation::copy ( ) const
overridevirtual

Implements jlm::rvsdg::Operation.

Definition at line 537 of file operators.cpp.

◆ Create() [1/2]

static std::unique_ptr<llvm::ThreeAddressCode> jlm::llvm::PoisonValueOperation::Create ( const std::shared_ptr< const jlm::rvsdg::Type > &  type)
inlinestatic

Definition at line 1095 of file operators.hpp.

◆ Create() [2/2]

static jlm::rvsdg::Output* jlm::llvm::PoisonValueOperation::Create ( rvsdg::Region region,
const std::shared_ptr< const jlm::rvsdg::Type > &  type 
)
inlinestatic

Definition at line 1104 of file operators.hpp.

◆ debug_string()

std::string jlm::llvm::PoisonValueOperation::debug_string ( ) const
overridevirtual

Implements jlm::rvsdg::Operation.

Definition at line 531 of file operators.cpp.

◆ GetType()

const jlm::rvsdg::Type& jlm::llvm::PoisonValueOperation::GetType ( ) const
inlinenoexcept

Definition at line 1089 of file operators.hpp.

◆ operator=() [1/2]

PoisonValueOperation& jlm::llvm::PoisonValueOperation::operator= ( const PoisonValueOperation )
delete

◆ operator=() [2/2]

PoisonValueOperation& jlm::llvm::PoisonValueOperation::operator= ( PoisonValueOperation &&  )
delete

◆ operator==()

bool jlm::llvm::PoisonValueOperation::operator== ( const Operation &  other) const
overridenoexcept

Definition at line 524 of file operators.cpp.


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