18 return operation && operation->
result(0) == result(0);
27 std::unique_ptr<rvsdg::Operation>
30 return std::make_unique<FMulAddIntrinsicOperation>(*
this);
36 std::shared_ptr<const rvsdg::Type> scalarType =
type;
38 if (
const auto vectorType = std::dynamic_pointer_cast<const VectorType>(
type))
40 scalarType = std::static_pointer_cast<const rvsdg::Type>(vectorType->Type());
43 const auto fpType = std::dynamic_pointer_cast<const FloatingPointType>(scalarType);
46 throw std::runtime_error(
47 "FMulAddIntrinsicOperation::CheckAndExtractType: Expected floating point type.");
std::unique_ptr< Operation > copy() const override
std::string debug_string() const override
static void CheckType(const std::shared_ptr< const rvsdg::Type > &type)
~FMulAddIntrinsicOperation() noexcept override
const std::shared_ptr< const rvsdg::Type > & result(size_t index) const noexcept
Global memory state passed between functions.
static std::string type(const Node *n)
static std::string strfmt(Args... args)