diff --git a/src/common/snippets/src/op/subgraph.cpp b/src/common/snippets/src/op/subgraph.cpp index 98e3392a65e1e2..fc32d0533dd697 100644 --- a/src/common/snippets/src/op/subgraph.cpp +++ b/src/common/snippets/src/op/subgraph.cpp @@ -19,6 +19,7 @@ #include "snippets/pass/align_element_types.hpp" #include "snippets/pass/reduce_to_snippets_reduce.hpp" #include "snippets/pass/gn_decomposition.hpp" +#include "snippets/pass/transform_convert.hpp" #include "snippets/runtime_configurator.hpp" #include "snippets/utils/utils.hpp" @@ -428,6 +429,7 @@ void Subgraph::data_flow_transformations(const BlockedShapeVector& blocked_input manager.register_pass(); manager.register_positioned_passes(backend_passes); + manager.register_pass(); manager.run_passes(body_ptr()); } diff --git a/src/common/snippets/src/pass/transform_convert.cpp b/src/common/snippets/src/pass/transform_convert.cpp index d486ec2733f85d..145118980b6179 100644 --- a/src/common/snippets/src/pass/transform_convert.cpp +++ b/src/common/snippets/src/pass/transform_convert.cpp @@ -12,15 +12,14 @@ ov::snippets::pass::TransformConvertToConvertTruncation::TransformConvertToConvertTruncation() { MATCHER_SCOPE(TransformConvertToConvertTruncation); - auto convert = std::make_shared(ov::pass::pattern::any_input(), + auto convert_pattern = std::make_shared(ov::pass::pattern::any_input(), [](const std::shared_ptr &n) { return ov::is_type(n) && !ov::is_type(n) && !ov::is_type(n); }); - register_matcher(std::make_shared( - ov::pass::pattern::wrap_type(), matcher_name), [](ov::pass::pattern::Matcher &m) { + register_matcher(std::make_shared(convert_pattern, matcher_name), [](ov::pass::pattern::Matcher &m) { OV_ITT_SCOPED_TASK(ov::pass::itt::domains::SnippetsTransform, "Snippets::op::TransformConvertToConvertTruncation") const auto root = m.get_match_root(); const auto convert = ov::as_type_ptr(root);