|
Jlm
|
#include <operation.hpp>

Public Member Functions | |
| virtual | ~Operation () noexcept |
| virtual bool | operator== (const Operation &other) const noexcept=0 |
| virtual std::string | debug_string () const =0 |
| virtual std::unique_ptr< Operation > | copy () const =0 |
| bool | operator!= (const Operation &other) const noexcept |
Definition at line 24 of file operation.hpp.
|
virtualdefaultnoexcept |
Implemented in jlm::hls::BranchOperation, jlm::hls::ForkOperation, jlm::hls::MuxOperation, jlm::hls::SinkOperation, jlm::hls::PredicateBufferOperation, jlm::hls::LoopConstantBufferOperation, jlm::hls::BufferOperation, jlm::hls::TriggerOperation, jlm::hls::PrintOperation, jlm::hls::LoopOperation, jlm::hls::LoadOperation, jlm::hls::AddressQueueOperation, jlm::hls::StateGateOperation, jlm::hls::DecoupledLoadOperation, jlm::hls::MemoryResponseOperation, jlm::hls::MemoryRequestOperation, jlm::hls::StoreOperation, jlm::hls::LocalMemoryOperation, jlm::hls::LocalMemoryResponseOperation, jlm::hls::LocalLoadOperation, jlm::hls::LocalStoreOperation, jlm::hls::LocalMemoryRequestOperation, jlm::llvm::ExtractValueOperation, jlm::llvm::InsertValueOperation, jlm::llvm::AllocaOperation, jlm::llvm::SAddWithOverflowOperation, jlm::llvm::UAddWithOverflowOperation, jlm::llvm::SSubWithOverflowOperation, jlm::llvm::SMulWithOverflowOperation, jlm::llvm::UMulWithOverflowOperation, jlm::llvm::FShlOperation, jlm::llvm::BSwapOperation, jlm::llvm::CtlzOperation, jlm::llvm::CttzOperation, jlm::llvm::CtpopOperation, jlm::llvm::CallOperation, jlm::llvm::BitCastOperation, jlm::llvm::SExtOperation, jlm::llvm::ZExtOperation, jlm::llvm::TruncOperation, jlm::llvm::PtrToIntOperation, jlm::llvm::FPExtOperation, jlm::llvm::FPTruncOperation, jlm::llvm::UIToFPOperation, jlm::llvm::SIToFPOperation, jlm::llvm::IntToPtrOperation, jlm::llvm::FPToUIOperation, jlm::llvm::FPToSIOperation, jlm::llvm::ControlToIntOperation, jlm::llvm::FunctionToPointerOperation, jlm::llvm::PointerToFunctionOperation, jlm::llvm::LlvmDeltaOperation, jlm::llvm::FloorOperation, jlm::llvm::CeilOperation, jlm::llvm::RoundOperation, jlm::llvm::TruncIntrinsicOperation, jlm::llvm::CopysignOperation, jlm::llvm::RIntOperation, jlm::llvm::IsFPClassOperation, jlm::llvm::IsConstantOperation, jlm::llvm::PtrMaskOperation, jlm::llvm::GetElementPtrOperation, jlm::llvm::IntegerConstantOperation, jlm::llvm::IntegerAddOperation, jlm::llvm::IntegerSubOperation, jlm::llvm::IntegerMulOperation, jlm::llvm::IntegerSDivOperation, jlm::llvm::IntegerUDivOperation, jlm::llvm::IntegerSRemOperation, jlm::llvm::IntegerURemOperation, jlm::llvm::IntegerAShrOperation, jlm::llvm::IntegerShlOperation, jlm::llvm::IntegerLShrOperation, jlm::llvm::IntegerAndOperation, jlm::llvm::IntegerOrOperation, jlm::llvm::IntegerXorOperation, jlm::llvm::IntegerEqOperation, jlm::llvm::IntegerNeOperation, jlm::llvm::IntegerSgeOperation, jlm::llvm::IntegerSgtOperation, jlm::llvm::IntegerSleOperation, jlm::llvm::IntegerSltOperation, jlm::llvm::IntegerUgeOperation, jlm::llvm::IntegerUgtOperation, jlm::llvm::IntegerUleOperation, jlm::llvm::IntegerUltOperation, jlm::llvm::IOBarrierOperation, jlm::llvm::LlvmLambdaOperation, jlm::llvm::LoadVolatileOperation, jlm::llvm::LoadNonVolatileOperation, jlm::llvm::MemoryStateMergeOperation, jlm::llvm::MemoryStateJoinOperation, jlm::llvm::MemoryStateSplitOperation, jlm::llvm::LambdaEntryMemoryStateSplitOperation, jlm::llvm::LambdaExitMemoryStateMergeOperation, jlm::llvm::CallEntryMemoryStateMergeOperation, jlm::llvm::CallExitMemoryStateSplitOperation, jlm::llvm::SsaPhiOperation, jlm::llvm::AssignmentOperation, jlm::llvm::SelectOperation, jlm::llvm::VectorSelectOperation, jlm::llvm::BranchOperation, jlm::llvm::ConstantPointerNullOperation, jlm::llvm::ConstantDataArrayOperation, jlm::llvm::PtrCmpOperation, jlm::llvm::ConstantFP, jlm::llvm::FCmpOperation, jlm::llvm::UndefValueOperation, jlm::llvm::PoisonValueOperation, jlm::llvm::FreezeOperation, jlm::llvm::FBinaryOperation, jlm::llvm::FNegOperation, jlm::llvm::VariadicArgumentListOperation, jlm::llvm::ConstantStructOperation, jlm::llvm::ConstantArrayOperation, jlm::llvm::ConstantAggregateZeroOperation, jlm::llvm::ExtractElementOperation, jlm::llvm::ShuffleVectorOperation, jlm::llvm::ConstantVectorOperation, jlm::llvm::InsertElementOperation, jlm::llvm::VectorUnaryOperation, jlm::llvm::VectorBinaryOperation, jlm::llvm::ConstantDataVectorOperation, jlm::llvm::MallocOperation, jlm::llvm::FreeOperation, jlm::llvm::FMulAddIntrinsicOperation, jlm::llvm::MemCpyNonVolatileOperation, jlm::llvm::MemCpyVolatileOperation, jlm::llvm::MemSetNonVolatileOperation, jlm::llvm::MemMoveNonVolatileOperation, jlm::llvm::UMaxOperation, jlm::llvm::SMinOperation, jlm::llvm::UMinOperation, jlm::llvm::FAbsOperation, jlm::llvm::AbsOperation, jlm::llvm::SMaxOperation, jlm::llvm::StoreNonVolatileOperation, jlm::llvm::StoreVolatileOperation, jlm::rvsdg::FlattenedBinaryOperation, BinaryOperation, jlm::rvsdg::MakeBitUnaryOperation< reduction, name >, jlm::rvsdg::MakeBitBinaryOperation< reduction, name, opflags >, jlm::rvsdg::MakeBitComparisonOperation< reduction, name, opflags >, jlm::rvsdg::BitConcatOperation, jlm::rvsdg::BitConstantOperation, jlm::rvsdg::BitSliceOperation, jlm::rvsdg::ControlConstantOperation, jlm::rvsdg::MatchOperation, jlm::rvsdg::DeltaOperation, jlm::rvsdg::GammaOperation, jlm::rvsdg::LambdaOperation, jlm::rvsdg::PhiOperation, jlm::rvsdg::TestStructuralOperation, jlm::rvsdg::TestNullaryOperation, jlm::rvsdg::TestUnaryOperation, jlm::rvsdg::TestBinaryOperation, jlm::rvsdg::TestOperation, and jlm::rvsdg::ThetaOperation.
|
pure virtual |
Implemented in jlm::hls::BranchOperation, jlm::hls::ForkOperation, jlm::hls::MuxOperation, jlm::hls::SinkOperation, jlm::hls::PredicateBufferOperation, jlm::hls::LoopConstantBufferOperation, jlm::hls::BufferOperation, jlm::hls::TriggerOperation, jlm::hls::PrintOperation, jlm::hls::LoopOperation, jlm::hls::LoadOperation, jlm::hls::AddressQueueOperation, jlm::hls::StateGateOperation, jlm::hls::DecoupledLoadOperation, jlm::hls::MemoryResponseOperation, jlm::hls::MemoryRequestOperation, jlm::hls::StoreOperation, jlm::hls::LocalMemoryOperation, jlm::hls::LocalMemoryResponseOperation, jlm::hls::LocalLoadOperation, jlm::hls::LocalStoreOperation, jlm::hls::LocalMemoryRequestOperation, jlm::llvm::ExtractValueOperation, jlm::llvm::InsertValueOperation, jlm::llvm::AllocaOperation, jlm::llvm::SAddWithOverflowOperation, jlm::llvm::UAddWithOverflowOperation, jlm::llvm::SSubWithOverflowOperation, jlm::llvm::SMulWithOverflowOperation, jlm::llvm::UMulWithOverflowOperation, jlm::llvm::FShlOperation, jlm::llvm::BSwapOperation, jlm::llvm::CtlzOperation, jlm::llvm::CttzOperation, jlm::llvm::CtpopOperation, jlm::llvm::CallOperation, jlm::llvm::BitCastOperation, jlm::llvm::SExtOperation, jlm::llvm::ZExtOperation, jlm::llvm::TruncOperation, jlm::llvm::PtrToIntOperation, jlm::llvm::FPExtOperation, jlm::llvm::FPTruncOperation, jlm::llvm::UIToFPOperation, jlm::llvm::SIToFPOperation, jlm::llvm::IntToPtrOperation, jlm::llvm::FPToUIOperation, jlm::llvm::FPToSIOperation, jlm::llvm::ControlToIntOperation, jlm::llvm::FunctionToPointerOperation, jlm::llvm::PointerToFunctionOperation, jlm::llvm::LlvmDeltaOperation, jlm::llvm::FloorOperation, jlm::llvm::CeilOperation, jlm::llvm::RoundOperation, jlm::llvm::TruncIntrinsicOperation, jlm::llvm::CopysignOperation, jlm::llvm::RIntOperation, jlm::llvm::IsFPClassOperation, jlm::llvm::IsConstantOperation, jlm::llvm::PtrMaskOperation, jlm::llvm::GetElementPtrOperation, jlm::llvm::IntegerConstantOperation, jlm::llvm::IntegerAddOperation, jlm::llvm::IntegerSubOperation, jlm::llvm::IntegerMulOperation, jlm::llvm::IntegerSDivOperation, jlm::llvm::IntegerUDivOperation, jlm::llvm::IntegerSRemOperation, jlm::llvm::IntegerURemOperation, jlm::llvm::IntegerAShrOperation, jlm::llvm::IntegerShlOperation, jlm::llvm::IntegerLShrOperation, jlm::llvm::IntegerAndOperation, jlm::llvm::IntegerOrOperation, jlm::llvm::IntegerXorOperation, jlm::llvm::IntegerEqOperation, jlm::llvm::IntegerNeOperation, jlm::llvm::IntegerSgeOperation, jlm::llvm::IntegerSgtOperation, jlm::llvm::IntegerSleOperation, jlm::llvm::IntegerSltOperation, jlm::llvm::IntegerUgeOperation, jlm::llvm::IntegerUgtOperation, jlm::llvm::IntegerUleOperation, jlm::llvm::IntegerUltOperation, jlm::llvm::IOBarrierOperation, jlm::llvm::LlvmLambdaOperation, jlm::llvm::LoadVolatileOperation, jlm::llvm::LoadNonVolatileOperation, jlm::llvm::MemoryStateMergeOperation, jlm::llvm::MemoryStateJoinOperation, jlm::llvm::MemoryStateSplitOperation, jlm::llvm::LambdaEntryMemoryStateSplitOperation, jlm::llvm::LambdaExitMemoryStateMergeOperation, jlm::llvm::CallEntryMemoryStateMergeOperation, jlm::llvm::CallExitMemoryStateSplitOperation, jlm::llvm::SsaPhiOperation, jlm::llvm::AssignmentOperation, jlm::llvm::SelectOperation, jlm::llvm::VectorSelectOperation, jlm::llvm::BranchOperation, jlm::llvm::ConstantPointerNullOperation, jlm::llvm::ConstantDataArrayOperation, jlm::llvm::PtrCmpOperation, jlm::llvm::ConstantFP, jlm::llvm::FCmpOperation, jlm::llvm::UndefValueOperation, jlm::llvm::PoisonValueOperation, jlm::llvm::FreezeOperation, jlm::llvm::FBinaryOperation, jlm::llvm::FNegOperation, jlm::llvm::VariadicArgumentListOperation, jlm::llvm::ConstantStructOperation, jlm::llvm::ConstantArrayOperation, jlm::llvm::ConstantAggregateZeroOperation, jlm::llvm::ExtractElementOperation, jlm::llvm::ShuffleVectorOperation, jlm::llvm::ConstantVectorOperation, jlm::llvm::InsertElementOperation, jlm::llvm::VectorUnaryOperation, jlm::llvm::VectorBinaryOperation, jlm::llvm::ConstantDataVectorOperation, jlm::llvm::MallocOperation, jlm::llvm::FreeOperation, jlm::llvm::FMulAddIntrinsicOperation, jlm::llvm::MemCpyNonVolatileOperation, jlm::llvm::MemCpyVolatileOperation, jlm::llvm::MemSetNonVolatileOperation, jlm::llvm::MemMoveNonVolatileOperation, jlm::llvm::UMaxOperation, jlm::llvm::SMinOperation, jlm::llvm::UMinOperation, jlm::llvm::FAbsOperation, jlm::llvm::AbsOperation, jlm::llvm::SMaxOperation, jlm::llvm::StoreNonVolatileOperation, jlm::llvm::StoreVolatileOperation, jlm::rvsdg::FlattenedBinaryOperation, BinaryOperation, jlm::rvsdg::MakeBitUnaryOperation< reduction, name >, jlm::rvsdg::MakeBitBinaryOperation< reduction, name, opflags >, jlm::rvsdg::MakeBitComparisonOperation< reduction, name, opflags >, jlm::rvsdg::BitConcatOperation, jlm::rvsdg::BitConstantOperation, jlm::rvsdg::BitSliceOperation, jlm::rvsdg::ControlConstantOperation, jlm::rvsdg::MatchOperation, jlm::rvsdg::DeltaOperation, jlm::rvsdg::GammaOperation, jlm::rvsdg::LambdaOperation, jlm::rvsdg::PhiOperation, jlm::rvsdg::TestStructuralOperation, jlm::rvsdg::TestNullaryOperation, jlm::rvsdg::TestUnaryOperation, jlm::rvsdg::TestBinaryOperation, jlm::rvsdg::TestOperation, and jlm::rvsdg::ThetaOperation.
Definition at line 39 of file operation.hpp.
|
pure virtualnoexcept |
Implemented in jlm::hls::PrintOperation, jlm::hls::LocalMemoryOperation, jlm::hls::BranchOperation, jlm::hls::ForkOperation, jlm::hls::MuxOperation, jlm::hls::SinkOperation, jlm::hls::PredicateBufferOperation, jlm::hls::LoopConstantBufferOperation, jlm::hls::BufferOperation, jlm::hls::TriggerOperation, jlm::hls::LoadOperation, jlm::hls::AddressQueueOperation, jlm::hls::StateGateOperation, jlm::hls::DecoupledLoadOperation, jlm::hls::MemoryResponseOperation, jlm::hls::MemoryRequestOperation, jlm::hls::StoreOperation, jlm::hls::LocalMemoryResponseOperation, jlm::hls::LocalLoadOperation, jlm::hls::LocalStoreOperation, jlm::hls::LocalMemoryRequestOperation, jlm::rvsdg::FlattenedBinaryOperation, jlm::rvsdg::MakeBitUnaryOperation< reduction, name >, jlm::rvsdg::MakeBitBinaryOperation< reduction, name, opflags >, jlm::rvsdg::MakeBitComparisonOperation< reduction, name, opflags >, jlm::rvsdg::BitConcatOperation, jlm::rvsdg::BitConstantOperation, jlm::rvsdg::BitSliceOperation, jlm::rvsdg::ControlConstantOperation, jlm::rvsdg::MatchOperation, jlm::rvsdg::DeltaOperation, jlm::rvsdg::GammaOperation, jlm::rvsdg::LambdaOperation, jlm::rvsdg::StructuralOperation, jlm::rvsdg::TestNullaryOperation, jlm::rvsdg::TestUnaryOperation, jlm::rvsdg::TestBinaryOperation, and jlm::rvsdg::TestOperation.