; LLVM IR from NervanaSystems/ngraph :: src/ngraph/op/gru_cell.ll (ZNK6ngraph2op2v37GRUCell12decompose_opEv)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.std::vector.82" = type { %"struct.std::_Vector_base.83" }
%"struct.std::_Vector_base.83" = type { %"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl" }
%"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl" = type { %"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.ngraph::Output" = type { %"class.std::shared_ptr.79", i64 }
%"class.std::shared_ptr.79" = type { %"class.std::__shared_ptr.80" }
%"class.std::__shared_ptr.80" = type { ptr, %"class.std::__shared_count" }
%"class.std::__shared_count" = type { ptr }
%"class.std::shared_ptr.134" = type { %"class.std::__shared_ptr.135" }
%"class.std::__shared_ptr.135" = type { ptr, %"class.std::__shared_count" }
%"class.std::shared_ptr.137" = type { %"class.std::__shared_ptr.138" }
%"class.std::__shared_ptr.138" = type { ptr, %"class.std::__shared_count" }
%"class.ngraph::Shape" = type { %"class.std::vector.128" }
%"class.std::vector.128" = type { %"struct.std::_Vector_base.129" }
%"struct.std::_Vector_base.129" = type { %"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.74" = type { %"struct.std::_Vector_base.75" }
%"struct.std::_Vector_base.75" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::allocator.76" = type { i8 }
%"class.std::initializer_list.87" = type { ptr, i64 }
%"class.std::allocator.84" = type { i8 }
%"class.ngraph::op::v3::GRUCell" = type <{ %"class.ngraph::op::util::FusedOp", %"class.ngraph::op::util::RNNCellBase", %"class.ngraph::op::util::ActivationFunction", %"class.ngraph::op::util::ActivationFunction", i8, [7 x i8] }>
%"class.ngraph::op::util::FusedOp" = type { %"class.ngraph::op::Op" }
%"class.ngraph::op::Op" = type { %"class.ngraph::Node" }
%"class.ngraph::Node" = type { ptr, %"class.std::enable_shared_from_this", %"class.std::unordered_set", %"class.std::unordered_set", %"class.std::vector", %"class.std::vector.5", %"class.std::__cxx11::basic_string", i64, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::unordered_set.13", %"class.std::set", %"class.std::deque", %"class.std::deque.39", %"class.std::unordered_map", i32, %"class.std::shared_ptr", %"class.std::map" }
%"class.std::enable_shared_from_this" = type { %"class.std::weak_ptr" }
%"class.std::weak_ptr" = type { %"class.std::__weak_ptr" }
%"class.std::__weak_ptr" = type { ptr, %"class.std::__weak_count" }
%"class.std::__weak_count" = type { ptr }
%"class.std::unordered_set" = type { %"class.std::_Hashtable" }
%"class.std::_Hashtable" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.std::__detail::_Hash_node_base" = type { ptr }
%"struct.std::__detail::_Prime_rehash_policy" = type { float, i64 }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<ngraph::Node *, std::allocator<ngraph::Node *>>::_Vector_impl" }
%"struct.std::_Vector_base<ngraph::Node *, std::allocator<ngraph::Node *>>::_Vector_impl" = type { %"struct.std::_Vector_base<ngraph::Node *, std::allocator<ngraph::Node *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<ngraph::Node *, std::allocator<ngraph::Node *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.5" = type { %"struct.std::_Vector_base.6" }
%"struct.std::_Vector_base.6" = type { %"struct.std::_Vector_base<std::shared_ptr<ngraph::Node>, std::allocator<std::shared_ptr<ngraph::Node>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::shared_ptr<ngraph::Node>, std::allocator<std::shared_ptr<ngraph::Node>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::shared_ptr<ngraph::Node>, std::allocator<std::shared_ptr<ngraph::Node>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::shared_ptr<ngraph::Node>, std::allocator<std::shared_ptr<ngraph::Node>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::unordered_set.13" = type { %"class.std::_Hashtable.14" }
%"class.std::_Hashtable.14" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::set" = type { %"class.std::_Rb_tree" }
%"class.std::_Rb_tree" = type { %"struct.std::_Rb_tree<std::shared_ptr<ngraph::Node>, std::shared_ptr<ngraph::Node>, std::_Identity<std::shared_ptr<ngraph::Node>>, std::less<std::shared_ptr<ngraph::Node>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::shared_ptr<ngraph::Node>, std::shared_ptr<ngraph::Node>, std::_Identity<std::shared_ptr<ngraph::Node>>, std::less<std::shared_ptr<ngraph::Node>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_header" = type { %"struct.std::_Rb_tree_node_base", i64 }
%"struct.std::_Rb_tree_node_base" = type { i32, ptr, ptr, ptr }
%"class.std::deque" = type { %"class.std::_Deque_base" }
%"class.std::_Deque_base" = type { %"struct.std::_Deque_base<ngraph::descriptor::Input, std::allocator<ngraph::descriptor::Input>>::_Deque_impl" }
%"struct.std::_Deque_base<ngraph::descriptor::Input, std::allocator<ngraph::descriptor::Input>>::_Deque_impl" = type { %"struct.std::_Deque_base<ngraph::descriptor::Input, std::allocator<ngraph::descriptor::Input>>::_Deque_impl_data" }
%"struct.std::_Deque_base<ngraph::descriptor::Input, std::allocator<ngraph::descriptor::Input>>::_Deque_impl_data" = type { ptr, i64, %"struct.std::_Deque_iterator", %"struct.std::_Deque_iterator" }
%"struct.std::_Deque_iterator" = type { ptr, ptr, ptr, ptr }
%"class.std::deque.39" = type { %"class.std::_Deque_base.40" }
%"class.std::_Deque_base.40" = type { %"struct.std::_Deque_base<ngraph::descriptor::Output, std::allocator<ngraph::descriptor::Output>>::_Deque_impl" }
%"struct.std::_Deque_base<ngraph::descriptor::Output, std::allocator<ngraph::descriptor::Output>>::_Deque_impl" = type { %"struct.std::_Deque_base<ngraph::descriptor::Output, std::allocator<ngraph::descriptor::Output>>::_Deque_impl_data" }
%"struct.std::_Deque_base<ngraph::descriptor::Output, std::allocator<ngraph::descriptor::Output>>::_Deque_impl_data" = type { ptr, i64, %"struct.std::_Deque_iterator.44", %"struct.std::_Deque_iterator.44" }
%"struct.std::_Deque_iterator.44" = type { ptr, ptr, ptr, ptr }
%"class.std::unordered_map" = type { %"class.std::_Hashtable.45" }
%"class.std::_Hashtable.45" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::shared_ptr" = type { %"class.std::__shared_ptr" }
%"class.std::__shared_ptr" = type { ptr, %"class.std::__shared_count" }
%"class.std::map" = type { %"class.std::_Rb_tree.64" }
%"class.std::_Rb_tree.64" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::shared_ptr<ngraph::Variant>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::shared_ptr<ngraph::Variant>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::shared_ptr<ngraph::Variant>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::shared_ptr<ngraph::Variant>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"class.ngraph::op::util::RNNCellBase" = type { ptr, i64, float, %"class.std::vector.69", %"class.std::vector.74", %"class.std::vector.74" }
%"class.std::vector.69" = type { %"struct.std::_Vector_base.70" }
%"struct.std::_Vector_base.70" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.ngraph::op::util::ActivationFunction" = type { ptr, float, float }

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

declare i32 @__gxx_personality_v0(...)

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIfSaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSaIN6ngraph6OutputINS_4NodeEEEEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEC2ESt16initializer_listIS3_ERKS4_(ptr noundef nonnull align 8 dereferenceable(24), ptr, i64, ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIN6ngraph6OutputINS0_4NodeEEEED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 align 2

; Function Attrs: nounwind
declare void @_ZN6ngraph5ShapeD1Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #4

; Function Attrs: mustprogress uwtable
define dso_local void @_ZNK6ngraph2op2v37GRUCell12decompose_opEv(ptr dead_on_unwind noalias writable sret(%"class.std::vector.82") align 8 %0, ptr noundef nonnull align 8 dereferenceable(809) %1) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca ptr, align 8
  %4 = alloca ptr, align 8
  %5 = alloca %"class.ngraph::Output", align 8
  %6 = alloca %"class.ngraph::Output", align 8
  %7 = alloca ptr, align 8
  %8 = alloca i32, align 4
  %9 = alloca %"class.ngraph::Output", align 8
  %10 = alloca %"class.ngraph::Output", align 8
  %11 = alloca %"class.ngraph::Output", align 8
  %12 = alloca %"class.std::shared_ptr.134", align 8
  %13 = alloca %"class.std::shared_ptr.79", align 8
  %14 = alloca %"class.std::shared_ptr.79", align 8
  %15 = alloca %"class.std::shared_ptr.134", align 8
  %16 = alloca %"class.std::vector.82", align 8
  %17 = alloca %"class.ngraph::Output", align 8
  %18 = alloca %"class.std::vector.82", align 8
  %19 = alloca %"class.ngraph::Output", align 8
  %20 = alloca %"class.std::vector.82", align 8
  %21 = alloca %"class.ngraph::Output", align 8
  %22 = alloca %"class.std::vector.82", align 8
  %23 = alloca %"class.ngraph::Output", align 8
  %24 = alloca %"class.ngraph::Output", align 8
  %25 = alloca %"class.ngraph::Output", align 8
  %26 = alloca %"class.std::shared_ptr.79", align 8
  %27 = alloca %"class.ngraph::Output", align 8
  %28 = alloca %"class.std::shared_ptr.79", align 8
  %29 = alloca %"class.ngraph::Output", align 8
  %30 = alloca %"class.ngraph::Output", align 8
  %31 = alloca %"class.ngraph::Output", align 8
  %32 = alloca %"class.std::shared_ptr.79", align 8
  %33 = alloca %"class.ngraph::Output", align 8
  %34 = alloca %"class.std::shared_ptr.79", align 8
  %35 = alloca %"class.ngraph::Output", align 8
  %36 = alloca %"class.std::shared_ptr.79", align 8
  %37 = alloca %"class.ngraph::Output", align 8
  %38 = alloca %"class.ngraph::Output", align 8
  %39 = alloca %"class.ngraph::Output", align 8
  %40 = alloca %"class.std::shared_ptr.79", align 8
  %41 = alloca %"class.ngraph::Output", align 8
  %42 = alloca %"class.std::shared_ptr.79", align 8
  %43 = alloca %"class.ngraph::Output", align 8
  %44 = alloca %"class.std::shared_ptr.79", align 8
  %45 = alloca %"class.ngraph::Output", align 8
  %46 = alloca %"class.std::shared_ptr.79", align 8
  %47 = alloca %"class.std::shared_ptr.134", align 8
  %48 = alloca %"class.ngraph::Output", align 8
  %49 = alloca %"class.ngraph::Output", align 8
  %50 = alloca %"class.ngraph::Output", align 8
  %51 = alloca %"class.std::shared_ptr.79", align 8
  %52 = alloca %"class.ngraph::Output", align 8
  %53 = alloca %"class.std::shared_ptr.79", align 8
  %54 = alloca %"class.ngraph::Output", align 8
  %55 = alloca %"class.std::shared_ptr.137", align 8
  %56 = alloca %"class.ngraph::Shape", align 8
  %57 = alloca %"class.std::vector.74", align 8
  %58 = alloca float, align 4
  %59 = alloca %"class.std::allocator.76", align 1
  %60 = alloca %"class.ngraph::Output", align 8
  %61 = alloca %"class.std::shared_ptr.79", align 8
  %62 = alloca %"class.ngraph::Output", align 8
  %63 = alloca %"class.std::shared_ptr.79", align 8
  %64 = alloca %"class.ngraph::Output", align 8
  %65 = alloca %"class.std::shared_ptr.79", align 8
  %66 = alloca %"class.ngraph::Output", align 8
  %67 = alloca %"class.ngraph::Output", align 8
  %68 = alloca %"class.std::shared_ptr.79", align 8
  %69 = alloca %"class.std::initializer_list.87", align 8
  %70 = alloca [1 x %"class.ngraph::Output"], align 8
  %71 = alloca ptr, align 8
  %72 = alloca %"class.std::shared_ptr.79", align 8
  %73 = alloca i1, align 1
  %74 = alloca %"class.std::allocator.84", align 1
  store ptr %0, ptr %3, align 8
  store ptr %1, ptr %4, align 8, !tbaa !5
  %75 = load ptr, ptr %4, align 8
  call void @llvm.lifetime.start.p0(i64 24, ptr %5) #7
  call void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %5, ptr noundef nonnull align 8 dereferenceable(680) %75, i64 noundef 0)
  call void @llvm.lifetime.start.p0(i64 24, ptr %6) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %6, ptr noundef nonnull align 8 dereferenceable(680) %75, i64 noundef 1)
          to label %76 unwind label %141

76:                                               ; preds = %2
  call void @llvm.lifetime.start.p0(i64 24, ptr %9) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %9, ptr noundef nonnull align 8 dereferenceable(680) %75, i64 noundef 2)
          to label %77 unwind label %145

77:                                               ; preds = %76
  call void @llvm.lifetime.start.p0(i64 24, ptr %10) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %10, ptr noundef nonnull align 8 dereferenceable(680) %75, i64 noundef 3)
          to label %78 unwind label %149

78:                                               ; preds = %77
  call void @llvm.lifetime.start.p0(i64 24, ptr %11) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %11, ptr noundef nonnull align 8 dereferenceable(680) %75, i64 noundef 4)
          to label %79 unwind label %153

79:                                               ; preds = %78
  call void @llvm.lifetime.start.p0(i64 16, ptr %12) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %13) #7
  invoke void @_ZN6ngraph7builder9transposeERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %13, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %80 unwind label %157

80:                                               ; preds = %79
  invoke void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEESt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESB_E4typeEEDpOT0_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.134") align 8 %12, ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(16) %13)
          to label %81 unwind label %161

81:                                               ; preds = %80
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %13) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %13) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %14) #7
  invoke void @_ZN6ngraph7builder9transposeERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %14, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %82 unwind label %166

82:                                               ; preds = %81
  call void @llvm.lifetime.start.p0(i64 16, ptr %15) #7
  invoke void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEERSt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.134") align 8 %15, ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 8 dereferenceable(16) %14)
          to label %83 unwind label %170

83:                                               ; preds = %82
  call void @llvm.lifetime.start.p0(i64 24, ptr %16) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %17) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %17, ptr noundef nonnull align 8 dereferenceable(16) %12)
          to label %84 unwind label %174

84:                                               ; preds = %83
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind writable sret(%"class.std::vector.82") align 8 %16, ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef 3, i32 noundef 1)
          to label %85 unwind label %178

85:                                               ; preds = %84
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %18) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %19) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %19, ptr noundef nonnull align 8 dereferenceable(16) %14)
          to label %86 unwind label %183

86:                                               ; preds = %85
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind writable sret(%"class.std::vector.82") align 8 %18, ptr noundef nonnull align 8 dereferenceable(24) %19, i64 noundef 3, i32 noundef 1)
          to label %87 unwind label %187

87:                                               ; preds = %86
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %19) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %20) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %21) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %21, ptr noundef nonnull align 8 dereferenceable(16) %15)
          to label %88 unwind label %192

88:                                               ; preds = %87
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind writable sret(%"class.std::vector.82") align 8 %20, ptr noundef nonnull align 8 dereferenceable(24) %21, i64 noundef 3, i32 noundef 1)
          to label %89 unwind label %196

89:                                               ; preds = %88
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %21) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %22) #7
  %90 = getelementptr inbounds %"class.ngraph::op::v3::GRUCell", ptr %75, i32 0, i32 4
  %91 = load i8, ptr %90, align 8, !tbaa !9, !range !76, !noundef !77
  %92 = trunc i8 %91 to i1
  br i1 %92, label %93, label %95

93:                                               ; preds = %89
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind writable sret(%"class.std::vector.82") align 8 %22, ptr noundef nonnull align 8 dereferenceable(24) %11, i64 noundef 4, i32 noundef 0)
          to label %94 unwind label %201

94:                                               ; preds = %93
  br label %97

95:                                               ; preds = %89
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind writable sret(%"class.std::vector.82") align 8 %22, ptr noundef nonnull align 8 dereferenceable(24) %11, i64 noundef 3, i32 noundef 0)
          to label %96 unwind label %201

96:                                               ; preds = %95
  br label %97

97:                                               ; preds = %96, %94
  call void @llvm.lifetime.start.p0(i64 24, ptr %23) #7
  %98 = getelementptr inbounds %"class.ngraph::op::v3::GRUCell", ptr %75, i32 0, i32 2
  call void @llvm.lifetime.start.p0(i64 24, ptr %24) #7
  %99 = getelementptr inbounds i8, ptr %75, i64 680
  call void @llvm.lifetime.start.p0(i64 24, ptr %25) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %26) #7
  %100 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %16, i64 noundef 0) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %27) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %28) #7
  %101 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %20, i64 noundef 0) #7
  %102 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef 0) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %28, ptr noundef nonnull align 8 dereferenceable(24) %101, ptr noundef nonnull align 8 dereferenceable(24) %102)
          to label %103 unwind label %205

103:                                              ; preds = %97
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(16) %28)
          to label %104 unwind label %209

104:                                              ; preds = %103
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %26, ptr noundef nonnull align 8 dereferenceable(24) %100, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %105 unwind label %213

105:                                              ; preds = %104
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 8 dereferenceable(16) %26)
          to label %106 unwind label %217

106:                                              ; preds = %105
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %24, ptr noundef nonnull align 8 dereferenceable(96) %99, ptr noundef nonnull align 8 dereferenceable(24) %25)
          to label %107 unwind label %221

107:                                              ; preds = %106
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %23, ptr noundef nonnull align 8 dereferenceable(16) %98, ptr noundef nonnull align 8 dereferenceable(24) %24)
          to label %108 unwind label %225

108:                                              ; preds = %107
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %26) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %28) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %27) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %26) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %25) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %24) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %29) #7
  %109 = getelementptr inbounds %"class.ngraph::op::v3::GRUCell", ptr %75, i32 0, i32 2
  call void @llvm.lifetime.start.p0(i64 24, ptr %30) #7
  %110 = getelementptr inbounds i8, ptr %75, i64 680
  call void @llvm.lifetime.start.p0(i64 24, ptr %31) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %32) #7
  %111 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %16, i64 noundef 1) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %33) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %34) #7
  %112 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %20, i64 noundef 1) #7
  %113 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef 1) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %34, ptr noundef nonnull align 8 dereferenceable(24) %112, ptr noundef nonnull align 8 dereferenceable(24) %113)
          to label %114 unwind label %234

114:                                              ; preds = %108
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(16) %34)
          to label %115 unwind label %238

115:                                              ; preds = %114
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %32, ptr noundef nonnull align 8 dereferenceable(24) %111, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %116 unwind label %242

116:                                              ; preds = %115
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %31, ptr noundef nonnull align 8 dereferenceable(16) %32)
          to label %117 unwind label %246

117:                                              ; preds = %116
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %30, ptr noundef nonnull align 8 dereferenceable(96) %110, ptr noundef nonnull align 8 dereferenceable(24) %31)
          to label %118 unwind label %250

118:                                              ; preds = %117
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %29, ptr noundef nonnull align 8 dereferenceable(16) %109, ptr noundef nonnull align 8 dereferenceable(24) %30)
          to label %119 unwind label %254

119:                                              ; preds = %118
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %30) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %31) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %32) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %34) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %34) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %33) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %32) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %31) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %30) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %35) #7
  call void @_ZN6ngraph6OutputINS_4NodeEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #7
  %120 = getelementptr inbounds %"class.ngraph::op::v3::GRUCell", ptr %75, i32 0, i32 4
  %121 = load i8, ptr %120, align 8, !tbaa !9, !range !76, !noundef !77
  %122 = trunc i8 %121 to i1
  br i1 %122, label %123, label %312

123:                                              ; preds = %119
  call void @llvm.lifetime.start.p0(i64 16, ptr %36) #7
  %124 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %20, i64 noundef 2) #7
  %125 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef 3) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %36, ptr noundef nonnull align 8 dereferenceable(24) %124, ptr noundef nonnull align 8 dereferenceable(24) %125)
          to label %126 unwind label %263

126:                                              ; preds = %123
  call void @llvm.lifetime.start.p0(i64 24, ptr %37) #7
  %127 = getelementptr inbounds %"class.ngraph::op::v3::GRUCell", ptr %75, i32 0, i32 3
  call void @llvm.lifetime.start.p0(i64 24, ptr %38) #7
  %128 = getelementptr inbounds i8, ptr %75, i64 680
  call void @llvm.lifetime.start.p0(i64 24, ptr %39) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %40) #7
  %129 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %16, i64 noundef 2) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %41) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %42) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %43) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %44) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %45) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %45, ptr noundef nonnull align 8 dereferenceable(16) %36)
          to label %130 unwind label %267

130:                                              ; preds = %126
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %44, ptr noundef nonnull align 8 dereferenceable(24) %29, ptr noundef nonnull align 8 dereferenceable(24) %45)
          to label %131 unwind label %271

131:                                              ; preds = %130
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %43, ptr noundef nonnull align 8 dereferenceable(16) %44)
          to label %132 unwind label %275

132:                                              ; preds = %131
  %133 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef 2) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %42, ptr noundef nonnull align 8 dereferenceable(24) %43, ptr noundef nonnull align 8 dereferenceable(24) %133)
          to label %134 unwind label %279

134:                                              ; preds = %132
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %41, ptr noundef nonnull align 8 dereferenceable(16) %42)
          to label %135 unwind label %283

135:                                              ; preds = %134
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %40, ptr noundef nonnull align 8 dereferenceable(24) %129, ptr noundef nonnull align 8 dereferenceable(24) %41)
          to label %136 unwind label %287

136:                                              ; preds = %135
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %39, ptr noundef nonnull align 8 dereferenceable(16) %40)
          to label %137 unwind label %291

137:                                              ; preds = %136
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %38, ptr noundef nonnull align 8 dereferenceable(96) %128, ptr noundef nonnull align 8 dereferenceable(24) %39)
          to label %138 unwind label %295

138:                                              ; preds = %137
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %37, ptr noundef nonnull align 8 dereferenceable(16) %127, ptr noundef nonnull align 8 dereferenceable(24) %38)
          to label %139 unwind label %299

139:                                              ; preds = %138
  %140 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %35, ptr noundef nonnull align 8 dereferenceable(24) %37) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %40) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %42) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %43) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %44) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %45) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %45) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %44) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %43) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %42) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %41) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %40) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %39) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %38) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %37) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %36) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %36) #7
  br label %372

141:                                              ; preds = %2
  %142 = landingpad { ptr, i32 }
          cleanup
  %143 = extractvalue { ptr, i32 } %142, 0
  store ptr %143, ptr %7, align 8
  %144 = extractvalue { ptr, i32 } %142, 1
  store i32 %144, ptr %8, align 4
  br label %518

145:                                              ; preds = %76
  %146 = landingpad { ptr, i32 }
          cleanup
  %147 = extractvalue { ptr, i32 } %146, 0
  store ptr %147, ptr %7, align 8
  %148 = extractvalue { ptr, i32 } %146, 1
  store i32 %148, ptr %8, align 4
  br label %517

149:                                              ; preds = %77
  %150 = landingpad { ptr, i32 }
          cleanup
  %151 = extractvalue { ptr, i32 } %150, 0
  store ptr %151, ptr %7, align 8
  %152 = extractvalue { ptr, i32 } %150, 1
  store i32 %152, ptr %8, align 4
  br label %516

153:                                              ; preds = %78
  %154 = landingpad { ptr, i32 }
          cleanup
  %155 = extractvalue { ptr, i32 } %154, 0
  store ptr %155, ptr %7, align 8
  %156 = extractvalue { ptr, i32 } %154, 1
  store i32 %156, ptr %8, align 4
  br label %515

157:                                              ; preds = %79
  %158 = landingpad { ptr, i32 }
          cleanup
  %159 = extractvalue { ptr, i32 } %158, 0
  store ptr %159, ptr %7, align 8
  %160 = extractvalue { ptr, i32 } %158, 1
  store i32 %160, ptr %8, align 4
  br label %165

161:                                              ; preds = %80
  %162 = landingpad { ptr, i32 }
          cleanup
  %163 = extractvalue { ptr, i32 } %162, 0
  store ptr %163, ptr %7, align 8
  %164 = extractvalue { ptr, i32 } %162, 1
  store i32 %164, ptr %8, align 4
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %13) #7
  br label %165

165:                                              ; preds = %161, %157
  call void @llvm.lifetime.end.p0(i64 16, ptr %13) #7
  br label %514

166:                                              ; preds = %81
  %167 = landingpad { ptr, i32 }
          cleanup
  %168 = extractvalue { ptr, i32 } %167, 0
  store ptr %168, ptr %7, align 8
  %169 = extractvalue { ptr, i32 } %167, 1
  store i32 %169, ptr %8, align 4
  br label %513

170:                                              ; preds = %82
  %171 = landingpad { ptr, i32 }
          cleanup
  %172 = extractvalue { ptr, i32 } %171, 0
  store ptr %172, ptr %7, align 8
  %173 = extractvalue { ptr, i32 } %171, 1
  store i32 %173, ptr %8, align 4
  br label %512

174:                                              ; preds = %83
  %175 = landingpad { ptr, i32 }
          cleanup
  %176 = extractvalue { ptr, i32 } %175, 0
  store ptr %176, ptr %7, align 8
  %177 = extractvalue { ptr, i32 } %175, 1
  store i32 %177, ptr %8, align 4
  br label %182

178:                                              ; preds = %84
  %179 = landingpad { ptr, i32 }
          cleanup
  %180 = extractvalue { ptr, i32 } %179, 0
  store ptr %180, ptr %7, align 8
  %181 = extractvalue { ptr, i32 } %179, 1
  store i32 %181, ptr %8, align 4
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  br label %182

182:                                              ; preds = %178, %174
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #7
  br label %511

183:                                              ; preds = %85
  %184 = landingpad { ptr, i32 }
          cleanup
  %185 = extractvalue { ptr, i32 } %184, 0
  store ptr %185, ptr %7, align 8
  %186 = extractvalue { ptr, i32 } %184, 1
  store i32 %186, ptr %8, align 4
  br label %191

187:                                              ; preds = %86
  %188 = landingpad { ptr, i32 }
          cleanup
  %189 = extractvalue { ptr, i32 } %188, 0
  store ptr %189, ptr %7, align 8
  %190 = extractvalue { ptr, i32 } %188, 1
  store i32 %190, ptr %8, align 4
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #7
  br label %191

191:                                              ; preds = %187, %183
  call void @llvm.lifetime.end.p0(i64 24, ptr %19) #7
  br label %510

192:                                              ; preds = %87
  %193 = landingpad { ptr, i32 }
          cleanup
  %194 = extractvalue { ptr, i32 } %193, 0
  store ptr %194, ptr %7, align 8
  %195 = extractvalue { ptr, i32 } %193, 1
  store i32 %195, ptr %8, align 4
  br label %200

196:                                              ; preds = %88
  %197 = landingpad { ptr, i32 }
          cleanup
  %198 = extractvalue { ptr, i32 } %197, 0
  store ptr %198, ptr %7, align 8
  %199 = extractvalue { ptr, i32 } %197, 1
  store i32 %199, ptr %8, align 4
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #7
  br label %200

200:                                              ; preds = %196, %192
  call void @llvm.lifetime.end.p0(i64 24, ptr %21) #7
  br label %509

201:                                              ; preds = %95, %93
  %202 = landingpad { ptr, i32 }
          cleanup
  %203 = extractvalue { ptr, i32 } %202, 0
  store ptr %203, ptr %7, align 8
  %204 = extractvalue { ptr, i32 } %202, 1
  store i32 %204, ptr %8, align 4
  br label %508

205:                                              ; preds = %97
  %206 = landingpad { ptr, i32 }
          cleanup
  %207 = extractvalue { ptr, i32 } %206, 0
  store ptr %207, ptr %7, align 8
  %208 = extractvalue { ptr, i32 } %206, 1
  store i32 %208, ptr %8, align 4
  br label %233

209:                                              ; preds = %103
  %210 = landingpad { ptr, i32 }
          cleanup
  %211 = extractvalue { ptr, i32 } %210, 0
  store ptr %211, ptr %7, align 8
  %212 = extractvalue { ptr, i32 } %210, 1
  store i32 %212, ptr %8, align 4
  br label %232

213:                                              ; preds = %104
  %214 = landingpad { ptr, i32 }
          cleanup
  %215 = extractvalue { ptr, i32 } %214, 0
  store ptr %215, ptr %7, align 8
  %216 = extractvalue { ptr, i32 } %214, 1
  store i32 %216, ptr %8, align 4
  br label %231

217:                                              ; preds = %105
  %218 = landingpad { ptr, i32 }
          cleanup
  %219 = extractvalue { ptr, i32 } %218, 0
  store ptr %219, ptr %7, align 8
  %220 = extractvalue { ptr, i32 } %218, 1
  store i32 %220, ptr %8, align 4
  br label %230

221:                                              ; preds = %106
  %222 = landingpad { ptr, i32 }
          cleanup
  %223 = extractvalue { ptr, i32 } %222, 0
  store ptr %223, ptr %7, align 8
  %224 = extractvalue { ptr, i32 } %222, 1
  store i32 %224, ptr %8, align 4
  br label %229

225:                                              ; preds = %107
  %226 = landingpad { ptr, i32 }
          cleanup
  %227 = extractvalue { ptr, i32 } %226, 0
  store ptr %227, ptr %7, align 8
  %228 = extractvalue { ptr, i32 } %226, 1
  store i32 %228, ptr %8, align 4
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #7
  br label %229

229:                                              ; preds = %225, %221
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #7
  br label %230

230:                                              ; preds = %229, %217
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %26) #7
  br label %231

231:                                              ; preds = %230, %213
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  br label %232

232:                                              ; preds = %231, %209
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  br label %233

233:                                              ; preds = %232, %205
  call void @llvm.lifetime.end.p0(i64 16, ptr %28) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %27) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %26) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %25) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %24) #7
  br label %507

234:                                              ; preds = %108
  %235 = landingpad { ptr, i32 }
          cleanup
  %236 = extractvalue { ptr, i32 } %235, 0
  store ptr %236, ptr %7, align 8
  %237 = extractvalue { ptr, i32 } %235, 1
  store i32 %237, ptr %8, align 4
  br label %262

238:                                              ; preds = %114
  %239 = landingpad { ptr, i32 }
          cleanup
  %240 = extractvalue { ptr, i32 } %239, 0
  store ptr %240, ptr %7, align 8
  %241 = extractvalue { ptr, i32 } %239, 1
  store i32 %241, ptr %8, align 4
  br label %261

242:                                              ; preds = %115
  %243 = landingpad { ptr, i32 }
          cleanup
  %244 = extractvalue { ptr, i32 } %243, 0
  store ptr %244, ptr %7, align 8
  %245 = extractvalue { ptr, i32 } %243, 1
  store i32 %245, ptr %8, align 4
  br label %260

246:                                              ; preds = %116
  %247 = landingpad { ptr, i32 }
          cleanup
  %248 = extractvalue { ptr, i32 } %247, 0
  store ptr %248, ptr %7, align 8
  %249 = extractvalue { ptr, i32 } %247, 1
  store i32 %249, ptr %8, align 4
  br label %259

250:                                              ; preds = %117
  %251 = landingpad { ptr, i32 }
          cleanup
  %252 = extractvalue { ptr, i32 } %251, 0
  store ptr %252, ptr %7, align 8
  %253 = extractvalue { ptr, i32 } %251, 1
  store i32 %253, ptr %8, align 4
  br label %258

254:                                              ; preds = %118
  %255 = landingpad { ptr, i32 }
          cleanup
  %256 = extractvalue { ptr, i32 } %255, 0
  store ptr %256, ptr %7, align 8
  %257 = extractvalue { ptr, i32 } %255, 1
  store i32 %257, ptr %8, align 4
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %30) #7
  br label %258

258:                                              ; preds = %254, %250
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %31) #7
  br label %259

259:                                              ; preds = %258, %246
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %32) #7
  br label %260

260:                                              ; preds = %259, %242
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #7
  br label %261

261:                                              ; preds = %260, %238
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %34) #7
  br label %262

262:                                              ; preds = %261, %234
  call void @llvm.lifetime.end.p0(i64 16, ptr %34) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %33) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %32) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %31) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %30) #7
  br label %506

263:                                              ; preds = %123
  %264 = landingpad { ptr, i32 }
          cleanup
  %265 = extractvalue { ptr, i32 } %264, 0
  store ptr %265, ptr %7, align 8
  %266 = extractvalue { ptr, i32 } %264, 1
  store i32 %266, ptr %8, align 4
  br label %311

267:                                              ; preds = %126
  %268 = landingpad { ptr, i32 }
          cleanup
  %269 = extractvalue { ptr, i32 } %268, 0
  store ptr %269, ptr %7, align 8
  %270 = extractvalue { ptr, i32 } %268, 1
  store i32 %270, ptr %8, align 4
  br label %310

271:                                              ; preds = %130
  %272 = landingpad { ptr, i32 }
          cleanup
  %273 = extractvalue { ptr, i32 } %272, 0
  store ptr %273, ptr %7, align 8
  %274 = extractvalue { ptr, i32 } %272, 1
  store i32 %274, ptr %8, align 4
  br label %309

275:                                              ; preds = %131
  %276 = landingpad { ptr, i32 }
          cleanup
  %277 = extractvalue { ptr, i32 } %276, 0
  store ptr %277, ptr %7, align 8
  %278 = extractvalue { ptr, i32 } %276, 1
  store i32 %278, ptr %8, align 4
  br label %308

279:                                              ; preds = %132
  %280 = landingpad { ptr, i32 }
          cleanup
  %281 = extractvalue { ptr, i32 } %280, 0
  store ptr %281, ptr %7, align 8
  %282 = extractvalue { ptr, i32 } %280, 1
  store i32 %282, ptr %8, align 4
  br label %307

283:                                              ; preds = %134
  %284 = landingpad { ptr, i32 }
          cleanup
  %285 = extractvalue { ptr, i32 } %284, 0
  store ptr %285, ptr %7, align 8
  %286 = extractvalue { ptr, i32 } %284, 1
  store i32 %286, ptr %8, align 4
  br label %306

287:                                              ; preds = %135
  %288 = landingpad { ptr, i32 }
          cleanup
  %289 = extractvalue { ptr, i32 } %288, 0
  store ptr %289, ptr %7, align 8
  %290 = extractvalue { ptr, i32 } %288, 1
  store i32 %290, ptr %8, align 4
  br label %305

291:                                              ; preds = %136
  %292 = landingpad { ptr, i32 }
          cleanup
  %293 = extractvalue { ptr, i32 } %292, 0
  store ptr %293, ptr %7, align 8
  %294 = extractvalue { ptr, i32 } %292, 1
  store i32 %294, ptr %8, align 4
  br label %304

295:                                              ; preds = %137
  %296 = landingpad { ptr, i32 }
          cleanup
  %297 = extractvalue { ptr, i32 } %296, 0
  store ptr %297, ptr %7, align 8
  %298 = extractvalue { ptr, i32 } %296, 1
  store i32 %298, ptr %8, align 4
  br label %303

299:                                              ; preds = %138
  %300 = landingpad { ptr, i32 }
          cleanup
  %301 = extractvalue { ptr, i32 } %300, 0
  store ptr %301, ptr %7, align 8
  %302 = extractvalue { ptr, i32 } %300, 1
  store i32 %302, ptr %8, align 4
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #7
  br label %303

303:                                              ; preds = %299, %295
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #7
  br label %304

304:                                              ; preds = %303, %291
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %40) #7
  br label %305

305:                                              ; preds = %304, %287
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  br label %306

306:                                              ; preds = %305, %283
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %42) #7
  br label %307

307:                                              ; preds = %306, %279
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %43) #7
  br label %308

308:                                              ; preds = %307, %275
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %44) #7
  br label %309

309:                                              ; preds = %308, %271
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %45) #7
  br label %310

310:                                              ; preds = %309, %267
  call void @llvm.lifetime.end.p0(i64 24, ptr %45) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %44) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %43) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %42) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %41) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %40) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %39) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %38) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %37) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %36) #7
  br label %311

311:                                              ; preds = %310, %263
  call void @llvm.lifetime.end.p0(i64 16, ptr %36) #7
  br label %505

312:                                              ; preds = %119
  call void @llvm.lifetime.start.p0(i64 16, ptr %46) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %46, ptr noundef nonnull align 8 dereferenceable(24) %29, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %313 unwind label %328

313:                                              ; preds = %312
  call void @llvm.lifetime.start.p0(i64 16, ptr %47) #7
  %314 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %18, i64 noundef 2) #7
  invoke void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRSt10shared_ptrINS0_4NodeEERNS0_6OutputIS5_EEEES4_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.134") align 8 %47, ptr noundef nonnull align 8 dereferenceable(16) %46, ptr noundef nonnull align 8 dereferenceable(24) %314)
          to label %315 unwind label %332

315:                                              ; preds = %313
  call void @llvm.lifetime.start.p0(i64 24, ptr %48) #7
  %316 = getelementptr inbounds %"class.ngraph::op::v3::GRUCell", ptr %75, i32 0, i32 3
  call void @llvm.lifetime.start.p0(i64 24, ptr %49) #7
  %317 = getelementptr inbounds i8, ptr %75, i64 680
  call void @llvm.lifetime.start.p0(i64 24, ptr %50) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %51) #7
  %318 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %16, i64 noundef 2) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %52) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %53) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %54) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %54, ptr noundef nonnull align 8 dereferenceable(16) %47)
          to label %319 unwind label %336

319:                                              ; preds = %315
  %320 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef 2) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %53, ptr noundef nonnull align 8 dereferenceable(24) %54, ptr noundef nonnull align 8 dereferenceable(24) %320)
          to label %321 unwind label %340

321:                                              ; preds = %319
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %52, ptr noundef nonnull align 8 dereferenceable(16) %53)
          to label %322 unwind label %344

322:                                              ; preds = %321
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %51, ptr noundef nonnull align 8 dereferenceable(24) %318, ptr noundef nonnull align 8 dereferenceable(24) %52)
          to label %323 unwind label %348

323:                                              ; preds = %322
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %50, ptr noundef nonnull align 8 dereferenceable(16) %51)
          to label %324 unwind label %352

324:                                              ; preds = %323
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %49, ptr noundef nonnull align 8 dereferenceable(96) %317, ptr noundef nonnull align 8 dereferenceable(24) %50)
          to label %325 unwind label %356

325:                                              ; preds = %324
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8 %48, ptr noundef nonnull align 8 dereferenceable(16) %316, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %326 unwind label %360

326:                                              ; preds = %325
  %327 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %35, ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %50) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %51) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %53) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %54) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %54) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %53) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %52) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %51) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %50) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %49) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %48) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %47) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %47) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %46) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %46) #7
  br label %372

328:                                              ; preds = %312
  %329 = landingpad { ptr, i32 }
          cleanup
  %330 = extractvalue { ptr, i32 } %329, 0
  store ptr %330, ptr %7, align 8
  %331 = extractvalue { ptr, i32 } %329, 1
  store i32 %331, ptr %8, align 4
  br label %371

332:                                              ; preds = %313
  %333 = landingpad { ptr, i32 }
          cleanup
  %334 = extractvalue { ptr, i32 } %333, 0
  store ptr %334, ptr %7, align 8
  %335 = extractvalue { ptr, i32 } %333, 1
  store i32 %335, ptr %8, align 4
  br label %370

336:                                              ; preds = %315
  %337 = landingpad { ptr, i32 }
          cleanup
  %338 = extractvalue { ptr, i32 } %337, 0
  store ptr %338, ptr %7, align 8
  %339 = extractvalue { ptr, i32 } %337, 1
  store i32 %339, ptr %8, align 4
  br label %369

340:                                              ; preds = %319
  %341 = landingpad { ptr, i32 }
          cleanup
  %342 = extractvalue { ptr, i32 } %341, 0
  store ptr %342, ptr %7, align 8
  %343 = extractvalue { ptr, i32 } %341, 1
  store i32 %343, ptr %8, align 4
  br label %368

344:                                              ; preds = %321
  %345 = landingpad { ptr, i32 }
          cleanup
  %346 = extractvalue { ptr, i32 } %345, 0
  store ptr %346, ptr %7, align 8
  %347 = extractvalue { ptr, i32 } %345, 1
  store i32 %347, ptr %8, align 4
  br label %367

348:                                              ; preds = %322
  %349 = landingpad { ptr, i32 }
          cleanup
  %350 = extractvalue { ptr, i32 } %349, 0
  store ptr %350, ptr %7, align 8
  %351 = extractvalue { ptr, i32 } %349, 1
  store i32 %351, ptr %8, align 4
  br label %366

352:                                              ; preds = %323
  %353 = landingpad { ptr, i32 }
          cleanup
  %354 = extractvalue { ptr, i32 } %353, 0
  store ptr %354, ptr %7, align 8
  %355 = extractvalue { ptr, i32 } %353, 1
  store i32 %355, ptr %8, align 4
  br label %365

356:                                              ; preds = %324
  %357 = landingpad { ptr, i32 }
          cleanup
  %358 = extractvalue { ptr, i32 } %357, 0
  store ptr %358, ptr %7, align 8
  %359 = extractvalue { ptr, i32 } %357, 1
  store i32 %359, ptr %8, align 4
  br label %364

360:                                              ; preds = %325
  %361 = landingpad { ptr, i32 }
          cleanup
  %362 = extractvalue { ptr, i32 } %361, 0
  store ptr %362, ptr %7, align 8
  %363 = extractvalue { ptr, i32 } %361, 1
  store i32 %363, ptr %8, align 4
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #7
  br label %364

364:                                              ; preds = %360, %356
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %50) #7
  br label %365

365:                                              ; preds = %364, %352
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %51) #7
  br label %366

366:                                              ; preds = %365, %348
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #7
  br label %367

367:                                              ; preds = %366, %344
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %53) #7
  br label %368

368:                                              ; preds = %367, %340
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %54) #7
  br label %369

369:                                              ; preds = %368, %336
  call void @llvm.lifetime.end.p0(i64 24, ptr %54) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %53) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %52) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %51) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %50) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %49) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %48) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %47) #7
  br label %370

370:                                              ; preds = %369, %332
  call void @llvm.lifetime.end.p0(i64 16, ptr %47) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %46) #7
  br label %371

371:                                              ; preds = %370, %328
  call void @llvm.lifetime.end.p0(i64 16, ptr %46) #7
  br label %505

372:                                              ; preds = %326, %139
  call void @llvm.lifetime.start.p0(i64 16, ptr %55) #7
  %373 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZNK6ngraph6OutputINS_4NodeEE16get_element_typeEv(ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %374 unwind label %410

374:                                              ; preds = %372
  %375 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK6ngraph6OutputINS_4NodeEE9get_shapeEv(ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %376 unwind label %410

376:                                              ; preds = %374
  invoke void @_ZN6ngraph5ShapeC1ERKS0_(ptr noundef nonnull align 8 dereferenceable(24) %56, ptr noundef nonnull align 8 dereferenceable(24) %375)
          to label %377 unwind label %410

377:                                              ; preds = %376
  %378 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK6ngraph6OutputINS_4NodeEE9get_shapeEv(ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %379 unwind label %414

379:                                              ; preds = %377
  %380 = invoke noundef i64 @_ZN6ngraph10shape_sizeINS_5ShapeEEEmRKT_(ptr noundef nonnull align 8 dereferenceable(24) %378)
          to label %381 unwind label %414

381:                                              ; preds = %379
  call void @llvm.lifetime.start.p0(i64 4, ptr %58) #7
  store float 1.000000e+00, ptr %58, align 4, !tbaa !78
  call void @llvm.lifetime.start.p0(i64 1, ptr %59) #7
  call void @_ZNSaIfEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %59) #7
  invoke void @_ZNSt6vectorIfSaIfEEC2EmRKfRKS0_(ptr noundef nonnull align 8 dereferenceable(24) %57, i64 noundef %380, ptr noundef nonnull align 4 dereferenceable(4) %58, ptr noundef nonnull align 1 dereferenceable(1) %59)
          to label %382 unwind label %418

382:                                              ; preds = %381
  invoke void @_ZN6ngraph2op2v08Constant6createIfEESt10shared_ptrIS2_ERKNS_7element4TypeENS_5ShapeESt6vectorIT_SaISC_EE(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.137") align 8 %55, ptr noundef nonnull align 4 dereferenceable(4) %373, ptr noundef %56, ptr noundef %57)
          to label %383 unwind label %422

383:                                              ; preds = %382
  call void @_ZNSt6vectorIfSaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #7
  call void @_ZNSt15__new_allocatorIfED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %59) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %59) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #7
  call void @_ZN6ngraph5ShapeD1Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %60) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %61) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %62) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %63) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %64) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %65) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %66) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v08ConstantEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %66, ptr noundef nonnull align 8 dereferenceable(16) %55)
          to label %384 unwind label %428

384:                                              ; preds = %383
  invoke void @_ZN6ngraph2op4util11RNNCellBase3subERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %65, ptr noundef nonnull align 8 dereferenceable(24) %66, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %385 unwind label %432

385:                                              ; preds = %384
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %64, ptr noundef nonnull align 8 dereferenceable(16) %65)
          to label %386 unwind label %436

386:                                              ; preds = %385
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %63, ptr noundef nonnull align 8 dereferenceable(24) %64, ptr noundef nonnull align 8 dereferenceable(24) %35)
          to label %387 unwind label %440

387:                                              ; preds = %386
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %62, ptr noundef nonnull align 8 dereferenceable(16) %63)
          to label %388 unwind label %444

388:                                              ; preds = %387
  call void @llvm.lifetime.start.p0(i64 24, ptr %67) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr %68) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %68, ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %389 unwind label %448

389:                                              ; preds = %388
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %67, ptr noundef nonnull align 8 dereferenceable(16) %68)
          to label %390 unwind label %452

390:                                              ; preds = %389
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %61, ptr noundef nonnull align 8 dereferenceable(24) %62, ptr noundef nonnull align 8 dereferenceable(24) %67)
          to label %391 unwind label %456

391:                                              ; preds = %390
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %60, ptr noundef nonnull align 8 dereferenceable(16) %61)
          to label %392 unwind label %460

392:                                              ; preds = %391
  %393 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 8 dereferenceable(24) %60) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %61) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %67) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %68) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %68) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %67) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %62) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %63) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %64) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %65) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %66) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %66) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %65) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %64) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %63) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %62) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %61) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %60) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %70) #7
  store i1 true, ptr %73, align 1
  store ptr %70, ptr %71, align 8
  call void @llvm.lifetime.start.p0(i64 16, ptr %72) #7
  invoke void @_ZNK6ngraph6OutputINS_4NodeEE19get_node_shared_ptrEv(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8 %72, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %394 unwind label %472

394:                                              ; preds = %392
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %70, ptr noundef nonnull align 8 dereferenceable(16) %72)
          to label %395 unwind label %476

395:                                              ; preds = %394
  store i1 false, ptr %73, align 1
  %396 = getelementptr inbounds %"class.std::initializer_list.87", ptr %69, i32 0, i32 0
  store ptr %70, ptr %396, align 8, !tbaa !79
  %397 = getelementptr inbounds %"class.std::initializer_list.87", ptr %69, i32 0, i32 1
  store i64 1, ptr %397, align 8, !tbaa !81
  call void @llvm.lifetime.start.p0(i64 1, ptr %74) #7
  call void @_ZNSaIN6ngraph6OutputINS_4NodeEEEEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %74) #7
  %398 = getelementptr inbounds { ptr, i64 }, ptr %69, i32 0, i32 0
  %399 = load ptr, ptr %398, align 8
  %400 = getelementptr inbounds { ptr, i64 }, ptr %69, i32 0, i32 1
  %401 = load i64, ptr %400, align 8
  invoke void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEC2ESt16initializer_listIS3_ERKS4_(ptr noundef nonnull align 8 dereferenceable(24) %0, ptr %399, i64 %401, ptr noundef nonnull align 1 dereferenceable(1) %74)
          to label %402 unwind label %480

402:                                              ; preds = %395
  call void @_ZNSt15__new_allocatorIN6ngraph6OutputINS0_4NodeEEEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %74) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %74) #7
  %403 = getelementptr inbounds [1 x %"class.ngraph::Output"], ptr %70, i32 0, i32 0
  %404 = getelementptr inbounds %"class.ngraph::Output", ptr %403, i64 1
  br label %405

405:                                              ; preds = %405, %402
  %406 = phi ptr [ %404, %402 ], [ %407, %405 ]
  %407 = getelementptr inbounds %"class.ngraph::Output", ptr %406, i64 -1
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %407) #7
  %408 = icmp eq ptr %407, %403
  br i1 %408, label %409, label %405

409:                                              ; preds = %405
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %72) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %72) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %70) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v08ConstantELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %55) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %55) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %35) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %29) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %23) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %22) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %20) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %18) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %16) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %15) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %15) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %14) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %14) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %12) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %12) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %11) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %11) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %9) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %6) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %5) #7
  ret void

410:                                              ; preds = %376, %374, %372
  %411 = landingpad { ptr, i32 }
          cleanup
  %412 = extractvalue { ptr, i32 } %411, 0
  store ptr %412, ptr %7, align 8
  %413 = extractvalue { ptr, i32 } %411, 1
  store i32 %413, ptr %8, align 4
  br label %504

414:                                              ; preds = %379, %377
  %415 = landingpad { ptr, i32 }
          cleanup
  %416 = extractvalue { ptr, i32 } %415, 0
  store ptr %416, ptr %7, align 8
  %417 = extractvalue { ptr, i32 } %415, 1
  store i32 %417, ptr %8, align 4
  br label %427

418:                                              ; preds = %381
  %419 = landingpad { ptr, i32 }
          cleanup
  %420 = extractvalue { ptr, i32 } %419, 0
  store ptr %420, ptr %7, align 8
  %421 = extractvalue { ptr, i32 } %419, 1
  store i32 %421, ptr %8, align 4
  br label %426

422:                                              ; preds = %382
  %423 = landingpad { ptr, i32 }
          cleanup
  %424 = extractvalue { ptr, i32 } %423, 0
  store ptr %424, ptr %7, align 8
  %425 = extractvalue { ptr, i32 } %423, 1
  store i32 %425, ptr %8, align 4
  call void @_ZNSt6vectorIfSaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #7
  br label %426

426:                                              ; preds = %422, %418
  call void @_ZNSt15__new_allocatorIfED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %59) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %59) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #7
  br label %427

427:                                              ; preds = %426, %414
  call void @_ZN6ngraph5ShapeD1Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #7
  br label %504

428:                                              ; preds = %383
  %429 = landingpad { ptr, i32 }
          cleanup
  %430 = extractvalue { ptr, i32 } %429, 0
  store ptr %430, ptr %7, align 8
  %431 = extractvalue { ptr, i32 } %429, 1
  store i32 %431, ptr %8, align 4
  br label %471

432:                                              ; preds = %384
  %433 = landingpad { ptr, i32 }
          cleanup
  %434 = extractvalue { ptr, i32 } %433, 0
  store ptr %434, ptr %7, align 8
  %435 = extractvalue { ptr, i32 } %433, 1
  store i32 %435, ptr %8, align 4
  br label %470

436:                                              ; preds = %385
  %437 = landingpad { ptr, i32 }
          cleanup
  %438 = extractvalue { ptr, i32 } %437, 0
  store ptr %438, ptr %7, align 8
  %439 = extractvalue { ptr, i32 } %437, 1
  store i32 %439, ptr %8, align 4
  br label %469

440:                                              ; preds = %386
  %441 = landingpad { ptr, i32 }
          cleanup
  %442 = extractvalue { ptr, i32 } %441, 0
  store ptr %442, ptr %7, align 8
  %443 = extractvalue { ptr, i32 } %441, 1
  store i32 %443, ptr %8, align 4
  br label %468

444:                                              ; preds = %387
  %445 = landingpad { ptr, i32 }
          cleanup
  %446 = extractvalue { ptr, i32 } %445, 0
  store ptr %446, ptr %7, align 8
  %447 = extractvalue { ptr, i32 } %445, 1
  store i32 %447, ptr %8, align 4
  br label %467

448:                                              ; preds = %388
  %449 = landingpad { ptr, i32 }
          cleanup
  %450 = extractvalue { ptr, i32 } %449, 0
  store ptr %450, ptr %7, align 8
  %451 = extractvalue { ptr, i32 } %449, 1
  store i32 %451, ptr %8, align 4
  br label %466

452:                                              ; preds = %389
  %453 = landingpad { ptr, i32 }
          cleanup
  %454 = extractvalue { ptr, i32 } %453, 0
  store ptr %454, ptr %7, align 8
  %455 = extractvalue { ptr, i32 } %453, 1
  store i32 %455, ptr %8, align 4
  br label %465

456:                                              ; preds = %390
  %457 = landingpad { ptr, i32 }
          cleanup
  %458 = extractvalue { ptr, i32 } %457, 0
  store ptr %458, ptr %7, align 8
  %459 = extractvalue { ptr, i32 } %457, 1
  store i32 %459, ptr %8, align 4
  br label %464

460:                                              ; preds = %391
  %461 = landingpad { ptr, i32 }
          cleanup
  %462 = extractvalue { ptr, i32 } %461, 0
  store ptr %462, ptr %7, align 8
  %463 = extractvalue { ptr, i32 } %461, 1
  store i32 %463, ptr %8, align 4
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %61) #7
  br label %464

464:                                              ; preds = %460, %456
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %67) #7
  br label %465

465:                                              ; preds = %464, %452
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %68) #7
  br label %466

466:                                              ; preds = %465, %448
  call void @llvm.lifetime.end.p0(i64 16, ptr %68) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %67) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %62) #7
  br label %467

467:                                              ; preds = %466, %444
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %63) #7
  br label %468

468:                                              ; preds = %467, %440
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %64) #7
  br label %469

469:                                              ; preds = %468, %436
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %65) #7
  br label %470

470:                                              ; preds = %469, %432
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %66) #7
  br label %471

471:                                              ; preds = %470, %428
  call void @llvm.lifetime.end.p0(i64 24, ptr %66) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %65) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %64) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %63) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %62) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %61) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %60) #7
  br label %503

472:                                              ; preds = %392
  %473 = landingpad { ptr, i32 }
          cleanup
  %474 = extractvalue { ptr, i32 } %473, 0
  store ptr %474, ptr %7, align 8
  %475 = extractvalue { ptr, i32 } %473, 1
  store i32 %475, ptr %8, align 4
  br label %492

476:                                              ; preds = %394
  %477 = landingpad { ptr, i32 }
          cleanup
  %478 = extractvalue { ptr, i32 } %477, 0
  store ptr %478, ptr %7, align 8
  %479 = extractvalue { ptr, i32 } %477, 1
  store i32 %479, ptr %8, align 4
  br label %491

480:                                              ; preds = %395
  %481 = landingpad { ptr, i32 }
          cleanup
  %482 = extractvalue { ptr, i32 } %481, 0
  store ptr %482, ptr %7, align 8
  %483 = extractvalue { ptr, i32 } %481, 1
  store i32 %483, ptr %8, align 4
  call void @_ZNSt15__new_allocatorIN6ngraph6OutputINS0_4NodeEEEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %74) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %74) #7
  %484 = getelementptr inbounds [1 x %"class.ngraph::Output"], ptr %70, i32 0, i32 0
  %485 = getelementptr inbounds %"class.ngraph::Output", ptr %484, i64 1
  br label %486

486:                                              ; preds = %486, %480
  %487 = phi ptr [ %485, %480 ], [ %488, %486 ]
  %488 = getelementptr inbounds %"class.ngraph::Output", ptr %487, i64 -1
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %488) #7
  %489 = icmp eq ptr %488, %484
  br i1 %489, label %490, label %486

490:                                              ; preds = %486
  br label %491

491:                                              ; preds = %490, %476
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %72) #7
  br label %492

492:                                              ; preds = %491, %472
  call void @llvm.lifetime.end.p0(i64 16, ptr %72) #7
  %493 = load i1, ptr %73, align 1
  br i1 %493, label %494, label %502

494:                                              ; preds = %492
  %495 = load ptr, ptr %71, align 8
  %496 = icmp eq ptr %70, %495
  br i1 %496, label %501, label %497

497:                                              ; preds = %497, %494
  %498 = phi ptr [ %495, %494 ], [ %499, %497 ]
  %499 = getelementptr inbounds %"class.ngraph::Output", ptr %498, i64 -1
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %499) #7
  %500 = icmp eq ptr %499, %70
  br i1 %500, label %501, label %497

501:                                              ; preds = %497, %494
  br label %502

502:                                              ; preds = %501, %492
  call void @llvm.lifetime.end.p0(i64 24, ptr %70) #7
  br label %503

503:                                              ; preds = %502, %471
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v08ConstantELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %55) #7
  br label %504

504:                                              ; preds = %503, %427, %410
  call void @llvm.lifetime.end.p0(i64 16, ptr %55) #7
  br label %505

505:                                              ; preds = %504, %371, %311
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %35) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  br label %506

506:                                              ; preds = %505, %262
  call void @llvm.lifetime.end.p0(i64 24, ptr %29) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #7
  br label %507

507:                                              ; preds = %506, %233
  call void @llvm.lifetime.end.p0(i64 24, ptr %23) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22) #7
  br label %508

508:                                              ; preds = %507, %201
  call void @llvm.lifetime.end.p0(i64 24, ptr %22) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #7
  br label %509

509:                                              ; preds = %508, %200
  call void @llvm.lifetime.end.p0(i64 24, ptr %20) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18) #7
  br label %510

510:                                              ; preds = %509, %191
  call void @llvm.lifetime.end.p0(i64 24, ptr %18) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #7
  br label %511

511:                                              ; preds = %510, %182
  call void @llvm.lifetime.end.p0(i64 24, ptr %16) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %15) #7
  br label %512

512:                                              ; preds = %511, %170
  call void @llvm.lifetime.end.p0(i64 16, ptr %15) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %14) #7
  br label %513

513:                                              ; preds = %512, %166
  call void @llvm.lifetime.end.p0(i64 16, ptr %14) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %12) #7
  br label %514

514:                                              ; preds = %513, %165
  call void @llvm.lifetime.end.p0(i64 16, ptr %12) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %11) #7
  br label %515

515:                                              ; preds = %514, %153
  call void @llvm.lifetime.end.p0(i64 24, ptr %11) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #7
  br label %516

516:                                              ; preds = %515, %149
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #7
  br label %517

517:                                              ; preds = %516, %145
  call void @llvm.lifetime.end.p0(i64 24, ptr %9) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  br label %518

518:                                              ; preds = %517, %141
  call void @llvm.lifetime.end.p0(i64 24, ptr %6) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %5) #7
  br label %519

519:                                              ; preds = %518
  %520 = load ptr, ptr %7, align 8
  %521 = load i32, ptr %8, align 4
  %522 = insertvalue { ptr, i32 } poison, ptr %520, 0
  %523 = insertvalue { ptr, i32 } %522, i32 %521, 1
  resume { ptr, i32 } %523
}

declare void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8, ptr noundef nonnull align 8 dereferenceable(680), i64 noundef) #5

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEESt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESB_E4typeEEDpOT0_(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.134") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) #6

declare void @_ZN6ngraph7builder9transposeERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24)) #5

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEERSt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.134") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) #6

declare void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind writable sret(%"class.std::vector.82") align 8, ptr noundef nonnull align 8 dereferenceable(24), i64 noundef, i32 noundef) #5

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

declare void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8, ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(24)) #5

declare void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8, ptr noundef nonnull align 8 dereferenceable(96), ptr noundef nonnull align 8 dereferenceable(24)) #5

declare void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

declare void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #5

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRSt10shared_ptrINS0_4NodeEERNS0_6OutputIS5_EEEES4_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.134") align 8, ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(24)) #6

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph2op2v08Constant6createIfEESt10shared_ptrIS2_ERKNS_7element4TypeENS_5ShapeESt6vectorIT_SaISC_EE(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.137") align 8, ptr noundef nonnull align 4 dereferenceable(4), ptr noundef, ptr noundef) #2 align 2

declare noundef nonnull align 4 dereferenceable(4) ptr @_ZNK6ngraph6OutputINS_4NodeEE16get_element_typeEv(ptr noundef nonnull align 8 dereferenceable(24)) #5

declare noundef nonnull align 8 dereferenceable(24) ptr @_ZNK6ngraph6OutputINS_4NodeEE9get_shapeEv(ptr noundef nonnull align 8 dereferenceable(24)) #5

declare void @_ZN6ngraph5ShapeC1ERKS0_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZN6ngraph10shape_sizeINS_5ShapeEEEmRKT_(ptr noundef nonnull align 8 dereferenceable(24)) #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSaIfEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorIfSaIfEEC2EmRKfRKS0_(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef, ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

declare void @_ZN6ngraph2op4util11RNNCellBase3subERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #5

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v08ConstantEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

declare void @_ZNK6ngraph6OutputINS_4NodeEE19get_node_shared_ptrEv(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24)) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt12__shared_ptrIN6ngraph2op2v08ConstantELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIfED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #7 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !75, i64 808}
!10 = !{!"_ZTSN6ngraph2op2v37GRUCellE", !11, i64 0, !65, i64 680, !74, i64 776, !74, i64 792, !75, i64 808}
!11 = !{!"_ZTSN6ngraph2op4util7FusedOpE", !12, i64 0}
!12 = !{!"_ZTSN6ngraph2op2OpE", !13, i64 0}
!13 = !{!"_ZTSN6ngraph4NodeE", !14, i64 8, !18, i64 24, !18, i64 80, !24, i64 136, !28, i64 160, !32, i64 184, !20, i64 216, !32, i64 224, !32, i64 256, !34, i64 288, !36, i64 344, !44, i64 392, !49, i64 472, !54, i64 552, !56, i64 608, !57, i64 616, !60, i64 632}
!14 = !{!"_ZTSSt23enable_shared_from_thisIN6ngraph4NodeEE", !15, i64 0}
!15 = !{!"_ZTSSt8weak_ptrIN6ngraph4NodeEE", !16, i64 0}
!16 = !{!"_ZTSSt10__weak_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !17, i64 8}
!17 = !{!"_ZTSSt12__weak_countILN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0}
!18 = !{!"_ZTSSt13unordered_setIPN6ngraph10descriptor6TensorESt4hashIS3_ESt8equal_toIS3_ESaIS3_EE", !19, i64 0}
!19 = !{!"_ZTSSt10_HashtableIPN6ngraph10descriptor6TensorES3_SaIS3_ENSt8__detail9_IdentityESt8equal_toIS3_ESt4hashIS3_ENS5_18_Mod_range_hashingENS5_20_Default_ranged_hashENS5_20_Prime_rehash_policyENS5_17_Hashtable_traitsILb0ELb1ELb1EEEE", !6, i64 0, !20, i64 8, !21, i64 16, !20, i64 24, !22, i64 32, !6, i64 48}
!20 = !{!"long", !7, i64 0}
!21 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!22 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !23, i64 0, !20, i64 8}
!23 = !{!"float", !7, i64 0}
!24 = !{!"_ZTSSt6vectorIPN6ngraph4NodeESaIS2_EE", !25, i64 0}
!25 = !{!"_ZTSSt12_Vector_baseIPN6ngraph4NodeESaIS2_EE", !26, i64 0}
!26 = !{!"_ZTSNSt12_Vector_baseIPN6ngraph4NodeESaIS2_EE12_Vector_implE", !27, i64 0}
!27 = !{!"_ZTSNSt12_Vector_baseIPN6ngraph4NodeESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!28 = !{!"_ZTSSt6vectorISt10shared_ptrIN6ngraph4NodeEESaIS3_EE", !29, i64 0}
!29 = !{!"_ZTSSt12_Vector_baseISt10shared_ptrIN6ngraph4NodeEESaIS3_EE", !30, i64 0}
!30 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN6ngraph4NodeEESaIS3_EE12_Vector_implE", !31, i64 0}
!31 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN6ngraph4NodeEESaIS3_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!32 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !33, i64 0, !20, i64 8, !7, i64 16}
!33 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!34 = !{!"_ZTSSt13unordered_setINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4hashIS5_ESt8equal_toIS5_ESaIS5_EE", !35, i64 0}
!35 = !{!"_ZTSSt10_HashtableINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_SaIS5_ENSt8__detail9_IdentityESt8equal_toIS5_ESt4hashIS5_ENS7_18_Mod_range_hashingENS7_20_Default_ranged_hashENS7_20_Prime_rehash_policyENS7_17_Hashtable_traitsILb1ELb1ELb1EEEE", !6, i64 0, !20, i64 8, !21, i64 16, !20, i64 24, !22, i64 32, !6, i64 48}
!36 = !{!"_ZTSSt3setISt10shared_ptrIN6ngraph4NodeEESt4lessIS3_ESaIS3_EE", !37, i64 0}
!37 = !{!"_ZTSSt8_Rb_treeISt10shared_ptrIN6ngraph4NodeEES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE", !38, i64 0}
!38 = !{!"_ZTSNSt8_Rb_treeISt10shared_ptrIN6ngraph4NodeEES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb1EEE", !39, i64 0, !41, i64 8}
!39 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessISt10shared_ptrIN6ngraph4NodeEEEE", !40, i64 0}
!40 = !{!"_ZTSSt4lessISt10shared_ptrIN6ngraph4NodeEEE"}
!41 = !{!"_ZTSSt15_Rb_tree_header", !42, i64 0, !20, i64 32}
!42 = !{!"_ZTSSt18_Rb_tree_node_base", !43, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!43 = !{!"_ZTSSt14_Rb_tree_color", !7, i64 0}
!44 = !{!"_ZTSSt5dequeIN6ngraph10descriptor5InputESaIS2_EE", !45, i64 0}
!45 = !{!"_ZTSSt11_Deque_baseIN6ngraph10descriptor5InputESaIS2_EE", !46, i64 0}
!46 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor5InputESaIS2_EE11_Deque_implE", !47, i64 0}
!47 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor5InputESaIS2_EE16_Deque_impl_dataE", !6, i64 0, !20, i64 8, !48, i64 16, !48, i64 48}
!48 = !{!"_ZTSSt15_Deque_iteratorIN6ngraph10descriptor5InputERS2_PS2_E", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!49 = !{!"_ZTSSt5dequeIN6ngraph10descriptor6OutputESaIS2_EE", !50, i64 0}
!50 = !{!"_ZTSSt11_Deque_baseIN6ngraph10descriptor6OutputESaIS2_EE", !51, i64 0}
!51 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor6OutputESaIS2_EE11_Deque_implE", !52, i64 0}
!52 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor6OutputESaIS2_EE16_Deque_impl_dataE", !6, i64 0, !20, i64 8, !53, i64 16, !53, i64 48}
!53 = !{!"_ZTSSt15_Deque_iteratorIN6ngraph10descriptor6OutputERS2_PS2_E", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!54 = !{!"_ZTSSt13unordered_mapIPN6ngraph4NodeENS0_8autodiff8AdjointsESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !55, i64 0}
!55 = !{!"_ZTSSt10_HashtableIPN6ngraph4NodeESt4pairIKS2_NS0_8autodiff8AdjointsEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !20, i64 8, !21, i64 16, !20, i64 24, !22, i64 32, !6, i64 48}
!56 = !{!"int", !7, i64 0}
!57 = !{!"_ZTSSt10shared_ptrIN6ngraph2op4util13OpAnnotationsEE", !58, i64 0}
!58 = !{!"_ZTSSt12__shared_ptrIN6ngraph2op4util13OpAnnotationsELN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !59, i64 8}
!59 = !{!"_ZTSSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0}
!60 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt10shared_ptrIN6ngraph7VariantEESt4lessIS5_ESaISt4pairIKS5_S9_EEE", !61, i64 0}
!61 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_St10shared_ptrIN6ngraph7VariantEEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE", !62, i64 0}
!62 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_St10shared_ptrIN6ngraph7VariantEEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE13_Rb_tree_implISG_Lb1EEE", !63, i64 0, !41, i64 8}
!63 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE", !64, i64 0}
!64 = !{!"_ZTSSt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE"}
!65 = !{!"_ZTSN6ngraph2op4util11RNNCellBaseE", !20, i64 8, !23, i64 16, !66, i64 24, !70, i64 48, !70, i64 72}
!66 = !{!"_ZTSSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !67, i64 0}
!67 = !{!"_ZTSSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !68, i64 0}
!68 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE12_Vector_implE", !69, i64 0}
!69 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!70 = !{!"_ZTSSt6vectorIfSaIfEE", !71, i64 0}
!71 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !72, i64 0}
!72 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !73, i64 0}
!73 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!74 = !{!"_ZTSN6ngraph2op4util18ActivationFunctionE", !6, i64 0, !23, i64 8, !23, i64 12}
!75 = !{!"bool", !7, i64 0}
!76 = !{i8 0, i8 2}
!77 = !{}
!78 = !{!23, !23, i64 0}
!79 = !{!80, !6, i64 0}
!80 = !{!"_ZTSSt16initializer_listIN6ngraph6OutputINS0_4NodeEEEE", !6, i64 0, !20, i64 8}
!81 = !{!80, !20, i64 8}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.std::vector.82" = type { %"struct.std::_Vector_base.83" }
%"struct.std::_Vector_base.83" = type { %"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl" }
%"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl" = type { %"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<ngraph::Output<Node>, std::allocator<ngraph::Output<Node>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.ngraph::Output" = type { %"class.std::shared_ptr.79", i64 }
%"class.std::shared_ptr.79" = type { %"class.std::__shared_ptr.80" }
%"class.std::__shared_ptr.80" = type { ptr, %"class.std::__shared_count" }
%"class.std::__shared_count" = type { ptr }
%"class.std::shared_ptr.134" = type { %"class.std::__shared_ptr.135" }
%"class.std::__shared_ptr.135" = type { ptr, %"class.std::__shared_count" }
%"class.std::shared_ptr.137" = type { %"class.std::__shared_ptr.138" }
%"class.std::__shared_ptr.138" = type { ptr, %"class.std::__shared_count" }
%"class.ngraph::Shape" = type { %"class.std::vector.128" }
%"class.std::vector.128" = type { %"struct.std::_Vector_base.129" }
%"struct.std::_Vector_base.129" = type { %"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned long, std::allocator<unsigned long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.74" = type { %"struct.std::_Vector_base.75" }
%"struct.std::_Vector_base.75" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::allocator.76" = type { i8 }
%"class.std::allocator.84" = type { i8 }

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIfSaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSaIN6ngraph6OutputINS_4NodeEEEEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEC2ESt16initializer_listIS3_ERKS4_(ptr noundef nonnull align 8 dereferenceable(24), ptr, i64, ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIN6ngraph6OutputINS0_4NodeEEEED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 align 2

; Function Attrs: nounwind
declare void @_ZN6ngraph5ShapeD1Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #4

; Function Attrs: mustprogress uwtable
define dso_local void @_ZNK6ngraph2op2v37GRUCell12decompose_opEv(ptr dead_on_unwind noalias writable sret(%"class.std::vector.82") align 8 %0, ptr noundef nonnull align 8 dereferenceable(809) %1) unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca %"class.ngraph::Output", align 8
  %4 = alloca %"class.ngraph::Output", align 8
  %5 = alloca %"class.ngraph::Output", align 8
  %6 = alloca %"class.ngraph::Output", align 8
  %7 = alloca %"class.ngraph::Output", align 8
  %8 = alloca %"class.std::shared_ptr.134", align 8
  %9 = alloca %"class.std::shared_ptr.79", align 8
  %10 = alloca %"class.std::shared_ptr.79", align 8
  %11 = alloca %"class.std::shared_ptr.134", align 8
  %12 = alloca %"class.std::vector.82", align 8
  %13 = alloca %"class.ngraph::Output", align 8
  %14 = alloca %"class.std::vector.82", align 8
  %15 = alloca %"class.ngraph::Output", align 8
  %16 = alloca %"class.std::vector.82", align 8
  %17 = alloca %"class.ngraph::Output", align 8
  %18 = alloca %"class.std::vector.82", align 8
  %19 = alloca %"class.ngraph::Output", align 8
  %20 = alloca %"class.ngraph::Output", align 8
  %21 = alloca %"class.ngraph::Output", align 8
  %22 = alloca %"class.std::shared_ptr.79", align 8
  %23 = alloca %"class.ngraph::Output", align 8
  %24 = alloca %"class.std::shared_ptr.79", align 8
  %25 = alloca %"class.ngraph::Output", align 8
  %26 = alloca %"class.ngraph::Output", align 8
  %27 = alloca %"class.ngraph::Output", align 8
  %28 = alloca %"class.std::shared_ptr.79", align 8
  %29 = alloca %"class.ngraph::Output", align 8
  %30 = alloca %"class.std::shared_ptr.79", align 8
  %31 = alloca %"class.ngraph::Output", align 8
  %32 = alloca %"class.std::shared_ptr.79", align 8
  %33 = alloca %"class.ngraph::Output", align 8
  %34 = alloca %"class.ngraph::Output", align 8
  %35 = alloca %"class.ngraph::Output", align 8
  %36 = alloca %"class.std::shared_ptr.79", align 8
  %37 = alloca %"class.ngraph::Output", align 8
  %38 = alloca %"class.std::shared_ptr.79", align 8
  %39 = alloca %"class.ngraph::Output", align 8
  %40 = alloca %"class.std::shared_ptr.79", align 8
  %41 = alloca %"class.ngraph::Output", align 8
  %42 = alloca %"class.std::shared_ptr.79", align 8
  %43 = alloca %"class.std::shared_ptr.134", align 8
  %44 = alloca %"class.ngraph::Output", align 8
  %45 = alloca %"class.ngraph::Output", align 8
  %46 = alloca %"class.ngraph::Output", align 8
  %47 = alloca %"class.std::shared_ptr.79", align 8
  %48 = alloca %"class.ngraph::Output", align 8
  %49 = alloca %"class.std::shared_ptr.79", align 8
  %50 = alloca %"class.ngraph::Output", align 8
  %51 = alloca %"class.std::shared_ptr.137", align 8
  %52 = alloca %"class.ngraph::Shape", align 8
  %53 = alloca %"class.std::vector.74", align 8
  %54 = alloca float, align 4
  %55 = alloca %"class.std::allocator.76", align 1
  %56 = alloca %"class.ngraph::Output", align 8
  %57 = alloca %"class.std::shared_ptr.79", align 8
  %58 = alloca %"class.ngraph::Output", align 8
  %59 = alloca %"class.std::shared_ptr.79", align 8
  %60 = alloca %"class.ngraph::Output", align 8
  %61 = alloca %"class.std::shared_ptr.79", align 8
  %62 = alloca %"class.ngraph::Output", align 8
  %63 = alloca %"class.ngraph::Output", align 8
  %64 = alloca %"class.std::shared_ptr.79", align 8
  %65 = alloca [1 x %"class.ngraph::Output"], align 8
  %66 = alloca %"class.std::shared_ptr.79", align 8
  %67 = alloca %"class.std::allocator.84", align 1
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %3) #7
  call void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %3, ptr noundef nonnull align 8 dereferenceable(680) %1, i64 noundef 0)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %4) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %4, ptr noundef nonnull align 8 dereferenceable(680) %1, i64 noundef 1)
          to label %68 unwind label %124

68:                                               ; preds = %2
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %5) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %5, ptr noundef nonnull align 8 dereferenceable(680) %1, i64 noundef 2)
          to label %69 unwind label %126

69:                                               ; preds = %68
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %6) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %6, ptr noundef nonnull align 8 dereferenceable(680) %1, i64 noundef 3)
          to label %70 unwind label %128

70:                                               ; preds = %69
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %7) #7
  invoke void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %7, ptr noundef nonnull align 8 dereferenceable(680) %1, i64 noundef 4)
          to label %71 unwind label %130

71:                                               ; preds = %70
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %8) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #7
  invoke void @_ZN6ngraph7builder9transposeERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %9, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %72 unwind label %132

72:                                               ; preds = %71
  invoke void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEESt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESB_E4typeEEDpOT0_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.134") align 8 %8, ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(16) %9)
          to label %73 unwind label %134

73:                                               ; preds = %72
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %9) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %10) #7
  invoke void @_ZN6ngraph7builder9transposeERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %10, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %74 unwind label %137

74:                                               ; preds = %73
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #7
  invoke void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEERSt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.134") align 8 %11, ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(16) %10)
          to label %75 unwind label %139

75:                                               ; preds = %74
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %12) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %13) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %13, ptr noundef nonnull align 8 dereferenceable(16) %8)
          to label %76 unwind label %141

76:                                               ; preds = %75
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.82") align 8 %12, ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef 3, i32 noundef 1)
          to label %77 unwind label %143

77:                                               ; preds = %76
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %13) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %14) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %15) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %15, ptr noundef nonnull align 8 dereferenceable(16) %10)
          to label %78 unwind label %146

78:                                               ; preds = %77
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.82") align 8 %14, ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef 3, i32 noundef 1)
          to label %79 unwind label %148

79:                                               ; preds = %78
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %15) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %16) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %17) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %17, ptr noundef nonnull align 8 dereferenceable(16) %11)
          to label %80 unwind label %151

80:                                               ; preds = %79
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.82") align 8 %16, ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef 3, i32 noundef 1)
          to label %.invoke unwind label %153

.invoke:                                          ; preds = %80
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %17) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %18) #7
  %81 = getelementptr inbounds i8, ptr %1, i64 808
  %82 = load i8, ptr %81, align 8, !tbaa !5, !range !75, !noundef !76
  %83 = trunc nuw i8 %82 to i1
  %. = select i1 %83, i64 4, i64 3
  invoke void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.82") align 8 %18, ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %., i32 noundef 0)
          to label %84 unwind label %156

84:                                               ; preds = %.invoke
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %19) #7
  %85 = getelementptr inbounds i8, ptr %1, i64 776
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %20) #7
  %86 = getelementptr inbounds i8, ptr %1, i64 680
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %21) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %22) #7
  %87 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %12, i64 noundef 0) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %23) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %24) #7
  %88 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %16, i64 noundef 0) #7
  %89 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %18, i64 noundef 0) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %24, ptr noundef nonnull align 8 dereferenceable(24) %88, ptr noundef nonnull align 8 dereferenceable(24) %89)
          to label %90 unwind label %158

90:                                               ; preds = %84
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(16) %24)
          to label %91 unwind label %160

91:                                               ; preds = %90
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %22, ptr noundef nonnull align 8 dereferenceable(24) %87, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %92 unwind label %162

92:                                               ; preds = %91
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %21, ptr noundef nonnull align 8 dereferenceable(16) %22)
          to label %93 unwind label %164

93:                                               ; preds = %92
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %20, ptr noundef nonnull align 8 dereferenceable(96) %86, ptr noundef nonnull align 8 dereferenceable(24) %21)
          to label %94 unwind label %166

94:                                               ; preds = %93
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %19, ptr noundef nonnull align 8 dereferenceable(16) %85, ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %95 unwind label %168

95:                                               ; preds = %94
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %22) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %24) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %23) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %22) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %21) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %20) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %25) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %26) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %27) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %28) #7
  %96 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %12, i64 noundef 1) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %29) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %30) #7
  %97 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %16, i64 noundef 1) #7
  %98 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %18, i64 noundef 1) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %30, ptr noundef nonnull align 8 dereferenceable(24) %97, ptr noundef nonnull align 8 dereferenceable(24) %98)
          to label %99 unwind label %175

99:                                               ; preds = %95
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %29, ptr noundef nonnull align 8 dereferenceable(16) %30)
          to label %100 unwind label %177

100:                                              ; preds = %99
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %28, ptr noundef nonnull align 8 dereferenceable(24) %96, ptr noundef nonnull align 8 dereferenceable(24) %29)
          to label %101 unwind label %179

101:                                              ; preds = %100
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(16) %28)
          to label %102 unwind label %181

102:                                              ; preds = %101
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %26, ptr noundef nonnull align 8 dereferenceable(96) %86, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %103 unwind label %183

103:                                              ; preds = %102
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %25, ptr noundef nonnull align 8 dereferenceable(16) %85, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %104 unwind label %185

104:                                              ; preds = %103
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %30) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %30) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %29) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %28) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %27) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %31) #7
  call void @_ZN6ngraph6OutputINS_4NodeEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %31) #7
  %105 = load i8, ptr %81, align 8, !tbaa !5, !range !75, !noundef !76
  %106 = trunc nuw i8 %105 to i1
  br i1 %106, label %107, label %221

107:                                              ; preds = %104
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %32) #7
  %108 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %16, i64 noundef 2) #7
  %109 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %18, i64 noundef 3) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %32, ptr noundef nonnull align 8 dereferenceable(24) %108, ptr noundef nonnull align 8 dereferenceable(24) %109)
          to label %110 unwind label %192

110:                                              ; preds = %107
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %33) #7
  %111 = getelementptr inbounds i8, ptr %1, i64 792
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %34) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %35) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %36) #7
  %112 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %12, i64 noundef 2) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %37) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %38) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %39) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %40) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %41) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %41, ptr noundef nonnull align 8 dereferenceable(16) %32)
          to label %113 unwind label %194

113:                                              ; preds = %110
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %40, ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 8 dereferenceable(24) %41)
          to label %114 unwind label %196

114:                                              ; preds = %113
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %39, ptr noundef nonnull align 8 dereferenceable(16) %40)
          to label %115 unwind label %198

115:                                              ; preds = %114
  %116 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %18, i64 noundef 2) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %38, ptr noundef nonnull align 8 dereferenceable(24) %39, ptr noundef nonnull align 8 dereferenceable(24) %116)
          to label %117 unwind label %200

117:                                              ; preds = %115
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %37, ptr noundef nonnull align 8 dereferenceable(16) %38)
          to label %118 unwind label %202

118:                                              ; preds = %117
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %36, ptr noundef nonnull align 8 dereferenceable(24) %112, ptr noundef nonnull align 8 dereferenceable(24) %37)
          to label %119 unwind label %204

119:                                              ; preds = %118
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %35, ptr noundef nonnull align 8 dereferenceable(16) %36)
          to label %120 unwind label %206

120:                                              ; preds = %119
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %34, ptr noundef nonnull align 8 dereferenceable(96) %86, ptr noundef nonnull align 8 dereferenceable(24) %35)
          to label %121 unwind label %208

121:                                              ; preds = %120
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %33, ptr noundef nonnull align 8 dereferenceable(16) %111, ptr noundef nonnull align 8 dereferenceable(24) %34)
          to label %122 unwind label %210

122:                                              ; preds = %121
  %123 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %31, ptr noundef nonnull align 8 dereferenceable(24) %33) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %34) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %36) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %38) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %40) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %41) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %40) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %39) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %38) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %37) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %35) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %34) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %33) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %32) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #7
  br label %262

124:                                              ; preds = %2
  %125 = landingpad { ptr, i32 }
          cleanup
  br label %343

126:                                              ; preds = %68
  %127 = landingpad { ptr, i32 }
          cleanup
  br label %342

128:                                              ; preds = %69
  %129 = landingpad { ptr, i32 }
          cleanup
  br label %341

130:                                              ; preds = %70
  %131 = landingpad { ptr, i32 }
          cleanup
  br label %340

132:                                              ; preds = %71
  %133 = landingpad { ptr, i32 }
          cleanup
  br label %136

134:                                              ; preds = %72
  %135 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %9) #7
  br label %136

136:                                              ; preds = %134, %132
  %.pn = phi { ptr, i32 } [ %135, %134 ], [ %133, %132 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #7
  br label %339

137:                                              ; preds = %73
  %138 = landingpad { ptr, i32 }
          cleanup
  br label %338

139:                                              ; preds = %74
  %140 = landingpad { ptr, i32 }
          cleanup
  br label %337

141:                                              ; preds = %75
  %142 = landingpad { ptr, i32 }
          cleanup
  br label %145

143:                                              ; preds = %76
  %144 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13) #7
  br label %145

145:                                              ; preds = %143, %141
  %.pn70 = phi { ptr, i32 } [ %144, %143 ], [ %142, %141 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %13) #7
  br label %336

146:                                              ; preds = %77
  %147 = landingpad { ptr, i32 }
          cleanup
  br label %150

148:                                              ; preds = %78
  %149 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  br label %150

150:                                              ; preds = %148, %146
  %.pn72 = phi { ptr, i32 } [ %149, %148 ], [ %147, %146 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %15) #7
  br label %335

151:                                              ; preds = %79
  %152 = landingpad { ptr, i32 }
          cleanup
  br label %155

153:                                              ; preds = %80
  %154 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  br label %155

155:                                              ; preds = %153, %151
  %.pn74 = phi { ptr, i32 } [ %154, %153 ], [ %152, %151 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %17) #7
  br label %334

156:                                              ; preds = %.invoke
  %157 = landingpad { ptr, i32 }
          cleanup
  br label %333

158:                                              ; preds = %84
  %159 = landingpad { ptr, i32 }
          cleanup
  br label %174

160:                                              ; preds = %90
  %161 = landingpad { ptr, i32 }
          cleanup
  br label %173

162:                                              ; preds = %91
  %163 = landingpad { ptr, i32 }
          cleanup
  br label %172

164:                                              ; preds = %92
  %165 = landingpad { ptr, i32 }
          cleanup
  br label %171

166:                                              ; preds = %93
  %167 = landingpad { ptr, i32 }
          cleanup
  br label %170

168:                                              ; preds = %94
  %169 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #7
  br label %170

170:                                              ; preds = %168, %166
  %.pn76 = phi { ptr, i32 } [ %169, %168 ], [ %167, %166 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #7
  br label %171

171:                                              ; preds = %170, %164
  %.pn76.pn = phi { ptr, i32 } [ %.pn76, %170 ], [ %165, %164 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %22) #7
  br label %172

172:                                              ; preds = %171, %162
  %.pn76.pn.pn = phi { ptr, i32 } [ %.pn76.pn, %171 ], [ %163, %162 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #7
  br label %173

173:                                              ; preds = %172, %160
  %.pn76.pn.pn.pn = phi { ptr, i32 } [ %.pn76.pn.pn, %172 ], [ %161, %160 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %24) #7
  br label %174

174:                                              ; preds = %173, %158
  %.pn76.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn76.pn.pn.pn, %173 ], [ %159, %158 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %23) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %22) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %21) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %20) #7
  br label %332

175:                                              ; preds = %95
  %176 = landingpad { ptr, i32 }
          cleanup
  br label %191

177:                                              ; preds = %99
  %178 = landingpad { ptr, i32 }
          cleanup
  br label %190

179:                                              ; preds = %100
  %180 = landingpad { ptr, i32 }
          cleanup
  br label %189

181:                                              ; preds = %101
  %182 = landingpad { ptr, i32 }
          cleanup
  br label %188

183:                                              ; preds = %102
  %184 = landingpad { ptr, i32 }
          cleanup
  br label %187

185:                                              ; preds = %103
  %186 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  br label %187

187:                                              ; preds = %185, %183
  %.pn82 = phi { ptr, i32 } [ %186, %185 ], [ %184, %183 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  br label %188

188:                                              ; preds = %187, %181
  %.pn82.pn = phi { ptr, i32 } [ %.pn82, %187 ], [ %182, %181 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %28) #7
  br label %189

189:                                              ; preds = %188, %179
  %.pn82.pn.pn = phi { ptr, i32 } [ %.pn82.pn, %188 ], [ %180, %179 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  br label %190

190:                                              ; preds = %189, %177
  %.pn82.pn.pn.pn = phi { ptr, i32 } [ %.pn82.pn.pn, %189 ], [ %178, %177 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %30) #7
  br label %191

191:                                              ; preds = %190, %175
  %.pn82.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn82.pn.pn.pn, %190 ], [ %176, %175 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %30) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %29) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %28) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %27) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #7
  br label %331

192:                                              ; preds = %107
  %193 = landingpad { ptr, i32 }
          cleanup
  br label %220

194:                                              ; preds = %110
  %195 = landingpad { ptr, i32 }
          cleanup
  br label %219

196:                                              ; preds = %113
  %197 = landingpad { ptr, i32 }
          cleanup
  br label %218

198:                                              ; preds = %114
  %199 = landingpad { ptr, i32 }
          cleanup
  br label %217

200:                                              ; preds = %115
  %201 = landingpad { ptr, i32 }
          cleanup
  br label %216

202:                                              ; preds = %117
  %203 = landingpad { ptr, i32 }
          cleanup
  br label %215

204:                                              ; preds = %118
  %205 = landingpad { ptr, i32 }
          cleanup
  br label %214

206:                                              ; preds = %119
  %207 = landingpad { ptr, i32 }
          cleanup
  br label %213

208:                                              ; preds = %120
  %209 = landingpad { ptr, i32 }
          cleanup
  br label %212

210:                                              ; preds = %121
  %211 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %34) #7
  br label %212

212:                                              ; preds = %210, %208
  %.pn97 = phi { ptr, i32 } [ %211, %210 ], [ %209, %208 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #7
  br label %213

213:                                              ; preds = %212, %206
  %.pn97.pn = phi { ptr, i32 } [ %.pn97, %212 ], [ %207, %206 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %36) #7
  br label %214

214:                                              ; preds = %213, %204
  %.pn97.pn.pn = phi { ptr, i32 } [ %.pn97.pn, %213 ], [ %205, %204 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37) #7
  br label %215

215:                                              ; preds = %214, %202
  %.pn97.pn.pn.pn = phi { ptr, i32 } [ %.pn97.pn.pn, %214 ], [ %203, %202 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %38) #7
  br label %216

216:                                              ; preds = %215, %200
  %.pn97.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn97.pn.pn.pn, %215 ], [ %201, %200 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #7
  br label %217

217:                                              ; preds = %216, %198
  %.pn97.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn97.pn.pn.pn.pn, %216 ], [ %199, %198 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %40) #7
  br label %218

218:                                              ; preds = %217, %196
  %.pn97.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn97.pn.pn.pn.pn.pn, %217 ], [ %197, %196 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  br label %219

219:                                              ; preds = %218, %194
  %.pn97.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn97.pn.pn.pn.pn.pn.pn, %218 ], [ %195, %194 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %41) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %40) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %39) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %38) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %37) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %35) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %34) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %33) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %32) #7
  br label %220

220:                                              ; preds = %219, %192
  %.pn97.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn97.pn.pn.pn.pn.pn.pn.pn, %219 ], [ %193, %192 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #7
  br label %330

221:                                              ; preds = %104
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %42) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %42, ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %222 unwind label %236

222:                                              ; preds = %221
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #7
  %223 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %14, i64 noundef 2) #7
  invoke void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRSt10shared_ptrINS0_4NodeEERNS0_6OutputIS5_EEEES4_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.134") align 8 %43, ptr noundef nonnull align 8 dereferenceable(16) %42, ptr noundef nonnull align 8 dereferenceable(24) %223)
          to label %224 unwind label %238

224:                                              ; preds = %222
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %44) #7
  %225 = getelementptr inbounds i8, ptr %1, i64 792
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %45) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %46) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #7
  %226 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %12, i64 noundef 2) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %48) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %50) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %50, ptr noundef nonnull align 8 dereferenceable(16) %43)
          to label %227 unwind label %240

227:                                              ; preds = %224
  %228 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %18, i64 noundef 2) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %49, ptr noundef nonnull align 8 dereferenceable(24) %50, ptr noundef nonnull align 8 dereferenceable(24) %228)
          to label %229 unwind label %242

229:                                              ; preds = %227
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %48, ptr noundef nonnull align 8 dereferenceable(16) %49)
          to label %230 unwind label %244

230:                                              ; preds = %229
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %47, ptr noundef nonnull align 8 dereferenceable(24) %226, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %231 unwind label %246

231:                                              ; preds = %230
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %46, ptr noundef nonnull align 8 dereferenceable(16) %47)
          to label %232 unwind label %248

232:                                              ; preds = %231
  invoke void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %45, ptr noundef nonnull align 8 dereferenceable(96) %86, ptr noundef nonnull align 8 dereferenceable(24) %46)
          to label %233 unwind label %250

233:                                              ; preds = %232
  invoke void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind nonnull writable sret(%"class.ngraph::Output") align 8 %44, ptr noundef nonnull align 8 dereferenceable(16) %225, ptr noundef nonnull align 8 dereferenceable(24) %45)
          to label %234 unwind label %252

234:                                              ; preds = %233
  %235 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %31, ptr noundef nonnull align 8 dereferenceable(24) %44) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %44) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %45) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %46) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %47) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %49) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %50) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %50) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %48) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %46) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %45) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %44) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %43) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %42) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %42) #7
  br label %262

236:                                              ; preds = %221
  %237 = landingpad { ptr, i32 }
          cleanup
  br label %261

238:                                              ; preds = %222
  %239 = landingpad { ptr, i32 }
          cleanup
  br label %260

240:                                              ; preds = %224
  %241 = landingpad { ptr, i32 }
          cleanup
  br label %259

242:                                              ; preds = %227
  %243 = landingpad { ptr, i32 }
          cleanup
  br label %258

244:                                              ; preds = %229
  %245 = landingpad { ptr, i32 }
          cleanup
  br label %257

246:                                              ; preds = %230
  %247 = landingpad { ptr, i32 }
          cleanup
  br label %256

248:                                              ; preds = %231
  %249 = landingpad { ptr, i32 }
          cleanup
  br label %255

250:                                              ; preds = %232
  %251 = landingpad { ptr, i32 }
          cleanup
  br label %254

252:                                              ; preds = %233
  %253 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %45) #7
  br label %254

254:                                              ; preds = %252, %250
  %.pn88 = phi { ptr, i32 } [ %253, %252 ], [ %251, %250 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %46) #7
  br label %255

255:                                              ; preds = %254, %248
  %.pn88.pn = phi { ptr, i32 } [ %.pn88, %254 ], [ %249, %248 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %47) #7
  br label %256

256:                                              ; preds = %255, %246
  %.pn88.pn.pn = phi { ptr, i32 } [ %.pn88.pn, %255 ], [ %247, %246 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  br label %257

257:                                              ; preds = %256, %244
  %.pn88.pn.pn.pn = phi { ptr, i32 } [ %.pn88.pn.pn, %256 ], [ %245, %244 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %49) #7
  br label %258

258:                                              ; preds = %257, %242
  %.pn88.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn88.pn.pn.pn, %257 ], [ %243, %242 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %50) #7
  br label %259

259:                                              ; preds = %258, %240
  %.pn88.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn88.pn.pn.pn.pn, %258 ], [ %241, %240 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %50) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %48) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %46) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %45) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %44) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %43) #7
  br label %260

260:                                              ; preds = %259, %238
  %.pn88.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn88.pn.pn.pn.pn.pn, %259 ], [ %239, %238 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %42) #7
  br label %261

261:                                              ; preds = %260, %236
  %.pn88.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn88.pn.pn.pn.pn.pn.pn, %260 ], [ %237, %236 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %42) #7
  br label %330

262:                                              ; preds = %234, %122
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %51) #7
  %263 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZNK6ngraph6OutputINS_4NodeEE16get_element_typeEv(ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %264 unwind label %286

264:                                              ; preds = %262
  %265 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK6ngraph6OutputINS_4NodeEE9get_shapeEv(ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %266 unwind label %286

266:                                              ; preds = %264
  invoke void @_ZN6ngraph5ShapeC1ERKS0_(ptr noundef nonnull align 8 dereferenceable(24) %52, ptr noundef nonnull align 8 dereferenceable(24) %265)
          to label %267 unwind label %286

267:                                              ; preds = %266
  %268 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK6ngraph6OutputINS_4NodeEE9get_shapeEv(ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %269 unwind label %288

269:                                              ; preds = %267
  %270 = call noundef i64 @_ZN6ngraph10shape_sizeINS_5ShapeEEEmRKT_(ptr noundef nonnull align 8 dereferenceable(24) %268)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %54) #7
  store float 1.000000e+00, ptr %54, align 4, !tbaa !77
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %55) #7
  call void @_ZNSaIfEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %55) #7
  invoke void @_ZNSt6vectorIfSaIfEEC2EmRKfRKS0_(ptr noundef nonnull align 8 dereferenceable(24) %53, i64 noundef %270, ptr noundef nonnull align 4 dereferenceable(4) %54, ptr noundef nonnull align 1 dereferenceable(1) %55)
          to label %271 unwind label %290

271:                                              ; preds = %269
  invoke void @_ZN6ngraph2op2v08Constant6createIfEESt10shared_ptrIS2_ERKNS_7element4TypeENS_5ShapeESt6vectorIT_SaISC_EE(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.137") align 8 %51, ptr noundef nonnull align 4 dereferenceable(4) %263, ptr noundef nonnull %52, ptr noundef nonnull %53)
          to label %272 unwind label %292

272:                                              ; preds = %271
  call void @_ZNSt6vectorIfSaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %53) #7
  call void @_ZNSt15__new_allocatorIfED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %55) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %55) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #7
  call void @_ZN6ngraph5ShapeD1Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %56) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %58) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %60) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %62) #7
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v08ConstantEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %62, ptr noundef nonnull align 8 dereferenceable(16) %51)
          to label %273 unwind label %296

273:                                              ; preds = %272
  invoke void @_ZN6ngraph2op4util11RNNCellBase3subERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %61, ptr noundef nonnull align 8 dereferenceable(24) %62, ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %274 unwind label %298

274:                                              ; preds = %273
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %60, ptr noundef nonnull align 8 dereferenceable(16) %61)
          to label %275 unwind label %300

275:                                              ; preds = %274
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %59, ptr noundef nonnull align 8 dereferenceable(24) %60, ptr noundef nonnull align 8 dereferenceable(24) %31)
          to label %276 unwind label %302

276:                                              ; preds = %275
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %58, ptr noundef nonnull align 8 dereferenceable(16) %59)
          to label %277 unwind label %304

277:                                              ; preds = %276
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %63) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %64) #7
  invoke void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %64, ptr noundef nonnull align 8 dereferenceable(24) %19, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %278 unwind label %306

278:                                              ; preds = %277
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %63, ptr noundef nonnull align 8 dereferenceable(16) %64)
          to label %279 unwind label %308

279:                                              ; preds = %278
  invoke void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %57, ptr noundef nonnull align 8 dereferenceable(24) %58, ptr noundef nonnull align 8 dereferenceable(24) %63)
          to label %280 unwind label %310

280:                                              ; preds = %279
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %56, ptr noundef nonnull align 8 dereferenceable(16) %57)
          to label %281 unwind label %312

281:                                              ; preds = %280
  %282 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %56) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %57) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %63) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %64) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %64) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %63) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %58) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %59) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %61) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %62) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %62) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %60) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %58) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %56) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %65) #7
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %66) #7
  invoke void @_ZNK6ngraph6OutputINS_4NodeEE19get_node_shared_ptrEv(ptr dead_on_unwind nonnull writable sret(%"class.std::shared_ptr.79") align 8 %66, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %283 unwind label %322

283:                                              ; preds = %281
  invoke void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24) %65, ptr noundef nonnull align 8 dereferenceable(16) %66)
          to label %284 unwind label %324

284:                                              ; preds = %283
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %67) #7
  call void @_ZNSaIN6ngraph6OutputINS_4NodeEEEEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #7
  invoke void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEC2ESt16initializer_listIS3_ERKS4_(ptr noundef nonnull align 8 dereferenceable(24) %0, ptr nonnull %65, i64 1, ptr noundef nonnull align 1 dereferenceable(1) %67)
          to label %285 unwind label %.loopexit.loopexit

285:                                              ; preds = %284
  call void @_ZNSt15__new_allocatorIN6ngraph6OutputINS0_4NodeEEEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %67) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %65) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %66) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %66) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %65) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v08ConstantELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %51) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %51) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %31) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %31) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %25) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %19) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %18) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %16) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %14) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %14) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %12) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %12) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %11) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %10) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %10) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %8) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %7) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %5) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %4) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %3) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %3) #7
  ret void

286:                                              ; preds = %266, %264, %262
  %287 = landingpad { ptr, i32 }
          cleanup
  br label %329

288:                                              ; preds = %267
  %289 = landingpad { ptr, i32 }
          cleanup
  br label %295

290:                                              ; preds = %269
  %291 = landingpad { ptr, i32 }
          cleanup
  br label %294

292:                                              ; preds = %271
  %293 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorIfSaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %53) #7
  br label %294

294:                                              ; preds = %292, %290
  %.pn107 = phi { ptr, i32 } [ %293, %292 ], [ %291, %290 ]
  call void @_ZNSt15__new_allocatorIfED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %55) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %55) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #7
  br label %295

295:                                              ; preds = %294, %288
  %.pn107.pn = phi { ptr, i32 } [ %.pn107, %294 ], [ %289, %288 ]
  call void @_ZN6ngraph5ShapeD1Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #7
  br label %329

296:                                              ; preds = %272
  %297 = landingpad { ptr, i32 }
          cleanup
  br label %321

298:                                              ; preds = %273
  %299 = landingpad { ptr, i32 }
          cleanup
  br label %320

300:                                              ; preds = %274
  %301 = landingpad { ptr, i32 }
          cleanup
  br label %319

302:                                              ; preds = %275
  %303 = landingpad { ptr, i32 }
          cleanup
  br label %318

304:                                              ; preds = %276
  %305 = landingpad { ptr, i32 }
          cleanup
  br label %317

306:                                              ; preds = %277
  %307 = landingpad { ptr, i32 }
          cleanup
  br label %316

308:                                              ; preds = %278
  %309 = landingpad { ptr, i32 }
          cleanup
  br label %315

310:                                              ; preds = %279
  %311 = landingpad { ptr, i32 }
          cleanup
  br label %314

312:                                              ; preds = %280
  %313 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %57) #7
  br label %314

314:                                              ; preds = %312, %310
  %.pn110 = phi { ptr, i32 } [ %313, %312 ], [ %311, %310 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %63) #7
  br label %315

315:                                              ; preds = %314, %308
  %.pn110.pn = phi { ptr, i32 } [ %.pn110, %314 ], [ %309, %308 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %64) #7
  br label %316

316:                                              ; preds = %315, %306
  %.pn110.pn.pn = phi { ptr, i32 } [ %.pn110.pn, %315 ], [ %307, %306 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %64) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %63) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %58) #7
  br label %317

317:                                              ; preds = %316, %304
  %.pn110.pn.pn.pn = phi { ptr, i32 } [ %.pn110.pn.pn, %316 ], [ %305, %304 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %59) #7
  br label %318

318:                                              ; preds = %317, %302
  %.pn110.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn110.pn.pn.pn, %317 ], [ %303, %302 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #7
  br label %319

319:                                              ; preds = %318, %300
  %.pn110.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn110.pn.pn.pn.pn, %318 ], [ %301, %300 ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %61) #7
  br label %320

320:                                              ; preds = %319, %298
  %.pn110.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn110.pn.pn.pn.pn.pn, %319 ], [ %299, %298 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %62) #7
  br label %321

321:                                              ; preds = %320, %296
  %.pn110.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn110.pn.pn.pn.pn.pn.pn, %320 ], [ %297, %296 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %62) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %60) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %58) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %56) #7
  br label %328

322:                                              ; preds = %281
  %323 = landingpad { ptr, i32 }
          cleanup
  br label %327

324:                                              ; preds = %283
  %325 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit

.loopexit.loopexit:                               ; preds = %284
  %326 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt15__new_allocatorIN6ngraph6OutputINS0_4NodeEEEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %67) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %65) #7
  br label %.loopexit

.loopexit:                                        ; preds = %.loopexit.loopexit, %324
  %.pn119 = phi { ptr, i32 } [ %325, %324 ], [ %326, %.loopexit.loopexit ]
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %66) #7
  br label %327

327:                                              ; preds = %.loopexit, %322
  %.pn119.pn = phi { ptr, i32 } [ %.pn119, %.loopexit ], [ %323, %322 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %66) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %65) #7
  br label %328

328:                                              ; preds = %327, %321
  %.pn119.pn.pn = phi { ptr, i32 } [ %.pn119.pn, %327 ], [ %.pn110.pn.pn.pn.pn.pn.pn.pn, %321 ]
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v08ConstantELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %51) #7
  br label %329

329:                                              ; preds = %328, %295, %286
  %.pn119.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn, %328 ], [ %.pn107.pn, %295 ], [ %287, %286 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %51) #7
  br label %330

330:                                              ; preds = %329, %261, %220
  %.pn119.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn, %329 ], [ %.pn97.pn.pn.pn.pn.pn.pn.pn.pn, %220 ], [ %.pn88.pn.pn.pn.pn.pn.pn.pn, %261 ]
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %31) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %31) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #7
  br label %331

331:                                              ; preds = %330, %191
  %.pn119.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn, %330 ], [ %.pn82.pn.pn.pn.pn, %191 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %25) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #7
  br label %332

332:                                              ; preds = %331, %174
  %.pn119.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn, %331 ], [ %.pn76.pn.pn.pn.pn, %174 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %19) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18) #7
  br label %333

333:                                              ; preds = %332, %156
  %.pn119.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn, %332 ], [ %157, %156 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %18) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #7
  br label %334

334:                                              ; preds = %333, %155
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn, %333 ], [ %.pn74, %155 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %16) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %14) #7
  br label %335

335:                                              ; preds = %334, %150
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn, %334 ], [ %.pn72, %150 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %14) #7
  call void @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %12) #7
  br label %336

336:                                              ; preds = %335, %145
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn, %335 ], [ %.pn70, %145 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %12) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %11) #7
  br label %337

337:                                              ; preds = %336, %139
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %336 ], [ %140, %139 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #7
  call void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %10) #7
  br label %338

338:                                              ; preds = %337, %137
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %337 ], [ %138, %137 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %10) #7
  call void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16) %8) #7
  br label %339

339:                                              ; preds = %338, %136
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %338 ], [ %.pn, %136 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #7
  br label %340

340:                                              ; preds = %339, %130
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %339 ], [ %131, %130 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %7) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #7
  br label %341

341:                                              ; preds = %340, %128
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %340 ], [ %129, %128 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #7
  br label %342

342:                                              ; preds = %341, %126
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %341 ], [ %127, %126 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %5) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4) #7
  br label %343

343:                                              ; preds = %342, %124
  %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %342 ], [ %125, %124 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %4) #7
  call void @_ZN6ngraph6OutputINS_4NodeEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %3) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %3) #7
  resume { ptr, i32 } %.pn119.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn
}

declare void @_ZNK6ngraph4Node11input_valueEm(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8, ptr noundef nonnull align 8 dereferenceable(680), i64 noundef) local_unnamed_addr #5

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEESt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESB_E4typeEEDpOT0_(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.134") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #6

declare void @_ZN6ngraph7builder9transposeERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRNS0_6OutputINS0_4NodeEEERSt10shared_ptrIS5_EEES8_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.134") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #6

declare void @_ZN6ngraph7builder5splitERKNS_6OutputINS_4NodeEEEmi(ptr dead_on_unwind writable sret(%"class.std::vector.82") align 8, ptr noundef nonnull align 8 dereferenceable(24), i64 noundef, i32 noundef) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v03DotEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2IS1_EERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

declare void @_ZNK6ngraph2op4util18ActivationFunctionclERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8, ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

declare void @_ZNK6ngraph2op4util11RNNCellBase4clipERKNS_6OutputINS_4NodeEEE(ptr dead_on_unwind writable sret(%"class.ngraph::Output") align 8, ptr noundef nonnull align 8 dereferenceable(96), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

declare void @_ZN6ngraph2op4util11RNNCellBase3addERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIN6ngraph6OutputINS0_4NodeEEESaIS3_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

declare void @_ZN6ngraph2op4util11RNNCellBase3mulERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN6ngraph6OutputINS_4NodeEEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt11make_sharedIN6ngraph2op2v03DotEJRSt10shared_ptrINS0_4NodeEERNS0_6OutputIS5_EEEES4_INSt9enable_ifIXntsr8is_arrayIT_EE5valueESC_E4typeEEDpOT0_(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.134") align 8, ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #6

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt12__shared_ptrIN6ngraph2op2v03DotELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph2op2v08Constant6createIfEESt10shared_ptrIS2_ERKNS_7element4TypeENS_5ShapeESt6vectorIT_SaISC_EE(ptr dead_on_unwind noalias writable sret(%"class.std::shared_ptr.137") align 8, ptr noundef nonnull align 4 dereferenceable(4), ptr noundef, ptr noundef) local_unnamed_addr #2 align 2

declare noundef nonnull align 4 dereferenceable(4) ptr @_ZNK6ngraph6OutputINS_4NodeEE16get_element_typeEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

declare noundef nonnull align 8 dereferenceable(24) ptr @_ZNK6ngraph6OutputINS_4NodeEE9get_shapeEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

declare void @_ZN6ngraph5ShapeC1ERKS0_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZN6ngraph10shape_sizeINS_5ShapeEEEmRKT_(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSaIfEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorIfSaIfEEC2EmRKfRKS0_(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef, ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

declare void @_ZN6ngraph2op4util11RNNCellBase3subERKNS_6OutputINS_4NodeEEES7_(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN6ngraph6OutputINS_4NodeEEC2INS_2op2v08ConstantEEERKSt10shared_ptrIT_E(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

declare void @_ZNK6ngraph6OutputINS_4NodeEE19get_node_shared_ptrEv(ptr dead_on_unwind writable sret(%"class.std::shared_ptr.79") align 8, ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt12__shared_ptrIN6ngraph2op2v08ConstantELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt12__shared_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EED2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIfED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #7 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !74, i64 808}
!6 = !{!"_ZTSN6ngraph2op2v37GRUCellE", !7, i64 0, !64, i64 680, !73, i64 776, !73, i64 792, !74, i64 808}
!7 = !{!"_ZTSN6ngraph2op4util7FusedOpE", !8, i64 0}
!8 = !{!"_ZTSN6ngraph2op2OpE", !9, i64 0}
!9 = !{!"_ZTSN6ngraph4NodeE", !10, i64 8, !17, i64 24, !17, i64 80, !23, i64 136, !27, i64 160, !31, i64 184, !19, i64 216, !31, i64 224, !31, i64 256, !33, i64 288, !35, i64 344, !43, i64 392, !48, i64 472, !53, i64 552, !55, i64 608, !56, i64 616, !59, i64 632}
!10 = !{!"_ZTSSt23enable_shared_from_thisIN6ngraph4NodeEE", !11, i64 0}
!11 = !{!"_ZTSSt8weak_ptrIN6ngraph4NodeEE", !12, i64 0}
!12 = !{!"_ZTSSt10__weak_ptrIN6ngraph4NodeELN9__gnu_cxx12_Lock_policyE2EE", !13, i64 0, !16, i64 8}
!13 = !{!"any pointer", !14, i64 0}
!14 = !{!"omnipotent char", !15, i64 0}
!15 = !{!"Simple C++ TBAA"}
!16 = !{!"_ZTSSt12__weak_countILN9__gnu_cxx12_Lock_policyE2EE", !13, i64 0}
!17 = !{!"_ZTSSt13unordered_setIPN6ngraph10descriptor6TensorESt4hashIS3_ESt8equal_toIS3_ESaIS3_EE", !18, i64 0}
!18 = !{!"_ZTSSt10_HashtableIPN6ngraph10descriptor6TensorES3_SaIS3_ENSt8__detail9_IdentityESt8equal_toIS3_ESt4hashIS3_ENS5_18_Mod_range_hashingENS5_20_Default_ranged_hashENS5_20_Prime_rehash_policyENS5_17_Hashtable_traitsILb0ELb1ELb1EEEE", !13, i64 0, !19, i64 8, !20, i64 16, !19, i64 24, !21, i64 32, !13, i64 48}
!19 = !{!"long", !14, i64 0}
!20 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !13, i64 0}
!21 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !22, i64 0, !19, i64 8}
!22 = !{!"float", !14, i64 0}
!23 = !{!"_ZTSSt6vectorIPN6ngraph4NodeESaIS2_EE", !24, i64 0}
!24 = !{!"_ZTSSt12_Vector_baseIPN6ngraph4NodeESaIS2_EE", !25, i64 0}
!25 = !{!"_ZTSNSt12_Vector_baseIPN6ngraph4NodeESaIS2_EE12_Vector_implE", !26, i64 0}
!26 = !{!"_ZTSNSt12_Vector_baseIPN6ngraph4NodeESaIS2_EE17_Vector_impl_dataE", !13, i64 0, !13, i64 8, !13, i64 16}
!27 = !{!"_ZTSSt6vectorISt10shared_ptrIN6ngraph4NodeEESaIS3_EE", !28, i64 0}
!28 = !{!"_ZTSSt12_Vector_baseISt10shared_ptrIN6ngraph4NodeEESaIS3_EE", !29, i64 0}
!29 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN6ngraph4NodeEESaIS3_EE12_Vector_implE", !30, i64 0}
!30 = !{!"_ZTSNSt12_Vector_baseISt10shared_ptrIN6ngraph4NodeEESaIS3_EE17_Vector_impl_dataE", !13, i64 0, !13, i64 8, !13, i64 16}
!31 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !32, i64 0, !19, i64 8, !14, i64 16}
!32 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !13, i64 0}
!33 = !{!"_ZTSSt13unordered_setINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4hashIS5_ESt8equal_toIS5_ESaIS5_EE", !34, i64 0}
!34 = !{!"_ZTSSt10_HashtableINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_SaIS5_ENSt8__detail9_IdentityESt8equal_toIS5_ESt4hashIS5_ENS7_18_Mod_range_hashingENS7_20_Default_ranged_hashENS7_20_Prime_rehash_policyENS7_17_Hashtable_traitsILb1ELb1ELb1EEEE", !13, i64 0, !19, i64 8, !20, i64 16, !19, i64 24, !21, i64 32, !13, i64 48}
!35 = !{!"_ZTSSt3setISt10shared_ptrIN6ngraph4NodeEESt4lessIS3_ESaIS3_EE", !36, i64 0}
!36 = !{!"_ZTSSt8_Rb_treeISt10shared_ptrIN6ngraph4NodeEES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE", !37, i64 0}
!37 = !{!"_ZTSNSt8_Rb_treeISt10shared_ptrIN6ngraph4NodeEES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb1EEE", !38, i64 0, !40, i64 8}
!38 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessISt10shared_ptrIN6ngraph4NodeEEEE", !39, i64 0}
!39 = !{!"_ZTSSt4lessISt10shared_ptrIN6ngraph4NodeEEE"}
!40 = !{!"_ZTSSt15_Rb_tree_header", !41, i64 0, !19, i64 32}
!41 = !{!"_ZTSSt18_Rb_tree_node_base", !42, i64 0, !13, i64 8, !13, i64 16, !13, i64 24}
!42 = !{!"_ZTSSt14_Rb_tree_color", !14, i64 0}
!43 = !{!"_ZTSSt5dequeIN6ngraph10descriptor5InputESaIS2_EE", !44, i64 0}
!44 = !{!"_ZTSSt11_Deque_baseIN6ngraph10descriptor5InputESaIS2_EE", !45, i64 0}
!45 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor5InputESaIS2_EE11_Deque_implE", !46, i64 0}
!46 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor5InputESaIS2_EE16_Deque_impl_dataE", !13, i64 0, !19, i64 8, !47, i64 16, !47, i64 48}
!47 = !{!"_ZTSSt15_Deque_iteratorIN6ngraph10descriptor5InputERS2_PS2_E", !13, i64 0, !13, i64 8, !13, i64 16, !13, i64 24}
!48 = !{!"_ZTSSt5dequeIN6ngraph10descriptor6OutputESaIS2_EE", !49, i64 0}
!49 = !{!"_ZTSSt11_Deque_baseIN6ngraph10descriptor6OutputESaIS2_EE", !50, i64 0}
!50 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor6OutputESaIS2_EE11_Deque_implE", !51, i64 0}
!51 = !{!"_ZTSNSt11_Deque_baseIN6ngraph10descriptor6OutputESaIS2_EE16_Deque_impl_dataE", !13, i64 0, !19, i64 8, !52, i64 16, !52, i64 48}
!52 = !{!"_ZTSSt15_Deque_iteratorIN6ngraph10descriptor6OutputERS2_PS2_E", !13, i64 0, !13, i64 8, !13, i64 16, !13, i64 24}
!53 = !{!"_ZTSSt13unordered_mapIPN6ngraph4NodeENS0_8autodiff8AdjointsESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !54, i64 0}
!54 = !{!"_ZTSSt10_HashtableIPN6ngraph4NodeESt4pairIKS2_NS0_8autodiff8AdjointsEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !13, i64 0, !19, i64 8, !20, i64 16, !19, i64 24, !21, i64 32, !13, i64 48}
!55 = !{!"int", !14, i64 0}
!56 = !{!"_ZTSSt10shared_ptrIN6ngraph2op4util13OpAnnotationsEE", !57, i64 0}
!57 = !{!"_ZTSSt12__shared_ptrIN6ngraph2op4util13OpAnnotationsELN9__gnu_cxx12_Lock_policyE2EE", !13, i64 0, !58, i64 8}
!58 = !{!"_ZTSSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EE", !13, i64 0}
!59 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt10shared_ptrIN6ngraph7VariantEESt4lessIS5_ESaISt4pairIKS5_S9_EEE", !60, i64 0}
!60 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_St10shared_ptrIN6ngraph7VariantEEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE", !61, i64 0}
!61 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_St10shared_ptrIN6ngraph7VariantEEESt10_Select1stISC_ESt4lessIS5_ESaISC_EE13_Rb_tree_implISG_Lb1EEE", !62, i64 0, !40, i64 8}
!62 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE", !63, i64 0}
!63 = !{!"_ZTSSt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE"}
!64 = !{!"_ZTSN6ngraph2op4util11RNNCellBaseE", !19, i64 8, !22, i64 16, !65, i64 24, !69, i64 48, !69, i64 72}
!65 = !{!"_ZTSSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !66, i64 0}
!66 = !{!"_ZTSSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !67, i64 0}
!67 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE12_Vector_implE", !68, i64 0}
!68 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_Vector_impl_dataE", !13, i64 0, !13, i64 8, !13, i64 16}
!69 = !{!"_ZTSSt6vectorIfSaIfEE", !70, i64 0}
!70 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !71, i64 0}
!71 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !72, i64 0}
!72 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !13, i64 0, !13, i64 8, !13, i64 16}
!73 = !{!"_ZTSN6ngraph2op4util18ActivationFunctionE", !13, i64 0, !22, i64 8, !22, i64 12}
!74 = !{!"bool", !14, i64 0}
!75 = !{i8 0, i8 2}
!76 = !{}
!77 = !{!22, !22, i64 0}


; Effective O3 passes: EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,LoopSimplifyPass,SROAPass,SimplifyCFGPass