Jlm
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Static Private Member Functions | List of all members
jlm::llvm::UAddWithOverflowOperation Class Referencefinal

#include <ArithmeticWithOverflowIntrinsicOperations.hpp>

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

Public Member Functions

 ~UAddWithOverflowOperation () noexcept override
 
 UAddWithOverflowOperation (const std::shared_ptr< const rvsdg::Type > &type)
 
bool operator== (const Operation &other) const noexcept override
 
std::string debug_string () const override
 
std::unique_ptr< Operation > copy () const override
 
std::shared_ptr< const rvsdg::TypegetOperandType () const noexcept
 
std::shared_ptr< const rvsdg::TypegetResultType () 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< ThreeAddressCodecreateTac (const Variable &operand1, const Variable &operand2)
 
static rvsdg::SimpleNodecreateNode (rvsdg::Output &operand1, rvsdg::Output &operand2)
 

Static Private Member Functions

static void checkOperandType (const std::shared_ptr< const rvsdg::Type > &type)
 

Detailed Description

Represents LLVM's llvm.uadd.with.overflow.* intrinsic

See LLVM Language Reference Manual for more details.

Definition at line 83 of file ArithmeticWithOverflowIntrinsicOperations.hpp.

Constructor & Destructor Documentation

◆ ~UAddWithOverflowOperation()

jlm::llvm::UAddWithOverflowOperation::~UAddWithOverflowOperation ( )
overridedefaultnoexcept

◆ UAddWithOverflowOperation()

jlm::llvm::UAddWithOverflowOperation::UAddWithOverflowOperation ( const std::shared_ptr< const rvsdg::Type > &  type)
inlineexplicit

Member Function Documentation

◆ checkOperandType()

void jlm::llvm::UAddWithOverflowOperation::checkOperandType ( const std::shared_ptr< const rvsdg::Type > &  type)
staticprivate

◆ copy()

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

◆ createNode()

static rvsdg::SimpleNode & jlm::llvm::UAddWithOverflowOperation::createNode ( rvsdg::Output operand1,
rvsdg::Output operand2 
)
inlinestatic

◆ createTac()

static std::unique_ptr< ThreeAddressCode > jlm::llvm::UAddWithOverflowOperation::createTac ( const Variable operand1,
const Variable operand2 
)
inlinestatic

◆ debug_string()

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

◆ getOperandType()

std::shared_ptr< const rvsdg::Type > jlm::llvm::UAddWithOverflowOperation::getOperandType ( ) const
inlinenoexcept

◆ getResultType()

std::shared_ptr< const rvsdg::Type > jlm::llvm::UAddWithOverflowOperation::getResultType ( ) const
inlinenoexcept

◆ operator==()

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

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