; LLVM IR from ChenyangZhang-cs/iMLBench :: MLP/co-run&zero-copy/src (debugger)

; 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::condition_variable" = type { %"class.std::__condvar" }
%"class.std::__condvar" = type { %union.pthread_cond_t }
%union.pthread_cond_t = type { %struct.__pthread_cond_s }
%struct.__pthread_cond_s = type { %union.__atomic_wide_counter, %union.__atomic_wide_counter, [2 x i32], [2 x i32], i32, i32, [2 x i32] }
%union.__atomic_wide_counter = type { i64 }
%"class.std::vector.17" = type { %"struct.std::_Vector_base.18" }
%"struct.std::_Vector_base.18" = type { %"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl" }
%"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl" = type { %"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.clnet::Logger" = type { [8 x ptr], i32, %"class.std::mutex", %"class.std::unordered_map.78" }
%"class.std::mutex" = type { %"class.std::__mutex_base" }
%"class.std::__mutex_base" = type { %union.pthread_mutex_t }
%union.pthread_mutex_t = type { %struct.__pthread_mutex_s }
%struct.__pthread_mutex_s = type { i32, i32, i32, i32, i32, i16, i16, %struct.__pthread_internal_list }
%struct.__pthread_internal_list = type { ptr, ptr }
%"class.std::unordered_map.78" = type { %"class.std::_Hashtable.79" }
%"class.std::_Hashtable.79" = 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::basic_istream" = type { ptr, i64, %"class.std::basic_ios" }
%"class.std::basic_ios" = type { %"class.std::ios_base", ptr, i8, i8, ptr, ptr, ptr, ptr }
%"class.std::ios_base" = type { ptr, i64, i64, i32, i32, i32, ptr, %"struct.std::ios_base::_Words", [8 x %"struct.std::ios_base::_Words"], i32, ptr, %"class.std::locale" }
%"struct.std::ios_base::_Words" = type { ptr, i64 }
%"class.std::locale" = type { ptr }
%"class.std::unordered_map.98" = type { %"class.std::_Hashtable.99" }
%"class.std::_Hashtable.99" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", 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] }
%"struct.std::__detail::_Node_iterator" = type { %"struct.std::__detail::_Node_iterator_base" }
%"struct.std::__detail::_Node_iterator_base" = type { ptr }
%"struct.std::pair" = type { ptr, i64 }
%class.anon = type { i8 }
%"class.__gnu_cxx::__normal_iterator.77" = type { ptr }
%"class.cl::Context" = type { %"class.cl::detail::Wrapper" }
%"class.cl::detail::Wrapper" = type { ptr }
%"class.std::__cxx11::basic_stringstream" = type { %"class.std::basic_iostream.base", %"class.std::__cxx11::basic_stringbuf", %"class.std::basic_ios" }
%"class.std::basic_iostream.base" = type { %"class.std::basic_istream.base", %"class.std::basic_ostream.base" }
%"class.std::basic_istream.base" = type { ptr, i64 }
%"class.std::basic_ostream.base" = type { ptr }
%"class.std::__cxx11::basic_stringbuf" = type { %"class.std::basic_streambuf", i32, %"class.std::__cxx11::basic_string" }
%"class.std::basic_streambuf" = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, %"class.std::locale" }
%"class.std::basic_ofstream" = type { %"class.std::basic_ostream.base", %"class.std::basic_filebuf", %"class.std::basic_ios" }
%"class.std::basic_filebuf" = type { %"class.std::basic_streambuf", %union.pthread_mutex_t, %"class.std::__basic_file", i32, %struct.__mbstate_t, %struct.__mbstate_t, %struct.__mbstate_t, ptr, i64, i8, i8, i8, i8, ptr, ptr, i8, ptr, ptr, i64, ptr, ptr }
%"class.std::__basic_file" = type <{ ptr, i8, [7 x i8] }>
%struct.__mbstate_t = type { i32, %union.anon.76 }
%union.anon.76 = type { i32 }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = 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.__gnu_cxx::__normal_iterator" = type { ptr }
%"class.std::basic_ifstream" = type { %"class.std::basic_istream.base", %"class.std::basic_filebuf", %"class.std::basic_ios" }
%"class.std::vector.12" = type { %"struct.std::_Vector_base.13" }
%"struct.std::_Vector_base.13" = type { %"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl" }
%"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::function" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%"class.std::function.112" = type { %"class.std::_Function_base", ptr }
%"class.std::allocator" = type { i8 }
%"struct.clnet::DeviceInstance" = type { i32, [4 x i8], %"class.cl::Device", %"struct.std::atomic", %"struct.std::atomic", %"class.std::vector.24", i32, i32, %"class.cl::CommandQueue", %"class.std::unordered_map", %"class.std::unordered_map.34", %"class.std::unordered_map.48", %"class.std::unordered_map.62" }
%"class.cl::Device" = type { %"class.cl::detail::Wrapper.base", [7 x i8] }
%"class.cl::detail::Wrapper.base" = type <{ ptr, i8 }>
%"struct.std::atomic" = type { %"struct.std::__atomic_base" }
%"struct.std::__atomic_base" = type { i32 }
%"class.std::vector.24" = type { %"struct.std::_Vector_base.25" }
%"struct.std::_Vector_base.25" = type { %"struct.std::_Vector_base<cl::Event, std::allocator<cl::Event>>::_Vector_impl" }
%"struct.std::_Vector_base<cl::Event, std::allocator<cl::Event>>::_Vector_impl" = type { %"struct.std::_Vector_base<cl::Event, std::allocator<cl::Event>>::_Vector_impl_data" }
%"struct.std::_Vector_base<cl::Event, std::allocator<cl::Event>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.cl::CommandQueue" = type { %"class.cl::detail::Wrapper.0" }
%"class.cl::detail::Wrapper.0" = type { ptr }
%"class.std::unordered_map" = type { %"class.std::_Hashtable" }
%"class.std::_Hashtable" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::unordered_map.34" = type { %"class.std::_Hashtable.35" }
%"class.std::_Hashtable.35" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::unordered_map.48" = type { %"class.std::_Hashtable.49" }
%"class.std::_Hashtable.49" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::unordered_map.62" = type { %"class.std::_Hashtable.63" }
%"class.std::_Hashtable.63" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.clnet::Tensor" = type { ptr, %"class.std::vector.12", %"class.std::vector.17", %"class.std::__cxx11::basic_string", %"class.std::vector.17", i64, ptr, ptr, i64 }
%"struct.clnet::type::StochasticGradientDescentUpdater" = type <{ %"struct.clnet::type::Updater", float, float, float, [4 x i8] }>
%"struct.clnet::type::Updater" = type { %"struct.clnet::Tensor", %"struct.clnet::type::Structured" }
%"struct.clnet::type::Structured" = type { ptr }
%"struct.clnet::type::IterativeOptimizer" = type { %"struct.clnet::Tensor", %"struct.clnet::type::Structured", i64 }

@.str.4 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTISt13runtime_error = external constant ptr
@_ZN5clnet18debugger_device_idE = external dso_local global i32, align 4
@_ZN5clnet8debuggerE = external dso_local global ptr, align 8
@_ZN5clnet10breakpointE = external dso_local global %"class.std::condition_variable", align 8
@.str.11 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZN5clnet6Tensor3ALLE = external global %"class.std::vector.17", align 8
@_ZN5clnet6loggerE = external global %"class.clnet::Logger", align 8
@.str.19 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTISt16invalid_argument = external constant ptr
@_ZSt3cin = external global %"class.std::basic_istream", align 8
@.str.34 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [5 x i8], align 1
@_ZN5clnet20CLNET_TENSOR_GLOBALSE = external global i64, align 8
@.str.36 = external hidden unnamed_addr constant [35 x i8], align 1
@_ZN5clnet11_breakpointE = external global ptr, align 8
@.str.37 = external hidden unnamed_addr constant [31 x i8], align 1
@_ZN5clnet20breakpoint_hit_timesE = external global i64, align 8
@.str.38 = external hidden unnamed_addr constant [38 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.48 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.50 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.52 = external hidden unnamed_addr constant [8 x i8], align 1
@_ZN5clnet12microsecondsE = external global i64, align 8
@.str.53 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.54 = external hidden unnamed_addr constant [6 x i8], align 1
@_ZN5clnet12kernels_costE = external global %"class.std::unordered_map.98", align 8
@.str.55 = external hidden unnamed_addr constant [36 x i8], align 1
@.str.56 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.58 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.62 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.64 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.66 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTIN5clnet6TensorE = external constant ptr
@_ZTIN5clnet4type9ParameterE = external constant ptr
@.str.68 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.70 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.72 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.74 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.76 = external hidden unnamed_addr constant [39 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.78 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.79 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.80 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.81 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.82 = external hidden unnamed_addr constant [141 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [107 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [143 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [122 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [149 x i8], align 1
@.str.87 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.88 = external hidden unnamed_addr constant [76 x i8], align 1
@.str.89 = external hidden unnamed_addr constant [64 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [101 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [140 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [92 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [76 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [67 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [101 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [119 x i8], align 1
@.str.98 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [121 x i8], align 1
@.str.100 = external hidden unnamed_addr constant [76 x i8], align 1
@.str.101 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.102 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.103 = external hidden unnamed_addr constant [14 x i8], align 1
@_ZTIN5clnet4type32StochasticGradientDescentUpdaterE = external constant ptr
@.str.104 = external hidden unnamed_addr constant [56 x i8], align 1
@.str.105 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.106 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.107 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.108 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.109 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.110 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.111 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.112 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.113 = external hidden unnamed_addr constant [11 x i8], align 1
@_ZTIN5clnet4type18IterativeOptimizerE = external constant ptr
@.str.114 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.115 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.116 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTIN5clnet4back4LossE = external constant ptr
@.str.117 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.118 = external hidden unnamed_addr constant [14 x i8], align 1
@_ZN5clnet8_currentE = external global ptr, align 8
@.str.119 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.120 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.121 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.122 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.123 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.124 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.125 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.126 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.127 = external hidden unnamed_addr constant [32 x i8], align 1

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

; Function Attrs: mustprogress nounwind uwtable
declare noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) #0 align 2

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

; Function Attrs: mustprogress uwtable
declare void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), i64 noundef, i64 noundef) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #0 align 2

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

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

; Function Attrs: mustprogress uwtable
declare void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(128)) unnamed_addr #2 align 2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(32)) #3

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEEcvbEv(ptr noundef nonnull align 8 dereferenceable(264)) #2 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN9__gnu_cxxneIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEEbRKNS_17__normal_iteratorIT_T0_EESG_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(32) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef i32 @_ZNSt7__cxx114stoiERKNS_12basic_stringIcSt11char_traitsIcESaIcEEEPmi(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i32 noundef) #3

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8)) #0 align 2

declare ptr @__cxa_allocate_exception(i64)

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #3

declare void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #5

; Function Attrs: nounwind
declare void @_ZNSt13runtime_errorD1Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #6

declare void @__cxa_throw(ptr, ptr, ptr)

declare void @__cxa_free_exception(ptr)

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, i32 noundef) #4

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128)) unnamed_addr #0 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet9type_nameB5cxx11EPNS_6TensorE(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef) #2

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32)) #0 align 2

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERi(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 4 dereferenceable(4)) #5

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_RS3_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 1 dereferenceable(1)) #5

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet18save_tensor_as_csvEPNS_6TensorERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_14DeviceInstanceEb(ptr noundef, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i1 noundef zeroext) #2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(248), ptr noundef nonnull align 8 dereferenceable(32), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(248)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(248)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet12load_tensorsERSiPNS_14DeviceInstanceE(ptr dead_on_unwind noalias writable sret(%"class.std::vector.17") align 8, ptr noundef nonnull align 8 dereferenceable(16), ptr noundef) #2

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

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef) #2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #3

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

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef ptr @_ZN5clnet20load_tensor_from_csvERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_6TensorEPNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, ptr noundef) #2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256), ptr noundef nonnull align 8 dereferenceable(32), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) #3

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

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

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 4 dereferenceable(4)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256)) unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet15describe_tensorEPNS_6TensorEb(ptr noundef, i1 noundef zeroext) #2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA5_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(5)) #2 align 2

declare noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef) #5

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(ptr noundef nonnull align 8 dereferenceable(8)) #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 8 dereferenceable(32)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(2)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt6vectorIxSaIxEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 8 dereferenceable(8)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(12)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA13_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(13)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA17_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(17)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA14_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(14)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA9_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(9)) #2 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN5clnet15debugger_threadERNS_14DeviceInstanceERNS_6TensorE(ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull align 8 dereferenceable(144) %1) #2 personality ptr @__gxx_personality_v0 {
  %3 = alloca ptr, align 8
  %4 = alloca ptr, align 8
  %5 = alloca ptr, align 8
  %6 = alloca %"class.std::__cxx11::basic_string", align 8
  %7 = alloca %"class.std::__cxx11::basic_string", align 8
  %8 = alloca ptr, align 8
  %9 = alloca i32, align 4
  %10 = alloca i8, align 1
  %11 = alloca %"class.std::__cxx11::basic_string", align 8
  %12 = alloca ptr, align 8
  %13 = alloca ptr, align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca i8, align 1
  %16 = alloca ptr, align 8
  %17 = alloca %"class.std::vector.17", align 8
  %18 = alloca ptr, align 8
  %19 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %20 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %21 = alloca %"struct.std::pair", align 8
  %22 = alloca %class.anon, align 1
  %23 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %24 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %25 = alloca %class.anon, align 1
  %26 = alloca i64, align 8
  %27 = alloca ptr, align 8
  %28 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %29 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %30 = alloca ptr, align 8
  %31 = alloca ptr, align 8
  %32 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %33 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %34 = alloca ptr, align 8
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca %"class.std::__cxx11::basic_string", align 8
  %37 = alloca i32, align 4
  %38 = alloca ptr, align 8
  %39 = alloca %"class.cl::Context", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::__cxx11::basic_string", align 8
  %42 = alloca %"class.std::vector.17", align 8
  %43 = alloca ptr, align 8
  %44 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %45 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %46 = alloca ptr, align 8
  %47 = alloca %"class.std::__cxx11::basic_stringstream", align 8
  %48 = alloca ptr, align 8
  %49 = alloca %"class.std::__cxx11::basic_string", align 8
  %50 = alloca i64, align 8
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::basic_ofstream", align 8
  %54 = alloca i64, align 8
  %55 = alloca %"class.std::__cxx11::basic_string", align 8
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca %"class.std::vector", align 8
  %58 = alloca ptr, align 8
  %59 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %60 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %61 = alloca ptr, align 8
  %62 = alloca %"class.std::__cxx11::basic_stringstream", align 8
  %63 = alloca ptr, align 8
  %64 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %65 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %66 = alloca ptr, align 8
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca ptr, align 8
  %70 = alloca %"class.std::basic_ifstream", align 8
  %71 = alloca %"class.std::vector.17", align 8
  %72 = alloca i64, align 8
  %73 = alloca %"class.std::vector.12", align 8
  %74 = alloca %"class.std::vector.12", align 8
  %75 = alloca %"class.std::vector.12", align 8
  %76 = alloca %"class.std::__cxx11::basic_string", align 8
  %77 = alloca i32, align 4
  %78 = alloca i32, align 4
  %79 = alloca %"class.std::__cxx11::basic_string", align 8
  %80 = alloca i64, align 8
  %81 = alloca %"class.std::__cxx11::basic_string", align 8
  %82 = alloca %"class.std::__cxx11::basic_string", align 8
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca %"class.std::vector.17", align 8
  %85 = alloca ptr, align 8
  %86 = alloca ptr, align 8
  %87 = alloca %"class.std::__cxx11::basic_string", align 8
  %88 = alloca i1, align 1
  %89 = alloca i8, align 1
  %90 = alloca float, align 4
  %91 = alloca %"class.std::function", align 8
  %92 = alloca %"class.std::__cxx11::basic_string", align 8
  %93 = alloca ptr, align 8
  %94 = alloca ptr, align 8
  %95 = alloca %"class.std::__cxx11::basic_string", align 8
  %96 = alloca i1, align 1
  %97 = alloca i8, align 1
  %98 = alloca float, align 4
  %99 = alloca %"class.std::function", align 8
  %100 = alloca %"class.std::__cxx11::basic_string", align 8
  %101 = alloca ptr, align 8
  %102 = alloca ptr, align 8
  %103 = alloca %"class.std::__cxx11::basic_string", align 8
  %104 = alloca i1, align 1
  %105 = alloca i8, align 1
  %106 = alloca i64, align 8
  %107 = alloca %"class.std::function.112", align 8
  %108 = alloca %"class.std::__cxx11::basic_string", align 8
  %109 = alloca ptr, align 8
  %110 = alloca %"class.std::__cxx11::basic_string", align 8
  %111 = alloca %"class.std::__cxx11::basic_string", align 8
  %112 = alloca i1, align 1
  %113 = alloca float, align 4
  %114 = alloca i64, align 8
  %115 = alloca i32, align 4
  %116 = alloca %"class.std::__cxx11::basic_string", align 8
  %117 = alloca %"class.std::__cxx11::basic_string", align 8
  %118 = alloca %"class.std::__cxx11::basic_string", align 8
  %119 = alloca %"class.std::__cxx11::basic_string", align 8
  %120 = alloca %"class.std::__cxx11::basic_string", align 8
  %121 = alloca %"class.std::__cxx11::basic_string", align 8
  %122 = alloca %"class.std::__cxx11::basic_string", align 8
  %123 = alloca %"class.std::allocator", align 1
  %124 = alloca i64, align 8
  %125 = alloca %"class.std::__cxx11::basic_string", align 8
  %126 = alloca %"class.std::__cxx11::basic_string", align 8
  %127 = alloca i8, align 1
  %128 = alloca %"class.std::__cxx11::basic_string", align 8
  %129 = alloca %"class.std::__cxx11::basic_string", align 8
  %130 = alloca %"class.std::__cxx11::basic_string", align 8
  %131 = alloca %"class.std::__cxx11::basic_string", align 8
  %132 = alloca %"class.std::__cxx11::basic_string", align 8
  %133 = alloca %"class.std::vector.12", align 8
  %134 = alloca %"class.std::vector.12", align 8
  %135 = alloca %"class.std::vector.12", align 8
  %136 = alloca %"class.std::__cxx11::basic_string", align 8
  %137 = alloca %"class.std::vector.12", align 8
  %138 = alloca %"class.std::vector.12", align 8
  %139 = alloca %"class.std::vector.12", align 8
  %140 = alloca %"class.std::__cxx11::basic_string", align 8
  %141 = alloca %"class.std::vector.12", align 8
  %142 = alloca %"class.std::vector.12", align 8
  %143 = alloca %"class.std::vector.12", align 8
  %144 = alloca %"class.std::__cxx11::basic_string", align 8
  %145 = alloca %"class.std::vector.12", align 8
  %146 = alloca %"class.std::vector.12", align 8
  %147 = alloca %"class.std::vector.12", align 8
  %148 = alloca %"class.std::__cxx11::basic_string", align 8
  %149 = alloca %"class.std::vector.12", align 8
  %150 = alloca %"class.std::vector.12", align 8
  %151 = alloca %"class.std::vector.12", align 8
  %152 = alloca %"class.std::__cxx11::basic_string", align 8
  %153 = alloca %"class.std::vector.12", align 8
  %154 = alloca %"class.std::vector.12", align 8
  %155 = alloca %"class.std::vector.12", align 8
  %156 = alloca %"class.std::__cxx11::basic_string", align 8
  %157 = alloca float, align 4
  %158 = alloca %"class.std::vector.12", align 8
  %159 = alloca %"class.std::vector.12", align 8
  %160 = alloca %"class.std::vector.12", align 8
  %161 = alloca %"class.std::__cxx11::basic_string", align 8
  %162 = alloca i32, align 4
  %163 = alloca %"class.std::vector.12", align 8
  %164 = alloca %"class.std::vector.12", align 8
  %165 = alloca %"class.std::vector.12", align 8
  %166 = alloca %"class.std::__cxx11::basic_string", align 8
  %167 = alloca i8, align 1
  %168 = alloca %"class.std::vector.12", align 8
  %169 = alloca %"class.std::vector.12", align 8
  %170 = alloca %"class.std::vector.12", align 8
  %171 = alloca %"class.std::__cxx11::basic_string", align 8
  %172 = alloca i64, align 8
  %173 = alloca %"class.std::vector.12", align 8
  %174 = alloca %"class.std::vector.12", align 8
  %175 = alloca %"class.std::vector.12", align 8
  %176 = alloca %"class.std::__cxx11::basic_string", align 8
  %177 = alloca i16, align 2
  %178 = alloca %"class.std::vector.12", align 8
  %179 = alloca %"class.std::vector.12", align 8
  %180 = alloca %"class.std::vector.12", align 8
  %181 = alloca %"class.std::__cxx11::basic_string", align 8
  %182 = alloca double, align 8
  %183 = alloca %"class.std::vector.12", align 8
  %184 = alloca %"class.std::vector.12", align 8
  %185 = alloca %"class.std::vector.12", align 8
  %186 = alloca %"class.std::__cxx11::basic_string", align 8
  %187 = alloca ptr, align 8
  %188 = alloca ptr, align 8
  %189 = alloca ptr, align 8
  %190 = alloca ptr, align 8
  store ptr %0, ptr %3, align 8, !tbaa !5
  store ptr %1, ptr %4, align 8, !tbaa !5
  %191 = load ptr, ptr %3, align 8, !tbaa !5
  %192 = getelementptr inbounds %"struct.clnet::DeviceInstance", ptr %191, i32 0, i32 0
  %193 = load i32, ptr %192, align 8, !tbaa !9
  store i32 %193, ptr @_ZN5clnet18debugger_device_idE, align 4, !tbaa !35
  call void @llvm.lifetime.start.p0(i64 8, ptr %5) #13
  store ptr null, ptr %5, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %6) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %7) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  br label %194

194:                                              ; preds = %2213, %2185, %2
  br label %195

195:                                              ; preds = %194
  %196 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %6)
          to label %197 unwind label %214

197:                                              ; preds = %195
  %198 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.34)
          to label %199 unwind label %214

199:                                              ; preds = %197
  br i1 %198, label %203, label %200

200:                                              ; preds = %199
  %201 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.35)
          to label %202 unwind label %214

202:                                              ; preds = %200
  br i1 %201, label %203, label %266

203:                                              ; preds = %202, %199
  %204 = load i64, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !36
  %205 = and i64 %204, 8
  %206 = icmp ne i64 %205, 0
  br i1 %206, label %207, label %218

207:                                              ; preds = %203
  %208 = load i64, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !36
  %209 = and i64 %208, -9
  store i64 %209, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !36
  %210 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA35_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(35) @.str.36)
          to label %211 unwind label %214

211:                                              ; preds = %207
  %212 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %210, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %213 unwind label %214

213:                                              ; preds = %211
  br label %218

214:                                              ; preds = %1013, %1011, %1009, %1007, %1005, %1003, %1001, %999, %997, %995, %993, %991, %989, %987, %985, %983, %981, %979, %977, %975, %973, %970, %967, %964, %962, %959, %956, %954, %951, %769, %766, %574, %571, %547, %544, %541, %344, %341, %324, %321, %318, %300, %297, %294, %291, %289, %285, %279, %276, %273, %269, %266, %211, %207, %200, %197, %195
  %215 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %216 = extractvalue { ptr, i32 } %215, 0
  store ptr %216, ptr %8, align 8
  %217 = extractvalue { ptr, i32 } %215, 1
  store i32 %217, ptr %9, align 4
  br label %2194

218:                                              ; preds = %213, %203
  call void @llvm.lifetime.start.p0(i64 1, ptr %10) #13
  %219 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %220 unwind label %230

220:                                              ; preds = %218
  %221 = trunc i32 %219 to i8
  store i8 %221, ptr %10, align 1, !tbaa !37
  %222 = load i8, ptr %10, align 1, !tbaa !37
  %223 = sext i8 %222 to i32
  %224 = icmp eq i32 %223, 10
  br i1 %224, label %225, label %234

225:                                              ; preds = %220
  store ptr null, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !5
  %226 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA31_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(31) @.str.37)
          to label %227 unwind label %230

227:                                              ; preds = %225
  %228 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %226, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %229 unwind label %230

229:                                              ; preds = %227
  br label %264

230:                                              ; preds = %260, %258, %253, %251, %239, %236, %234, %227, %225, %218
  %231 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %232 = extractvalue { ptr, i32 } %231, 0
  store ptr %232, ptr %8, align 8
  %233 = extractvalue { ptr, i32 } %231, 1
  store i32 %233, ptr %9, align 4
  br label %265

234:                                              ; preds = %220
  %235 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %236 unwind label %230

236:                                              ; preds = %234
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %237 unwind label %230

237:                                              ; preds = %236
  %238 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef %11)
          to label %239 unwind label %247

239:                                              ; preds = %237
  store ptr %238, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #13
  %240 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %241 unwind label %230

241:                                              ; preds = %239
  %242 = trunc i32 %240 to i8
  store i8 %242, ptr %10, align 1, !tbaa !37
  %243 = load i8, ptr %10, align 1, !tbaa !37
  %244 = sext i8 %243 to i32
  %245 = icmp eq i32 %244, 10
  br i1 %245, label %246, label %251

246:                                              ; preds = %241
  store i64 -1, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !38
  br label %263

247:                                              ; preds = %237
  %248 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %249 = extractvalue { ptr, i32 } %248, 0
  store ptr %249, ptr %8, align 8
  %250 = extractvalue { ptr, i32 } %248, 1
  store i32 %250, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #13
  br label %265

251:                                              ; preds = %241
  %252 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %253 unwind label %230

253:                                              ; preds = %251
  %254 = call noundef ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4dataEv(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  %255 = call i32 @atoi(ptr noundef %254) #9
  %256 = sext i32 %255 to i64
  store i64 %256, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !38
  %257 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA38_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(38) @.str.38)
          to label %258 unwind label %230

258:                                              ; preds = %253
  %259 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %257, ptr noundef nonnull align 8 dereferenceable(8) @_ZN5clnet20breakpoint_hit_timesE)
          to label %260 unwind label %230

260:                                              ; preds = %258
  %261 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %259, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %262 unwind label %230

262:                                              ; preds = %260
  br label %263

263:                                              ; preds = %262, %246
  call void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48) @_ZN5clnet10breakpointE) #13
  br label %264

264:                                              ; preds = %263, %229
  call void @llvm.lifetime.end.p0(i64 1, ptr %10) #13
  br label %2243

265:                                              ; preds = %247, %230
  call void @llvm.lifetime.end.p0(i64 1, ptr %10) #13
  br label %2194

266:                                              ; preds = %202
  %267 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.39)
          to label %268 unwind label %214

268:                                              ; preds = %266
  br i1 %267, label %272, label %269

269:                                              ; preds = %268
  %270 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.40)
          to label %271 unwind label %214

271:                                              ; preds = %269
  br i1 %270, label %272, label %273

272:                                              ; preds = %271, %268
  store i64 -1, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !38
  call void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48) @_ZN5clnet10breakpointE) #13
  br label %2242

273:                                              ; preds = %271
  %274 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.41)
          to label %275 unwind label %214

275:                                              ; preds = %273
  br i1 %274, label %279, label %276

276:                                              ; preds = %275
  %277 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.42)
          to label %278 unwind label %214

278:                                              ; preds = %276
  br i1 %277, label %279, label %294

279:                                              ; preds = %278, %275
  %280 = load ptr, ptr %4, align 8, !tbaa !5
  %281 = getelementptr inbounds %"struct.clnet::Tensor", ptr %280, i32 0, i32 4
  %282 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %281, i64 noundef 0) #13
  %283 = load ptr, ptr %282, align 8, !tbaa !5
  store ptr %283, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !5
  store i64 -1, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !38
  %284 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA32_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(32) @.str.43)
          to label %285 unwind label %214

285:                                              ; preds = %279
  %286 = load ptr, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !5
  %287 = getelementptr inbounds %"struct.clnet::Tensor", ptr %286, i32 0, i32 3
  %288 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %284, ptr noundef nonnull align 8 dereferenceable(32) %287)
          to label %289 unwind label %214

289:                                              ; preds = %285
  %290 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %288, ptr noundef nonnull align 1 dereferenceable(2) @.str.11)
          to label %291 unwind label %214

291:                                              ; preds = %289
  %292 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %290, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %293 unwind label %214

293:                                              ; preds = %291
  br label %2241

294:                                              ; preds = %278
  %295 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.44)
          to label %296 unwind label %214

296:                                              ; preds = %294
  br i1 %295, label %300, label %297

297:                                              ; preds = %296
  %298 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.45)
          to label %299 unwind label %214

299:                                              ; preds = %297
  br i1 %298, label %300, label %318

300:                                              ; preds = %299, %296
  %301 = load i64, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !36
  %302 = xor i64 %301, 8
  store i64 %302, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !36
  %303 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA27_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(27) @.str.46)
          to label %304 unwind label %214

304:                                              ; preds = %300
  call void @llvm.lifetime.start.p0(i64 8, ptr %12) #13
  %305 = load i64, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !36
  %306 = and i64 %305, 8
  %307 = icmp ne i64 %306, 0
  %308 = zext i1 %307 to i64
  %309 = select i1 %307, ptr @.str.47, ptr @.str.48
  store ptr %309, ptr %12, align 8, !tbaa !5
  %310 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %303, ptr noundef nonnull align 8 dereferenceable(8) %12)
          to label %311 unwind label %314

311:                                              ; preds = %304
  %312 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %310, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %313 unwind label %314

313:                                              ; preds = %311
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #13
  br label %2240

314:                                              ; preds = %311, %304
  %315 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %316 = extractvalue { ptr, i32 } %315, 0
  store ptr %316, ptr %8, align 8
  %317 = extractvalue { ptr, i32 } %315, 1
  store i32 %317, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #13
  br label %2194

318:                                              ; preds = %299
  %319 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.49)
          to label %320 unwind label %214

320:                                              ; preds = %318
  br i1 %319, label %324, label %321

321:                                              ; preds = %320
  %322 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.50)
          to label %323 unwind label %214

323:                                              ; preds = %321
  br i1 %322, label %324, label %341

324:                                              ; preds = %323, %320
  %325 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %326 unwind label %214

326:                                              ; preds = %324
  call void @llvm.lifetime.start.p0(i64 8, ptr %13) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %327 unwind label %332

327:                                              ; preds = %326
  %328 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef %14)
          to label %329 unwind label %336

329:                                              ; preds = %327
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #13
  store ptr %328, ptr %13, align 8, !tbaa !5
  %330 = load ptr, ptr %13, align 8, !tbaa !5
  invoke void @_ZN5clnet15describe_tensorEPNS_6TensorEb(ptr noundef %330, i1 noundef zeroext false)
          to label %331 unwind label %332

331:                                              ; preds = %329
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #13
  br label %2239

332:                                              ; preds = %329, %326
  %333 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %334 = extractvalue { ptr, i32 } %333, 0
  store ptr %334, ptr %8, align 8
  %335 = extractvalue { ptr, i32 } %333, 1
  store i32 %335, ptr %9, align 4
  br label %340

336:                                              ; preds = %327
  %337 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %338 = extractvalue { ptr, i32 } %337, 0
  store ptr %338, ptr %8, align 8
  %339 = extractvalue { ptr, i32 } %337, 1
  store i32 %339, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #13
  br label %340

340:                                              ; preds = %336, %332
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #13
  br label %2194

341:                                              ; preds = %323
  %342 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.51)
          to label %343 unwind label %214

343:                                              ; preds = %341
  br i1 %342, label %347, label %344

344:                                              ; preds = %343
  %345 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.52)
          to label %346 unwind label %214

346:                                              ; preds = %344
  br i1 %345, label %347, label %541

347:                                              ; preds = %346, %343
  call void @llvm.lifetime.start.p0(i64 1, ptr %15) #13
  %348 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %349 unwind label %370

349:                                              ; preds = %347
  %350 = trunc i32 %348 to i8
  store i8 %350, ptr %15, align 1, !tbaa !37
  %351 = load i8, ptr %15, align 1, !tbaa !37
  %352 = sext i8 %351 to i32
  %353 = icmp eq i32 %352, 10
  br i1 %353, label %354, label %378

354:                                              ; preds = %349
  %355 = load i64, ptr @_ZN5clnet12microsecondsE, align 8, !tbaa !38
  %356 = icmp sgt i64 %355, 0
  %357 = zext i1 %356 to i64
  %358 = select i1 %356, i32 0, i32 1
  %359 = sext i32 %358 to i64
  store i64 %359, ptr @_ZN5clnet12microsecondsE, align 8, !tbaa !38
  %360 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA25_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(25) @.str.53)
          to label %361 unwind label %370

361:                                              ; preds = %354
  call void @llvm.lifetime.start.p0(i64 8, ptr %16) #13
  %362 = load i64, ptr @_ZN5clnet12microsecondsE, align 8, !tbaa !38
  %363 = icmp sgt i64 %362, 0
  %364 = zext i1 %363 to i64
  %365 = select i1 %363, ptr @.str.47, ptr @.str.48
  store ptr %365, ptr %16, align 8, !tbaa !5
  %366 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %360, ptr noundef nonnull align 8 dereferenceable(8) %16)
          to label %367 unwind label %374

367:                                              ; preds = %361
  %368 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %366, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %369 unwind label %374

369:                                              ; preds = %367
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #13
  br label %539

370:                                              ; preds = %388, %385, %383, %380, %378, %354, %347
  %371 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %372 = extractvalue { ptr, i32 } %371, 0
  store ptr %372, ptr %8, align 8
  %373 = extractvalue { ptr, i32 } %371, 1
  store i32 %373, ptr %9, align 4
  br label %540

374:                                              ; preds = %367, %361
  %375 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %376 = extractvalue { ptr, i32 } %375, 0
  store ptr %376, ptr %8, align 8
  %377 = extractvalue { ptr, i32 } %375, 1
  store i32 %377, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #13
  br label %540

378:                                              ; preds = %349
  %379 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %380 unwind label %370

380:                                              ; preds = %378
  %381 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef @.str.54)
          to label %382 unwind label %370

382:                                              ; preds = %380
  br i1 %381, label %383, label %388

383:                                              ; preds = %382
  call void @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5clearEv(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE) #13
  %384 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA36_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(36) @.str.55)
          to label %385 unwind label %370

385:                                              ; preds = %383
  %386 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %384, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %387 unwind label %370

387:                                              ; preds = %385
  br label %538

388:                                              ; preds = %382
  %389 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef @.str.56)
          to label %390 unwind label %370

390:                                              ; preds = %388
  br i1 %389, label %391, label %537

391:                                              ; preds = %390
  call void @llvm.lifetime.start.p0(i64 24, ptr %17) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #13
  call void @llvm.lifetime.start.p0(i64 8, ptr %18) #13
  store ptr @_ZN5clnet12kernels_costE, ptr %18, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #13
  %392 = call ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5beginEv(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE) #13
  %393 = getelementptr inbounds %"struct.std::__detail::_Node_iterator", ptr %19, i32 0, i32 0
  %394 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base", ptr %393, i32 0, i32 0
  store ptr %392, ptr %394, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #13
  %395 = call ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE) #13
  %396 = getelementptr inbounds %"struct.std::__detail::_Node_iterator", ptr %20, i32 0, i32 0
  %397 = getelementptr inbounds %"struct.std::__detail::_Node_iterator_base", ptr %396, i32 0, i32 0
  store ptr %395, ptr %397, align 8
  br label %398

398:                                              ; preds = %414, %391
  %399 = call noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPN5clnet6TensorEmELb0EEES9_(ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef nonnull align 8 dereferenceable(8) %20) #13
  br i1 %399, label %401, label %400

400:                                              ; preds = %398
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #13
  br label %416

401:                                              ; preds = %398
  call void @llvm.lifetime.start.p0(i64 16, ptr %21) #13
  %402 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %19) #13
  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %21, ptr align 8 %402, i64 16, i1 false)
  %403 = getelementptr inbounds %"struct.std::pair", ptr %21, i32 0, i32 1
  %404 = load i64, ptr %403, align 8, !tbaa !40
  %405 = icmp ugt i64 %404, 0
  br i1 %405, label %406, label %413

406:                                              ; preds = %401
  %407 = getelementptr inbounds %"struct.std::pair", ptr %21, i32 0, i32 0
  invoke void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE9push_backERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %17, ptr noundef nonnull align 8 dereferenceable(8) %407)
          to label %408 unwind label %409

408:                                              ; preds = %406
  br label %413

409:                                              ; preds = %406
  %410 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %411 = extractvalue { ptr, i32 } %410, 0
  store ptr %411, ptr %8, align 8
  %412 = extractvalue { ptr, i32 } %410, 1
  store i32 %412, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %21) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #13
  br label %536

413:                                              ; preds = %408, %401
  call void @llvm.lifetime.end.p0(i64 16, ptr %21) #13
  br label %414

414:                                              ; preds = %413
  %415 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEppEv(ptr noundef nonnull align 8 dereferenceable(8) %19) #13
  br label %398

416:                                              ; preds = %400
  call void @llvm.lifetime.start.p0(i64 1, ptr %22) #13
  %417 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %17) #13
  %418 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %23, i32 0, i32 0
  store ptr %417, ptr %418, align 8
  %419 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %17) #13
  %420 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %24, i32 0, i32 0
  store ptr %419, ptr %420, align 8
  %421 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %23, i32 0, i32 0
  %422 = load ptr, ptr %421, align 8
  %423 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %24, i32 0, i32 0
  %424 = load ptr, ptr %423, align 8
  invoke void @"_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS4_SaIS4_EEEEZNS2_15debugger_threadERNS2_14DeviceInstanceERS3_E3$_0EvT_SE_T0_"(ptr %422, ptr %424)
          to label %425 unwind label %435

425:                                              ; preds = %416
  call void @llvm.lifetime.start.p0(i64 8, ptr %26) #13
  store i64 0, ptr %26, align 8, !tbaa !36
  call void @llvm.lifetime.start.p0(i64 8, ptr %27) #13
  store ptr %17, ptr %27, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %28) #13
  %426 = load ptr, ptr %27, align 8, !tbaa !5
  %427 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %426) #13
  %428 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %28, i32 0, i32 0
  store ptr %427, ptr %428, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %29) #13
  %429 = load ptr, ptr %27, align 8, !tbaa !5
  %430 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %429) #13
  %431 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %29, i32 0, i32 0
  store ptr %430, ptr %431, align 8
  br label %432

432:                                              ; preds = %447, %425
  %433 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %28, ptr noundef nonnull align 8 dereferenceable(8) %29) #13
  br i1 %433, label %439, label %434

434:                                              ; preds = %432
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #13
  br label %453

435:                                              ; preds = %416
  %436 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %437 = extractvalue { ptr, i32 } %436, 0
  store ptr %437, ptr %8, align 8
  %438 = extractvalue { ptr, i32 } %436, 1
  store i32 %438, ptr %9, align 4
  br label %535

439:                                              ; preds = %432
  call void @llvm.lifetime.start.p0(i64 8, ptr %30) #13
  %440 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %28) #13
  %441 = load ptr, ptr %440, align 8, !tbaa !5
  store ptr %441, ptr %30, align 8, !tbaa !5
  %442 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE, ptr noundef nonnull align 8 dereferenceable(8) %30)
          to label %443 unwind label %449

443:                                              ; preds = %439
  %444 = load i64, ptr %442, align 8, !tbaa !36
  %445 = load i64, ptr %26, align 8, !tbaa !36
  %446 = add i64 %445, %444
  store i64 %446, ptr %26, align 8, !tbaa !36
  call void @llvm.lifetime.end.p0(i64 8, ptr %30) #13
  br label %447

447:                                              ; preds = %443
  %448 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %28) #13
  br label %432

449:                                              ; preds = %439
  %450 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %451 = extractvalue { ptr, i32 } %450, 0
  store ptr %451, ptr %8, align 8
  %452 = extractvalue { ptr, i32 } %450, 1
  store i32 %452, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %30) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #13
  br label %534

453:                                              ; preds = %434
  call void @llvm.lifetime.start.p0(i64 8, ptr %31) #13
  store ptr %17, ptr %31, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %32) #13
  %454 = load ptr, ptr %31, align 8, !tbaa !5
  %455 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %454) #13
  %456 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %32, i32 0, i32 0
  store ptr %455, ptr %456, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %33) #13
  %457 = load ptr, ptr %31, align 8, !tbaa !5
  %458 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %457) #13
  %459 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %33, i32 0, i32 0
  store ptr %458, ptr %459, align 8
  br label %460

460:                                              ; preds = %502, %453
  %461 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %32, ptr noundef nonnull align 8 dereferenceable(8) %33) #13
  br i1 %461, label %463, label %462

462:                                              ; preds = %460
  call void @llvm.lifetime.end.p0(i64 8, ptr %33) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #13
  br label %533

463:                                              ; preds = %460
  call void @llvm.lifetime.start.p0(i64 8, ptr %34) #13
  %464 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %32) #13
  %465 = load ptr, ptr %464, align 8, !tbaa !5
  store ptr %465, ptr %34, align 8, !tbaa !5
  %466 = load ptr, ptr %34, align 8, !tbaa !5
  %467 = getelementptr inbounds %"struct.clnet::Tensor", ptr %466, i32 0, i32 3
  %468 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 8 dereferenceable(32) %467)
          to label %469 unwind label %504

469:                                              ; preds = %463
  %470 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA3_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %468, ptr noundef nonnull align 1 dereferenceable(3) @.str.57)
          to label %471 unwind label %504

471:                                              ; preds = %469
  call void @llvm.lifetime.start.p0(i64 32, ptr %35) #13
  %472 = load ptr, ptr %34, align 8, !tbaa !5
  invoke void @_ZN5clnet9type_nameB5cxx11EPNS_6TensorE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %35, ptr noundef %472)
          to label %473 unwind label %508

473:                                              ; preds = %471
  %474 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %470, ptr noundef nonnull align 8 dereferenceable(32) %35)
          to label %475 unwind label %512

475:                                              ; preds = %473
  %476 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA5_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %474, ptr noundef nonnull align 1 dereferenceable(5) @.str.58)
          to label %477 unwind label %512

477:                                              ; preds = %475
  call void @llvm.lifetime.start.p0(i64 32, ptr %36) #13
  %478 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE, ptr noundef nonnull align 8 dereferenceable(8) %34)
          to label %479 unwind label %516

479:                                              ; preds = %477
  %480 = load i64, ptr %478, align 8, !tbaa !36
  %481 = udiv i64 %480, 1000
  invoke void @_ZN5clnet13millis_stringB5cxx11Em(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %36, i64 noundef %481)
          to label %482 unwind label %516

482:                                              ; preds = %479
  %483 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %476, ptr noundef nonnull align 8 dereferenceable(32) %36)
          to label %484 unwind label %520

484:                                              ; preds = %482
  %485 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %483, ptr noundef nonnull align 1 dereferenceable(2) @.str.59)
          to label %486 unwind label %520

486:                                              ; preds = %484
  call void @llvm.lifetime.start.p0(i64 4, ptr %37) #13
  %487 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE, ptr noundef nonnull align 8 dereferenceable(8) %34)
          to label %488 unwind label %524

488:                                              ; preds = %486
  %489 = load i64, ptr %487, align 8, !tbaa !36
  %490 = uitofp i64 %489 to float
  %491 = fmul float 1.000000e+02, %490
  %492 = load i64, ptr %26, align 8, !tbaa !36
  %493 = uitofp i64 %492 to float
  %494 = fdiv float %491, %493
  %495 = fptosi float %494 to i32
  store i32 %495, ptr %37, align 4, !tbaa !35
  %496 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIiEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %485, ptr noundef nonnull align 4 dereferenceable(4) %37)
          to label %497 unwind label %524

497:                                              ; preds = %488
  %498 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %496, ptr noundef nonnull align 1 dereferenceable(2) @.str.60)
          to label %499 unwind label %524

499:                                              ; preds = %497
  %500 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %498, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %501 unwind label %524

501:                                              ; preds = %499
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %36) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %35) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #13
  br label %502

502:                                              ; preds = %501
  %503 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %32) #13
  br label %460

504:                                              ; preds = %469, %463
  %505 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %506 = extractvalue { ptr, i32 } %505, 0
  store ptr %506, ptr %8, align 8
  %507 = extractvalue { ptr, i32 } %505, 1
  store i32 %507, ptr %9, align 4
  br label %532

508:                                              ; preds = %471
  %509 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %510 = extractvalue { ptr, i32 } %509, 0
  store ptr %510, ptr %8, align 8
  %511 = extractvalue { ptr, i32 } %509, 1
  store i32 %511, ptr %9, align 4
  br label %531

512:                                              ; preds = %475, %473
  %513 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %514 = extractvalue { ptr, i32 } %513, 0
  store ptr %514, ptr %8, align 8
  %515 = extractvalue { ptr, i32 } %513, 1
  store i32 %515, ptr %9, align 4
  br label %530

516:                                              ; preds = %479, %477
  %517 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %518 = extractvalue { ptr, i32 } %517, 0
  store ptr %518, ptr %8, align 8
  %519 = extractvalue { ptr, i32 } %517, 1
  store i32 %519, ptr %9, align 4
  br label %529

520:                                              ; preds = %484, %482
  %521 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %522 = extractvalue { ptr, i32 } %521, 0
  store ptr %522, ptr %8, align 8
  %523 = extractvalue { ptr, i32 } %521, 1
  store i32 %523, ptr %9, align 4
  br label %528

524:                                              ; preds = %499, %497, %488, %486
  %525 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %526 = extractvalue { ptr, i32 } %525, 0
  store ptr %526, ptr %8, align 8
  %527 = extractvalue { ptr, i32 } %525, 1
  store i32 %527, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #13
  br label %528

528:                                              ; preds = %524, %520
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #13
  br label %529

529:                                              ; preds = %528, %516
  call void @llvm.lifetime.end.p0(i64 32, ptr %36) #13
  br label %530

530:                                              ; preds = %529, %512
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #13
  br label %531

531:                                              ; preds = %530, %508
  call void @llvm.lifetime.end.p0(i64 32, ptr %35) #13
  br label %532

532:                                              ; preds = %531, %504
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %33) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #13
  br label %534

533:                                              ; preds = %462
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #13
  br label %537

534:                                              ; preds = %532, %449
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #13
  br label %535

535:                                              ; preds = %534, %435
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #13
  br label %536

536:                                              ; preds = %535, %409
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #13
  br label %540

537:                                              ; preds = %533, %390
  br label %538

538:                                              ; preds = %537, %387
  br label %539

539:                                              ; preds = %538, %369
  call void @llvm.lifetime.end.p0(i64 1, ptr %15) #13
  br label %2238

540:                                              ; preds = %536, %374, %370
  call void @llvm.lifetime.end.p0(i64 1, ptr %15) #13
  br label %2194

541:                                              ; preds = %346
  %542 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.61)
          to label %543 unwind label %214

543:                                              ; preds = %541
  br i1 %542, label %547, label %544

544:                                              ; preds = %543
  %545 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.62)
          to label %546 unwind label %214

546:                                              ; preds = %544
  br i1 %545, label %547, label %571

547:                                              ; preds = %546, %543
  %548 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA24_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(24) @.str.63)
          to label %549 unwind label %214

549:                                              ; preds = %547
  call void @llvm.lifetime.start.p0(i64 8, ptr %38) #13
  call void @llvm.lifetime.start.p0(i64 8, ptr %39) #13
  %550 = load ptr, ptr %3, align 8, !tbaa !5
  %551 = getelementptr inbounds %"struct.clnet::DeviceInstance", ptr %550, i32 0, i32 8
  invoke void @_ZNK2cl12CommandQueue7getInfoILi4240EEENS_6detail12param_traitsINS2_21cl_command_queue_infoEXT_EE10param_typeEPi(ptr dead_on_unwind writable sret(%"class.cl::Context") align 8 %39, ptr noundef nonnull align 8 dereferenceable(8) %551, ptr noundef null)
          to label %552 unwind label %562

552:                                              ; preds = %549
  store ptr %39, ptr %38, align 8, !tbaa !5
  %553 = load ptr, ptr %3, align 8, !tbaa !5
  %554 = getelementptr inbounds %"struct.clnet::DeviceInstance", ptr %553, i32 0, i32 2
  %555 = load ptr, ptr %38, align 8, !tbaa !5
  %556 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZN5clnet14reload_kernelsERKN2cl6DeviceERKNS0_7ContextERNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(9) %554, ptr noundef nonnull align 8 dereferenceable(8) %555, ptr noundef nonnull align 8 dereferenceable(296) %556)
          to label %557 unwind label %566

557:                                              ; preds = %552
  %558 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA29_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(29) @.str.64)
          to label %559 unwind label %566

559:                                              ; preds = %557
  %560 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %558, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %561 unwind label %566

561:                                              ; preds = %559
  call void @_ZN2cl6detail7WrapperIP11_cl_contextED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %39) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %38) #13
  br label %2237

562:                                              ; preds = %549
  %563 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %564 = extractvalue { ptr, i32 } %563, 0
  store ptr %564, ptr %8, align 8
  %565 = extractvalue { ptr, i32 } %563, 1
  store i32 %565, ptr %9, align 4
  br label %570

566:                                              ; preds = %559, %557, %552
  %567 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %568 = extractvalue { ptr, i32 } %567, 0
  store ptr %568, ptr %8, align 8
  %569 = extractvalue { ptr, i32 } %567, 1
  store i32 %569, ptr %9, align 4
  call void @_ZN2cl6detail7WrapperIP11_cl_contextED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %39) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #13
  br label %570

570:                                              ; preds = %566, %562
  call void @llvm.lifetime.end.p0(i64 8, ptr %38) #13
  br label %2194

571:                                              ; preds = %546
  %572 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.65)
          to label %573 unwind label %214

573:                                              ; preds = %571
  br i1 %572, label %577, label %574

574:                                              ; preds = %573
  %575 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.66)
          to label %576 unwind label %214

576:                                              ; preds = %574
  br i1 %575, label %577, label %766

577:                                              ; preds = %576, %573
  call void @llvm.lifetime.start.p0(i64 32, ptr %40) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %41) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #13
  %578 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %40)
          to label %579 unwind label %592

579:                                              ; preds = %577
  %580 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %41)
          to label %581 unwind label %592

581:                                              ; preds = %579
  call void @llvm.lifetime.start.p0(i64 24, ptr %42) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %42) #13
  %582 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef @.str.67, i64 noundef 0) #13
  %583 = icmp ne i64 %582, -1
  br i1 %583, label %584, label %617

584:                                              ; preds = %581
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #13
  store ptr @_ZN5clnet6Tensor3ALLE, ptr %43, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %44) #13
  %585 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  %586 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %44, i32 0, i32 0
  store ptr %585, ptr %586, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %45) #13
  %587 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  %588 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %45, i32 0, i32 0
  store ptr %587, ptr %588, align 8
  br label %589

589:                                              ; preds = %614, %584
  %590 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %44, ptr noundef nonnull align 8 dereferenceable(8) %45) #13
  br i1 %590, label %596, label %591

591:                                              ; preds = %589
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %44) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #13
  br label %616

592:                                              ; preds = %579, %577
  %593 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %594 = extractvalue { ptr, i32 } %593, 0
  store ptr %594, ptr %8, align 8
  %595 = extractvalue { ptr, i32 } %593, 1
  store i32 %595, ptr %9, align 4
  br label %765

596:                                              ; preds = %589
  call void @llvm.lifetime.start.p0(i64 8, ptr %46) #13
  %597 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %44) #13
  %598 = load ptr, ptr %597, align 8, !tbaa !5
  store ptr %598, ptr %46, align 8, !tbaa !5
  %599 = load ptr, ptr %46, align 8, !tbaa !5
  %600 = icmp eq ptr %599, null
  br i1 %600, label %603, label %601

601:                                              ; preds = %596
  %602 = call ptr @__dynamic_cast(ptr %599, ptr @_ZTIN5clnet6TensorE, ptr @_ZTIN5clnet4type9ParameterE, i64 0) #13
  br label %604

603:                                              ; preds = %596
  br label %604

604:                                              ; preds = %603, %601
  %605 = phi ptr [ %602, %601 ], [ null, %603 ]
  %606 = icmp ne ptr %605, null
  br i1 %606, label %607, label %613

607:                                              ; preds = %604
  invoke void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE9push_backERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %42, ptr noundef nonnull align 8 dereferenceable(8) %46)
          to label %608 unwind label %609

608:                                              ; preds = %607
  br label %613

609:                                              ; preds = %607
  %610 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %611 = extractvalue { ptr, i32 } %610, 0
  store ptr %611, ptr %8, align 8
  %612 = extractvalue { ptr, i32 } %610, 1
  store i32 %612, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %46) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %44) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #13
  br label %764

613:                                              ; preds = %608, %604
  call void @llvm.lifetime.end.p0(i64 8, ptr %46) #13
  br label %614

614:                                              ; preds = %613
  %615 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %44) #13
  br label %589

616:                                              ; preds = %591
  br label %656

617:                                              ; preds = %581
  call void @llvm.lifetime.start.p0(i64 392, ptr %47) #13
  invoke void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(128) %47)
          to label %618 unwind label %636

618:                                              ; preds = %617
  %619 = getelementptr inbounds i8, ptr %47, i64 16
  %620 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %619, ptr noundef nonnull align 8 dereferenceable(32) %41)
          to label %621 unwind label %640

621:                                              ; preds = %618
  br label %622

622:                                              ; preds = %635, %621
  %623 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) %47, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %624 unwind label %640

624:                                              ; preds = %622
  %625 = load ptr, ptr %623, align 8, !tbaa !42
  %626 = getelementptr i8, ptr %625, i64 -24
  %627 = load i64, ptr %626, align 8
  %628 = getelementptr inbounds i8, ptr %623, i64 %627
  %629 = invoke noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEEcvbEv(ptr noundef nonnull align 8 dereferenceable(264) %628)
          to label %630 unwind label %640

630:                                              ; preds = %624
  br i1 %629, label %631, label %653

631:                                              ; preds = %630
  call void @llvm.lifetime.start.p0(i64 8, ptr %48) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %49, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %632 unwind label %644

632:                                              ; preds = %631
  %633 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef %49)
          to label %634 unwind label %648

634:                                              ; preds = %632
  store ptr %633, ptr %48, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %42, ptr noundef nonnull align 8 dereferenceable(8) %48)
          to label %635 unwind label %648

635:                                              ; preds = %634
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %48) #13
  br label %622, !llvm.loop !44

636:                                              ; preds = %617
  %637 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %638 = extractvalue { ptr, i32 } %637, 0
  store ptr %638, ptr %8, align 8
  %639 = extractvalue { ptr, i32 } %637, 1
  store i32 %639, ptr %9, align 4
  br label %655

640:                                              ; preds = %624, %622, %618
  %641 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %642 = extractvalue { ptr, i32 } %641, 0
  store ptr %642, ptr %8, align 8
  %643 = extractvalue { ptr, i32 } %641, 1
  store i32 %643, ptr %9, align 4
  br label %654

644:                                              ; preds = %631
  %645 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %646 = extractvalue { ptr, i32 } %645, 0
  store ptr %646, ptr %8, align 8
  %647 = extractvalue { ptr, i32 } %645, 1
  store i32 %647, ptr %9, align 4
  br label %652

648:                                              ; preds = %634, %632
  %649 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %650 = extractvalue { ptr, i32 } %649, 0
  store ptr %650, ptr %8, align 8
  %651 = extractvalue { ptr, i32 } %649, 1
  store i32 %651, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #13
  br label %652

652:                                              ; preds = %648, %644
  call void @llvm.lifetime.end.p0(i64 8, ptr %48) #13
  br label %654

653:                                              ; preds = %630
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %47) #13
  call void @llvm.lifetime.end.p0(i64 392, ptr %47) #13
  br label %656

654:                                              ; preds = %652, %640
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %47) #13
  br label %655

655:                                              ; preds = %654, %636
  call void @llvm.lifetime.end.p0(i64 392, ptr %47) #13
  br label %764

656:                                              ; preds = %653, %616
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %41) #13
  %657 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.66)
          to label %658 unwind label %665

658:                                              ; preds = %656
  br i1 %657, label %659, label %711

659:                                              ; preds = %658
  call void @llvm.lifetime.start.p0(i64 8, ptr %50) #13
  store i64 0, ptr %50, align 8, !tbaa !36
  br label %660

660:                                              ; preds = %706, %659
  %661 = load i64, ptr %50, align 8, !tbaa !36
  %662 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %42) #13
  %663 = icmp ult i64 %661, %662
  br i1 %663, label %669, label %664

664:                                              ; preds = %660
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #13
  br label %710

665:                                              ; preds = %761, %759, %757, %755, %656
  %666 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %667 = extractvalue { ptr, i32 } %666, 0
  store ptr %667, ptr %8, align 8
  %668 = extractvalue { ptr, i32 } %666, 1
  store i32 %668, ptr %9, align 4
  br label %764

669:                                              ; preds = %660
  call void @llvm.lifetime.start.p0(i64 32, ptr %51) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %52) #13
  %670 = load i64, ptr %50, align 8, !tbaa !36
  %671 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %670) #13
  %672 = load ptr, ptr %671, align 8, !tbaa !5
  %673 = getelementptr inbounds %"struct.clnet::Tensor", ptr %672, i32 0, i32 3
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %52, ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(32) %673)
          to label %674 unwind label %686

674:                                              ; preds = %669
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %51, ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef @.str.68)
          to label %675 unwind label %690

675:                                              ; preds = %674
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %52) #13
  %676 = load i64, ptr %50, align 8, !tbaa !36
  %677 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %676) #13
  %678 = load ptr, ptr %677, align 8, !tbaa !5
  %679 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZN5clnet18save_tensor_as_csvEPNS_6TensorERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_14DeviceInstanceEb(ptr noundef %678, ptr noundef nonnull align 8 dereferenceable(32) %51, ptr noundef %679, i1 noundef zeroext true)
          to label %680 unwind label %695

680:                                              ; preds = %675
  %681 = load i64, ptr %50, align 8, !tbaa !36
  %682 = icmp ugt i64 %681, 0
  br i1 %682, label %683, label %699

683:                                              ; preds = %680
  %684 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef @.str.69)
          to label %685 unwind label %695

685:                                              ; preds = %683
  br label %699

686:                                              ; preds = %669
  %687 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %688 = extractvalue { ptr, i32 } %687, 0
  store ptr %688, ptr %8, align 8
  %689 = extractvalue { ptr, i32 } %687, 1
  store i32 %689, ptr %9, align 4
  br label %694

690:                                              ; preds = %674
  %691 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %692 = extractvalue { ptr, i32 } %691, 0
  store ptr %692, ptr %8, align 8
  %693 = extractvalue { ptr, i32 } %691, 1
  store i32 %693, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #13
  br label %694

694:                                              ; preds = %690, %686
  call void @llvm.lifetime.end.p0(i64 32, ptr %52) #13
  br label %709

695:                                              ; preds = %699, %683, %675
  %696 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %697 = extractvalue { ptr, i32 } %696, 0
  store ptr %697, ptr %8, align 8
  %698 = extractvalue { ptr, i32 } %696, 1
  store i32 %698, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #13
  br label %709

699:                                              ; preds = %685, %680
  %700 = load i64, ptr %50, align 8, !tbaa !36
  %701 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %700) #13
  %702 = load ptr, ptr %701, align 8, !tbaa !5
  %703 = getelementptr inbounds %"struct.clnet::Tensor", ptr %702, i32 0, i32 3
  %704 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef nonnull align 8 dereferenceable(32) %703)
          to label %705 unwind label %695

705:                                              ; preds = %699
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #13
  br label %706

706:                                              ; preds = %705
  %707 = load i64, ptr %50, align 8, !tbaa !36
  %708 = add i64 %707, 1
  store i64 %708, ptr %50, align 8, !tbaa !36
  br label %660, !llvm.loop !46

709:                                              ; preds = %695, %694
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #13
  br label %764

710:                                              ; preds = %664
  br label %755

711:                                              ; preds = %658
  call void @llvm.lifetime.start.p0(i64 512, ptr %53) #13
  invoke void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(248) %53, ptr noundef nonnull align 8 dereferenceable(32) %40, i32 noundef 4)
          to label %712 unwind label %718

712:                                              ; preds = %711
  call void @llvm.lifetime.start.p0(i64 8, ptr %54) #13
  store i64 0, ptr %54, align 8, !tbaa !36
  br label %713

713:                                              ; preds = %744, %712
  %714 = load i64, ptr %54, align 8, !tbaa !36
  %715 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %42) #13
  %716 = icmp ult i64 %714, %715
  br i1 %716, label %722, label %717

717:                                              ; preds = %713
  call void @llvm.lifetime.end.p0(i64 8, ptr %54) #13
  br label %747

718:                                              ; preds = %711
  %719 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %720 = extractvalue { ptr, i32 } %719, 0
  store ptr %720, ptr %8, align 8
  %721 = extractvalue { ptr, i32 } %719, 1
  store i32 %721, ptr %9, align 4
  br label %754

722:                                              ; preds = %713
  %723 = load i64, ptr %54, align 8, !tbaa !36
  %724 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %723) #13
  %725 = load ptr, ptr %724, align 8, !tbaa !5
  %726 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZN5clnet11save_tensorEPNS_6TensorERSoPNS_14DeviceInstanceE(ptr noundef %725, ptr noundef nonnull align 8 dereferenceable(8) %53, ptr noundef %726)
          to label %727 unwind label %733

727:                                              ; preds = %722
  %728 = load i64, ptr %54, align 8, !tbaa !36
  %729 = icmp ugt i64 %728, 0
  br i1 %729, label %730, label %737

730:                                              ; preds = %727
  %731 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef @.str.69)
          to label %732 unwind label %733

732:                                              ; preds = %730
  br label %737

733:                                              ; preds = %737, %730, %722
  %734 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %735 = extractvalue { ptr, i32 } %734, 0
  store ptr %735, ptr %8, align 8
  %736 = extractvalue { ptr, i32 } %734, 1
  store i32 %736, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %54) #13
  br label %753

737:                                              ; preds = %732, %727
  %738 = load i64, ptr %54, align 8, !tbaa !36
  %739 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %738) #13
  %740 = load ptr, ptr %739, align 8, !tbaa !5
  %741 = getelementptr inbounds %"struct.clnet::Tensor", ptr %740, i32 0, i32 3
  %742 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef nonnull align 8 dereferenceable(32) %741)
          to label %743 unwind label %733

743:                                              ; preds = %737
  br label %744

744:                                              ; preds = %743
  %745 = load i64, ptr %54, align 8, !tbaa !36
  %746 = add i64 %745, 1
  store i64 %746, ptr %54, align 8, !tbaa !36
  br label %713, !llvm.loop !47

747:                                              ; preds = %717
  invoke void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(248) %53)
          to label %748 unwind label %749

748:                                              ; preds = %747
  call void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(248) %53) #13
  call void @llvm.lifetime.end.p0(i64 512, ptr %53) #13
  br label %755

749:                                              ; preds = %747
  %750 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %751 = extractvalue { ptr, i32 } %750, 0
  store ptr %751, ptr %8, align 8
  %752 = extractvalue { ptr, i32 } %750, 1
  store i32 %752, ptr %9, align 4
  br label %753

753:                                              ; preds = %749, %733
  call void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(248) %53) #13
  br label %754

754:                                              ; preds = %753, %718
  call void @llvm.lifetime.end.p0(i64 512, ptr %53) #13
  br label %764

755:                                              ; preds = %748, %710
  %756 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA21_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(21) @.str.70)
          to label %757 unwind label %665

757:                                              ; preds = %755
  %758 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %756, ptr noundef nonnull align 8 dereferenceable(32) %41)
          to label %759 unwind label %665

759:                                              ; preds = %757
  %760 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA8_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %758, ptr noundef nonnull align 1 dereferenceable(8) @.str.71)
          to label %761 unwind label %665

761:                                              ; preds = %759
  %762 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %760, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %763 unwind label %665

763:                                              ; preds = %761
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %42) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %42) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %41) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %40) #13
  br label %2236

764:                                              ; preds = %754, %709, %665, %655, %609
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %42) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %42) #13
  br label %765

765:                                              ; preds = %764, %592
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %41) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %40) #13
  br label %2194

766:                                              ; preds = %576
  %767 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.72)
          to label %768 unwind label %214

768:                                              ; preds = %766
  br i1 %767, label %772, label %769

769:                                              ; preds = %768
  %770 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.73)
          to label %771 unwind label %214

771:                                              ; preds = %769
  br i1 %770, label %772, label %951

772:                                              ; preds = %771, %768
  call void @llvm.lifetime.start.p0(i64 32, ptr %55) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %56) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #13
  %773 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %55)
          to label %774 unwind label %787

774:                                              ; preds = %772
  %775 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %56)
          to label %776 unwind label %787

776:                                              ; preds = %774
  call void @llvm.lifetime.start.p0(i64 24, ptr %57) #13
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #13
  %777 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef @.str.67, i64 noundef 0) #13
  %778 = icmp ne i64 %777, -1
  br i1 %778, label %779, label %814

779:                                              ; preds = %776
  call void @llvm.lifetime.start.p0(i64 8, ptr %58) #13
  store ptr @_ZN5clnet6Tensor3ALLE, ptr %58, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %59) #13
  %780 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  %781 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %59, i32 0, i32 0
  store ptr %780, ptr %781, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %60) #13
  %782 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  %783 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.77", ptr %60, i32 0, i32 0
  store ptr %782, ptr %783, align 8
  br label %784

784:                                              ; preds = %811, %779
  %785 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %59, ptr noundef nonnull align 8 dereferenceable(8) %60) #13
  br i1 %785, label %791, label %786

786:                                              ; preds = %784
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %58) #13
  br label %813

787:                                              ; preds = %774, %772
  %788 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %789 = extractvalue { ptr, i32 } %788, 0
  store ptr %789, ptr %8, align 8
  %790 = extractvalue { ptr, i32 } %788, 1
  store i32 %790, ptr %9, align 4
  br label %950

791:                                              ; preds = %784
  call void @llvm.lifetime.start.p0(i64 8, ptr %61) #13
  %792 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %59) #13
  %793 = load ptr, ptr %792, align 8, !tbaa !5
  store ptr %793, ptr %61, align 8, !tbaa !5
  %794 = load ptr, ptr %61, align 8, !tbaa !5
  %795 = icmp eq ptr %794, null
  br i1 %795, label %798, label %796

796:                                              ; preds = %791
  %797 = call ptr @__dynamic_cast(ptr %794, ptr @_ZTIN5clnet6TensorE, ptr @_ZTIN5clnet4type9ParameterE, i64 0) #13
  br label %799

798:                                              ; preds = %791
  br label %799

799:                                              ; preds = %798, %796
  %800 = phi ptr [ %797, %796 ], [ null, %798 ]
  %801 = icmp ne ptr %800, null
  br i1 %801, label %802, label %810

802:                                              ; preds = %799
  %803 = load ptr, ptr %61, align 8, !tbaa !5
  %804 = getelementptr inbounds %"struct.clnet::Tensor", ptr %803, i32 0, i32 3
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE9push_backERKS5_(ptr noundef nonnull align 8 dereferenceable(24) %57, ptr noundef nonnull align 8 dereferenceable(32) %804)
          to label %805 unwind label %806

805:                                              ; preds = %802
  br label %810

806:                                              ; preds = %802
  %807 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %808 = extractvalue { ptr, i32 } %807, 0
  store ptr %808, ptr %8, align 8
  %809 = extractvalue { ptr, i32 } %807, 1
  store i32 %809, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %58) #13
  br label %949

810:                                              ; preds = %805, %799
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #13
  br label %811

811:                                              ; preds = %810
  %812 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %59) #13
  br label %784

813:                                              ; preds = %786
  br label %840

814:                                              ; preds = %776
  call void @llvm.lifetime.start.p0(i64 392, ptr %62) #13
  invoke void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(128) %62)
          to label %815 unwind label %830

815:                                              ; preds = %814
  %816 = getelementptr inbounds i8, ptr %62, i64 16
  %817 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %816, ptr noundef nonnull align 8 dereferenceable(32) %56)
          to label %818 unwind label %834

818:                                              ; preds = %815
  br label %819

819:                                              ; preds = %829, %818
  %820 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) %62, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %821 unwind label %834

821:                                              ; preds = %819
  %822 = load ptr, ptr %820, align 8, !tbaa !42
  %823 = getelementptr i8, ptr %822, i64 -24
  %824 = load i64, ptr %823, align 8
  %825 = getelementptr inbounds i8, ptr %820, i64 %824
  %826 = invoke noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEEcvbEv(ptr noundef nonnull align 8 dereferenceable(264) %825)
          to label %827 unwind label %834

827:                                              ; preds = %821
  br i1 %826, label %828, label %838

828:                                              ; preds = %827
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE9push_backERKS5_(ptr noundef nonnull align 8 dereferenceable(24) %57, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %829 unwind label %834

829:                                              ; preds = %828
  br label %819, !llvm.loop !48

830:                                              ; preds = %814
  %831 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %832 = extractvalue { ptr, i32 } %831, 0
  store ptr %832, ptr %8, align 8
  %833 = extractvalue { ptr, i32 } %831, 1
  store i32 %833, ptr %9, align 4
  br label %839

834:                                              ; preds = %828, %821, %819, %815
  %835 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %836 = extractvalue { ptr, i32 } %835, 0
  store ptr %836, ptr %8, align 8
  %837 = extractvalue { ptr, i32 } %835, 1
  store i32 %837, ptr %9, align 4
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %62) #13
  br label %839

838:                                              ; preds = %827
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %62) #13
  call void @llvm.lifetime.end.p0(i64 392, ptr %62) #13
  br label %840

839:                                              ; preds = %834, %830
  call void @llvm.lifetime.end.p0(i64 392, ptr %62) #13
  br label %949

840:                                              ; preds = %838, %813
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %56) #13
  %841 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.73)
          to label %842 unwind label %853

842:                                              ; preds = %840
  br i1 %841, label %843, label %894

843:                                              ; preds = %842
  call void @llvm.lifetime.start.p0(i64 8, ptr %63) #13
  store ptr %57, ptr %63, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %64) #13
  %844 = load ptr, ptr %63, align 8, !tbaa !5
  %845 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %844) #13
  %846 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %64, i32 0, i32 0
  store ptr %845, ptr %846, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %65) #13
  %847 = load ptr, ptr %63, align 8, !tbaa !5
  %848 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %847) #13
  %849 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %65, i32 0, i32 0
  store ptr %848, ptr %849, align 8
  br label %850

850:                                              ; preds = %890, %843
  %851 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEEbRKNS_17__normal_iteratorIT_T0_EESG_(ptr noundef nonnull align 8 dereferenceable(8) %64, ptr noundef nonnull align 8 dereferenceable(8) %65) #13
  br i1 %851, label %857, label %852

852:                                              ; preds = %850
  call void @llvm.lifetime.end.p0(i64 8, ptr %65) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #13
  br label %893

853:                                              ; preds = %946, %944, %942, %940, %840
  %854 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %855 = extractvalue { ptr, i32 } %854, 0
  store ptr %855, ptr %8, align 8
  %856 = extractvalue { ptr, i32 } %854, 1
  store i32 %856, ptr %9, align 4
  br label %949

857:                                              ; preds = %850
  call void @llvm.lifetime.start.p0(i64 8, ptr %66) #13
  %858 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %64) #13
  store ptr %858, ptr %66, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %67) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %68) #13
  %859 = load ptr, ptr %66, align 8, !tbaa !5
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %68, ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull align 8 dereferenceable(32) %859)
          to label %860 unwind label %872

860:                                              ; preds = %857
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %67, ptr noundef nonnull align 8 dereferenceable(32) %68, ptr noundef @.str.68)
          to label %861 unwind label %876

861:                                              ; preds = %860
  %862 = load ptr, ptr %66, align 8, !tbaa !5
  %863 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %862, ptr noundef nonnull align 8 dereferenceable(32) %67) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %68) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %67) #13
  call void @llvm.lifetime.start.p0(i64 8, ptr %69) #13
  %864 = load ptr, ptr %66, align 8, !tbaa !5
  %865 = load ptr, ptr %3, align 8, !tbaa !5
  %866 = invoke noundef ptr @_ZN5clnet20load_tensor_from_csvERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_6TensorEPNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(32) %864, ptr noundef null, ptr noundef %865)
          to label %867 unwind label %881

867:                                              ; preds = %861
  store ptr %866, ptr %69, align 8, !tbaa !5
  %868 = call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %56) #13
  br i1 %868, label %885, label %869

869:                                              ; preds = %867
  %870 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef @.str.69)
          to label %871 unwind label %881

871:                                              ; preds = %869
  br label %885

872:                                              ; preds = %857
  %873 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %874 = extractvalue { ptr, i32 } %873, 0
  store ptr %874, ptr %8, align 8
  %875 = extractvalue { ptr, i32 } %873, 1
  store i32 %875, ptr %9, align 4
  br label %880

876:                                              ; preds = %860
  %877 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %878 = extractvalue { ptr, i32 } %877, 0
  store ptr %878, ptr %8, align 8
  %879 = extractvalue { ptr, i32 } %877, 1
  store i32 %879, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #13
  br label %880

880:                                              ; preds = %876, %872
  call void @llvm.lifetime.end.p0(i64 32, ptr %68) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %67) #13
  br label %892

881:                                              ; preds = %885, %869, %861
  %882 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %883 = extractvalue { ptr, i32 } %882, 0
  store ptr %883, ptr %8, align 8
  %884 = extractvalue { ptr, i32 } %882, 1
  store i32 %884, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %69) #13
  br label %892

885:                                              ; preds = %871, %867
  %886 = load ptr, ptr %69, align 8, !tbaa !5
  %887 = getelementptr inbounds %"struct.clnet::Tensor", ptr %886, i32 0, i32 3
  %888 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef nonnull align 8 dereferenceable(32) %887)
          to label %889 unwind label %881

889:                                              ; preds = %885
  call void @llvm.lifetime.end.p0(i64 8, ptr %69) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %66) #13
  br label %890

890:                                              ; preds = %889
  %891 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %64) #13
  br label %850

892:                                              ; preds = %881, %880
  call void @llvm.lifetime.end.p0(i64 8, ptr %66) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %65) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #13
  br label %949

893:                                              ; preds = %852
  br label %940

894:                                              ; preds = %842
  call void @llvm.lifetime.start.p0(i64 520, ptr %70) #13
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256) %70, ptr noundef nonnull align 8 dereferenceable(32) %55, i32 noundef 4)
          to label %895 unwind label %904

895:                                              ; preds = %894
  call void @llvm.lifetime.start.p0(i64 24, ptr %71) #13
  %896 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZN5clnet12load_tensorsERSiPNS_14DeviceInstanceE(ptr dead_on_unwind writable sret(%"class.std::vector.17") align 8 %71, ptr noundef nonnull align 8 dereferenceable(16) %70, ptr noundef %896)
          to label %897 unwind label %908

897:                                              ; preds = %895
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(256) %70)
          to label %898 unwind label %912

898:                                              ; preds = %897
  call void @llvm.lifetime.start.p0(i64 8, ptr %72) #13
  store i64 0, ptr %72, align 8, !tbaa !36
  br label %899

899:                                              ; preds = %933, %898
  %900 = load i64, ptr %72, align 8, !tbaa !36
  %901 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %71) #13
  %902 = icmp ult i64 %900, %901
  br i1 %902, label %916, label %903

903:                                              ; preds = %899
  call void @llvm.lifetime.end.p0(i64 8, ptr %72) #13
  br label %936

904:                                              ; preds = %894
  %905 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %906 = extractvalue { ptr, i32 } %905, 0
  store ptr %906, ptr %8, align 8
  %907 = extractvalue { ptr, i32 } %905, 1
  store i32 %907, ptr %9, align 4
  br label %939

908:                                              ; preds = %895
  %909 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %910 = extractvalue { ptr, i32 } %909, 0
  store ptr %910, ptr %8, align 8
  %911 = extractvalue { ptr, i32 } %909, 1
  store i32 %911, ptr %9, align 4
  br label %938

912:                                              ; preds = %897
  %913 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %914 = extractvalue { ptr, i32 } %913, 0
  store ptr %914, ptr %8, align 8
  %915 = extractvalue { ptr, i32 } %913, 1
  store i32 %915, ptr %9, align 4
  br label %937

916:                                              ; preds = %899
  %917 = load i64, ptr %72, align 8, !tbaa !36
  %918 = icmp ugt i64 %917, 0
  br i1 %918, label %919, label %926

919:                                              ; preds = %916
  %920 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef @.str.69)
          to label %921 unwind label %922

921:                                              ; preds = %919
  br label %926

922:                                              ; preds = %926, %919
  %923 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %924 = extractvalue { ptr, i32 } %923, 0
  store ptr %924, ptr %8, align 8
  %925 = extractvalue { ptr, i32 } %923, 1
  store i32 %925, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %72) #13
  br label %937

926:                                              ; preds = %921, %916
  %927 = load i64, ptr %72, align 8, !tbaa !36
  %928 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %71, i64 noundef %927) #13
  %929 = load ptr, ptr %928, align 8, !tbaa !5
  %930 = getelementptr inbounds %"struct.clnet::Tensor", ptr %929, i32 0, i32 3
  %931 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef nonnull align 8 dereferenceable(32) %930)
          to label %932 unwind label %922

932:                                              ; preds = %926
  br label %933

933:                                              ; preds = %932
  %934 = load i64, ptr %72, align 8, !tbaa !36
  %935 = add i64 %934, 1
  store i64 %935, ptr %72, align 8, !tbaa !36
  br label %899, !llvm.loop !49

936:                                              ; preds = %903
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %71) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %71) #13
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %70) #13
  call void @llvm.lifetime.end.p0(i64 520, ptr %70) #13
  br label %940

937:                                              ; preds = %922, %912
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %71) #13
  br label %938

938:                                              ; preds = %937, %908
  call void @llvm.lifetime.end.p0(i64 24, ptr %71) #13
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %70) #13
  br label %939

939:                                              ; preds = %938, %904
  call void @llvm.lifetime.end.p0(i64 520, ptr %70) #13
  br label %949

940:                                              ; preds = %936, %893
  %941 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA21_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(21) @.str.70)
          to label %942 unwind label %853

942:                                              ; preds = %940
  %943 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %941, ptr noundef nonnull align 8 dereferenceable(32) %56)
          to label %944 unwind label %853

944:                                              ; preds = %942
  %945 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA9_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %943, ptr noundef nonnull align 1 dereferenceable(9) @.str.74)
          to label %946 unwind label %853

946:                                              ; preds = %944
  %947 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %945, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %948 unwind label %853

948:                                              ; preds = %946
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %57) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %56) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %55) #13
  br label %2235

949:                                              ; preds = %939, %892, %853, %839, %806
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %57) #13
  br label %950

950:                                              ; preds = %949, %787
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %56) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %55) #13
  br label %2194

951:                                              ; preds = %771
  %952 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.75)
          to label %953 unwind label %214

953:                                              ; preds = %951
  br i1 %952, label %954, label %959

954:                                              ; preds = %953
  %955 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA39_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(39) @.str.76)
          to label %956 unwind label %214

956:                                              ; preds = %954
  %957 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %955, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %958 unwind label %214

958:                                              ; preds = %956
  store ptr null, ptr @_ZN5clnet8debuggerE, align 8, !tbaa !5
  store ptr null, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !5
  call void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48) @_ZN5clnet10breakpointE) #13
  br label %2234

959:                                              ; preds = %953
  %960 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.77)
          to label %961 unwind label %214

961:                                              ; preds = %959
  br i1 %960, label %962, label %967

962:                                              ; preds = %961
  %963 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA27_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(27) @.str.78)
          to label %964 unwind label %214

964:                                              ; preds = %962
  %965 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %963, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %966 unwind label %214

966:                                              ; preds = %964
  call void @exit(i32 noundef 1) #14
  unreachable

967:                                              ; preds = %961
  %968 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.79)
          to label %969 unwind label %214

969:                                              ; preds = %967
  br i1 %968, label %973, label %970

970:                                              ; preds = %969
  %971 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.80)
          to label %972 unwind label %214

972:                                              ; preds = %970
  br i1 %971, label %973, label %1016

973:                                              ; preds = %972, %969
  %974 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA33_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(33) @.str.81)
          to label %975 unwind label %214

975:                                              ; preds = %973
  %976 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA141_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(141) @.str.82)
          to label %977 unwind label %214

977:                                              ; preds = %975
  %978 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA107_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(107) @.str.83)
          to label %979 unwind label %214

979:                                              ; preds = %977
  %980 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA143_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(143) @.str.84)
          to label %981 unwind label %214

981:                                              ; preds = %979
  %982 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA122_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(122) @.str.85)
          to label %983 unwind label %214

983:                                              ; preds = %981
  %984 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA149_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(149) @.str.86)
          to label %985 unwind label %214

985:                                              ; preds = %983
  %986 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA103_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(103) @.str.87)
          to label %987 unwind label %214

987:                                              ; preds = %985
  %988 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(76) @.str.88)
          to label %989 unwind label %214

989:                                              ; preds = %987
  %990 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA64_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(64) @.str.89)
          to label %991 unwind label %214

991:                                              ; preds = %989
  %992 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA101_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(101) @.str.90)
          to label %993 unwind label %214

993:                                              ; preds = %991
  %994 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA140_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(140) @.str.91)
          to label %995 unwind label %214

995:                                              ; preds = %993
  %996 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA92_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(92) @.str.92)
          to label %997 unwind label %214

997:                                              ; preds = %995
  %998 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA96_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(96) @.str.93)
          to label %999 unwind label %214

999:                                              ; preds = %997
  %1000 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(76) @.str.94)
          to label %1001 unwind label %214

1001:                                             ; preds = %999
  %1002 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA67_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(67) @.str.95)
          to label %1003 unwind label %214

1003:                                             ; preds = %1001
  %1004 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA101_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(101) @.str.96)
          to label %1005 unwind label %214

1005:                                             ; preds = %1003
  %1006 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA119_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(119) @.str.97)
          to label %1007 unwind label %214

1007:                                             ; preds = %1005
  %1008 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA103_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(103) @.str.98)
          to label %1009 unwind label %214

1009:                                             ; preds = %1007
  %1010 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA121_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(121) @.str.99)
          to label %1011 unwind label %214

1011:                                             ; preds = %1009
  %1012 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(76) @.str.100)
          to label %1013 unwind label %214

1013:                                             ; preds = %1011
  %1014 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1015 unwind label %214

1015:                                             ; preds = %1013
  br label %2232

1016:                                             ; preds = %972
  call void @llvm.lifetime.start.p0(i64 24, ptr %73) #13
  call void @_ZNSt6vectorIxSaIxEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %73) #13
  call void @llvm.lifetime.start.p0(i64 24, ptr %74) #13
  call void @_ZNSt6vectorIxSaIxEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %74) #13
  call void @llvm.lifetime.start.p0(i64 24, ptr %75) #13
  call void @_ZNSt6vectorIxSaIxEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %76) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #13
  call void @llvm.lifetime.start.p0(i64 4, ptr %77) #13
  %1017 = call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  br i1 %1017, label %1018, label %1019

1018:                                             ; preds = %1016
  store i32 3, ptr %78, align 4
  br label %2185

1019:                                             ; preds = %1016
  %1020 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef 0)
          to label %1021 unwind label %1037

1021:                                             ; preds = %1019
  %1022 = load i8, ptr %1020, align 1, !tbaa !37
  %1023 = sext i8 %1022 to i32
  %1024 = icmp eq i32 %1023, 94
  br i1 %1024, label %1025, label %1045

1025:                                             ; preds = %1021
  %1026 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef 1)
          to label %1027 unwind label %1037

1027:                                             ; preds = %1025
  %1028 = load i8, ptr %1026, align 1, !tbaa !37
  %1029 = sext i8 %1028 to i32
  %1030 = icmp eq i32 %1029, 94
  %1031 = zext i1 %1030 to i64
  %1032 = select i1 %1030, i32 2, i32 1
  store i32 %1032, ptr %77, align 4, !tbaa !35
  call void @llvm.lifetime.start.p0(i64 32, ptr %79) #13
  %1033 = load i32, ptr %77, align 4, !tbaa !35
  %1034 = sext i32 %1033 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %79, ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef %1034, i64 noundef -1)
          to label %1035 unwind label %1041

1035:                                             ; preds = %1027
  %1036 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef nonnull align 8 dereferenceable(32) %79) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %79) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %79) #13
  br label %1046

1037:                                             ; preds = %1654, %1047, %1025, %1019
  %1038 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1039 = extractvalue { ptr, i32 } %1038, 0
  store ptr %1039, ptr %8, align 8
  %1040 = extractvalue { ptr, i32 } %1038, 1
  store i32 %1040, ptr %9, align 4
  br label %2193

1041:                                             ; preds = %1027
  %1042 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1043 = extractvalue { ptr, i32 } %1042, 0
  store ptr %1043, ptr %8, align 8
  %1044 = extractvalue { ptr, i32 } %1042, 1
  store i32 %1044, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %79) #13
  br label %2193

1045:                                             ; preds = %1021
  store i32 0, ptr %77, align 4, !tbaa !35
  br label %1046

1046:                                             ; preds = %1045, %1035
  br label %1047

1047:                                             ; preds = %1046
  %1048 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef 0)
          to label %1049 unwind label %1037

1049:                                             ; preds = %1047
  %1050 = load i8, ptr %1048, align 1, !tbaa !37
  %1051 = sext i8 %1050 to i32
  %1052 = icmp ne i32 %1051, 91
  br i1 %1052, label %1053, label %1649

1053:                                             ; preds = %1049
  call void @llvm.lifetime.start.p0(i64 8, ptr %80) #13
  %1054 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.11, i64 noundef 0) #13
  store i64 %1054, ptr %80, align 8, !tbaa !36
  %1055 = load i64, ptr %80, align 8, !tbaa !36
  %1056 = icmp ne i64 %1055, -1
  br i1 %1056, label %1057, label %1602

1057:                                             ; preds = %1053
  call void @llvm.lifetime.start.p0(i64 32, ptr %81) #13
  %1058 = load i64, ptr %80, align 8, !tbaa !36
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %81, ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef 0, i64 noundef %1058)
          to label %1059 unwind label %1076

1059:                                             ; preds = %1057
  %1060 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull align 8 dereferenceable(32) %81) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %81) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %82, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1061 unwind label %1080

1061:                                             ; preds = %1059
  %1062 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef %82)
          to label %1063 unwind label %1084

1063:                                             ; preds = %1061
  store ptr %1062, ptr %5, align 8, !tbaa !5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %83) #13
  %1064 = load i64, ptr %80, align 8, !tbaa !36
  %1065 = add i64 %1064, 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %83, ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef %1065, i64 noundef -1)
          to label %1066 unwind label %1088

1066:                                             ; preds = %1063
  call void @llvm.lifetime.start.p0(i64 24, ptr %84) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #13
  %1067 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str.101, i64 noundef 0) #13
  %1068 = icmp eq i64 %1067, 0
  br i1 %1068, label %1069, label %1096

1069:                                             ; preds = %1066
  %1070 = load ptr, ptr %5, align 8, !tbaa !5
  %1071 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1070, i32 0, i32 4
  %1072 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(24) %84, ptr noundef nonnull align 8 dereferenceable(24) %1071)
          to label %1073 unwind label %1092

1073:                                             ; preds = %1069
  %1074 = load i64, ptr %80, align 8, !tbaa !36
  %1075 = add i64 %1074, 7
  store i64 %1075, ptr %80, align 8, !tbaa !36
  br label %1546

1076:                                             ; preds = %1057
  %1077 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1078 = extractvalue { ptr, i32 } %1077, 0
  store ptr %1078, ptr %8, align 8
  %1079 = extractvalue { ptr, i32 } %1077, 1
  store i32 %1079, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %81) #13
  br label %1648

1080:                                             ; preds = %1635, %1633, %1610, %1059
  %1081 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1082 = extractvalue { ptr, i32 } %1081, 0
  store ptr %1082, ptr %8, align 8
  %1083 = extractvalue { ptr, i32 } %1081, 1
  store i32 %1083, ptr %9, align 4
  br label %1648

1084:                                             ; preds = %1061
  %1085 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1086 = extractvalue { ptr, i32 } %1085, 0
  store ptr %1086, ptr %8, align 8
  %1087 = extractvalue { ptr, i32 } %1085, 1
  store i32 %1087, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #13
  br label %1648

1088:                                             ; preds = %1063
  %1089 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1090 = extractvalue { ptr, i32 } %1089, 0
  store ptr %1090, ptr %8, align 8
  %1091 = extractvalue { ptr, i32 } %1089, 1
  store i32 %1091, ptr %9, align 4
  br label %1601

1092:                                             ; preds = %1484, %1358, %1232, %1106, %1099, %1069
  %1093 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1094 = extractvalue { ptr, i32 } %1093, 0
  store ptr %1094, ptr %8, align 8
  %1095 = extractvalue { ptr, i32 } %1093, 1
  store i32 %1095, ptr %9, align 4
  br label %1600

1096:                                             ; preds = %1066
  %1097 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str.102, i64 noundef 0) #13
  %1098 = icmp eq i64 %1097, 0
  br i1 %1098, label %1099, label %1106

1099:                                             ; preds = %1096
  %1100 = load ptr, ptr %5, align 8, !tbaa !5
  %1101 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1100, i32 0, i32 2
  %1102 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(24) %84, ptr noundef nonnull align 8 dereferenceable(24) %1101)
          to label %1103 unwind label %1092

1103:                                             ; preds = %1099
  %1104 = load i64, ptr %80, align 8, !tbaa !36
  %1105 = add i64 %1104, 8
  store i64 %1105, ptr %80, align 8, !tbaa !36
  br label %1545

1106:                                             ; preds = %1096
  %1107 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str.103)
          to label %1108 unwind label %1092

1108:                                             ; preds = %1106
  br i1 %1107, label %1109, label %1232

1109:                                             ; preds = %1108
  call void @llvm.lifetime.start.p0(i64 8, ptr %85) #13
  %1110 = load ptr, ptr %5, align 8, !tbaa !5
  %1111 = icmp eq ptr %1110, null
  br i1 %1111, label %1114, label %1112

1112:                                             ; preds = %1109
  %1113 = call ptr @__dynamic_cast(ptr %1110, ptr @_ZTIN5clnet6TensorE, ptr @_ZTIN5clnet4type32StochasticGradientDescentUpdaterE, i64 0) #13
  br label %1115

1114:                                             ; preds = %1109
  br label %1115

1115:                                             ; preds = %1114, %1112
  %1116 = phi ptr [ %1113, %1112 ], [ null, %1114 ]
  store ptr %1116, ptr %85, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %86) #13
  %1117 = load ptr, ptr %85, align 8, !tbaa !5
  %1118 = getelementptr inbounds %"struct.clnet::type::StochasticGradientDescentUpdater", ptr %1117, i32 0, i32 1
  store ptr %1118, ptr %86, align 8, !tbaa !5
  %1119 = load ptr, ptr %85, align 8, !tbaa !5
  %1120 = icmp eq ptr %1119, null
  br i1 %1120, label %1121, label %1139

1121:                                             ; preds = %1115
  store i1 true, ptr %88, align 1
  %1122 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %87) #13
  %1123 = load ptr, ptr %5, align 8, !tbaa !5
  %1124 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1123, i32 0, i32 3
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %87, ptr noundef nonnull align 8 dereferenceable(32) %1124, ptr noundef @.str.104)
          to label %1125 unwind label %1127

1125:                                             ; preds = %1121
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %1122, ptr noundef nonnull align 8 dereferenceable(32) %87)
          to label %1126 unwind label %1131

1126:                                             ; preds = %1125
  store i1 false, ptr %88, align 1
  invoke void @__cxa_throw(ptr %1122, ptr @_ZTISt13runtime_error, ptr @_ZNSt13runtime_errorD1Ev) #15
          to label %2284 unwind label %1131

1127:                                             ; preds = %1121
  %1128 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1129 = extractvalue { ptr, i32 } %1128, 0
  store ptr %1129, ptr %8, align 8
  %1130 = extractvalue { ptr, i32 } %1128, 1
  store i32 %1130, ptr %9, align 4
  br label %1135

1131:                                             ; preds = %1126, %1125
  %1132 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1133 = extractvalue { ptr, i32 } %1132, 0
  store ptr %1133, ptr %8, align 8
  %1134 = extractvalue { ptr, i32 } %1132, 1
  store i32 %1134, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %87) #13
  br label %1135

1135:                                             ; preds = %1131, %1127
  call void @llvm.lifetime.end.p0(i64 32, ptr %87) #13
  %1136 = load i1, ptr %88, align 1
  br i1 %1136, label %1137, label %1138

1137:                                             ; preds = %1135
  call void @__cxa_free_exception(ptr %1122) #13
  br label %1138

1138:                                             ; preds = %1137, %1135
  br label %1231

1139:                                             ; preds = %1115
  %1140 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1141 unwind label %1201

1141:                                             ; preds = %1139
  %1142 = load ptr, ptr %5, align 8, !tbaa !5
  %1143 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1142, i32 0, i32 3
  %1144 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1140, ptr noundef nonnull align 8 dereferenceable(32) %1143)
          to label %1145 unwind label %1201

1145:                                             ; preds = %1141
  %1146 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA18_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1144, ptr noundef nonnull align 1 dereferenceable(18) @.str.106)
          to label %1147 unwind label %1201

1147:                                             ; preds = %1145
  %1148 = load ptr, ptr %86, align 8, !tbaa !5
  %1149 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1146, ptr noundef nonnull align 4 dereferenceable(4) %1148)
          to label %1150 unwind label %1201

1150:                                             ; preds = %1147
  %1151 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1149, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1152 unwind label %1201

1152:                                             ; preds = %1150
  call void @llvm.lifetime.start.p0(i64 1, ptr %89) #13
  %1153 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %1154 unwind label %1205

1154:                                             ; preds = %1152
  %1155 = trunc i32 %1153 to i8
  store i8 %1155, ptr %89, align 1, !tbaa !37
  %1156 = load i8, ptr %89, align 1, !tbaa !37
  %1157 = sext i8 %1156 to i32
  %1158 = icmp ne i32 %1157, 10
  br i1 %1158, label %1159, label %1229

1159:                                             ; preds = %1154
  %1160 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1161 unwind label %1205

1161:                                             ; preds = %1159
  call void @llvm.lifetime.start.p0(i64 4, ptr %90) #13
  %1162 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %90)
          to label %1163 unwind label %1209

1163:                                             ; preds = %1161
  call void @llvm.lifetime.start.p0(i64 32, ptr %91) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %92, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1164 unwind label %1213

1164:                                             ; preds = %1163
  %1165 = load float, ptr %90, align 4, !tbaa !50
  invoke void @_ZN5clnet17unitary_operationIfEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind writable sret(%"class.std::function") align 8 %91, ptr noundef %92, float noundef %1165)
          to label %1166 unwind label %1217

1166:                                             ; preds = %1164
  %1167 = load ptr, ptr %86, align 8, !tbaa !5
  invoke void @_ZNKSt8functionIFvRfEEclES0_(ptr noundef nonnull align 8 dereferenceable(32) %91, ptr noundef nonnull align 4 dereferenceable(4) %1167)
          to label %1168 unwind label %1221

1168:                                             ; preds = %1166
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %91) #13
  %1169 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1170 unwind label %1209

1170:                                             ; preds = %1168
  %1171 = load ptr, ptr %5, align 8, !tbaa !5
  %1172 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1171, i32 0, i32 3
  %1173 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1169, ptr noundef nonnull align 8 dereferenceable(32) %1172)
          to label %1174 unwind label %1209

1174:                                             ; preds = %1170
  %1175 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA16_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1173, ptr noundef nonnull align 1 dereferenceable(16) @.str.107)
          to label %1176 unwind label %1209

1176:                                             ; preds = %1174
  %1177 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1175, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1178 unwind label %1209

1178:                                             ; preds = %1176
  %1179 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1177, ptr noundef nonnull align 1 dereferenceable(2) @.str.108)
          to label %1180 unwind label %1209

1180:                                             ; preds = %1178
  %1181 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1179, ptr noundef nonnull align 4 dereferenceable(4) %90)
          to label %1182 unwind label %1209

1182:                                             ; preds = %1180
  %1183 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1181, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1184 unwind label %1209

1184:                                             ; preds = %1182
  %1185 = invoke noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef @.str.109)
          to label %1186 unwind label %1209

1186:                                             ; preds = %1184
  br i1 %1185, label %1187, label %1227

1187:                                             ; preds = %1186
  %1188 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1189 unwind label %1209

1189:                                             ; preds = %1187
  %1190 = load ptr, ptr %5, align 8, !tbaa !5
  %1191 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1190, i32 0, i32 3
  %1192 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1188, ptr noundef nonnull align 8 dereferenceable(32) %1191)
          to label %1193 unwind label %1209

1193:                                             ; preds = %1189
  %1194 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA18_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1192, ptr noundef nonnull align 1 dereferenceable(18) @.str.106)
          to label %1195 unwind label %1209

1195:                                             ; preds = %1193
  %1196 = load ptr, ptr %86, align 8, !tbaa !5
  %1197 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1194, ptr noundef nonnull align 4 dereferenceable(4) %1196)
          to label %1198 unwind label %1209

1198:                                             ; preds = %1195
  %1199 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1197, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1200 unwind label %1209

1200:                                             ; preds = %1198
  br label %1227

1201:                                             ; preds = %1150, %1147, %1145, %1141, %1139
  %1202 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1203 = extractvalue { ptr, i32 } %1202, 0
  store ptr %1203, ptr %8, align 8
  %1204 = extractvalue { ptr, i32 } %1202, 1
  store i32 %1204, ptr %9, align 4
  br label %1231

1205:                                             ; preds = %1159, %1152
  %1206 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1207 = extractvalue { ptr, i32 } %1206, 0
  store ptr %1207, ptr %8, align 8
  %1208 = extractvalue { ptr, i32 } %1206, 1
  store i32 %1208, ptr %9, align 4
  br label %1230

1209:                                             ; preds = %1198, %1195, %1193, %1189, %1187, %1184, %1182, %1180, %1178, %1176, %1174, %1170, %1168, %1161
  %1210 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1211 = extractvalue { ptr, i32 } %1210, 0
  store ptr %1211, ptr %8, align 8
  %1212 = extractvalue { ptr, i32 } %1210, 1
  store i32 %1212, ptr %9, align 4
  br label %1228

1213:                                             ; preds = %1163
  %1214 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1215 = extractvalue { ptr, i32 } %1214, 0
  store ptr %1215, ptr %8, align 8
  %1216 = extractvalue { ptr, i32 } %1214, 1
  store i32 %1216, ptr %9, align 4
  br label %1226

1217:                                             ; preds = %1164
  %1218 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1219 = extractvalue { ptr, i32 } %1218, 0
  store ptr %1219, ptr %8, align 8
  %1220 = extractvalue { ptr, i32 } %1218, 1
  store i32 %1220, ptr %9, align 4
  br label %1225

1221:                                             ; preds = %1166
  %1222 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1223 = extractvalue { ptr, i32 } %1222, 0
  store ptr %1223, ptr %8, align 8
  %1224 = extractvalue { ptr, i32 } %1222, 1
  store i32 %1224, ptr %9, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #13
  br label %1225

1225:                                             ; preds = %1221, %1217
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #13
  br label %1226

1226:                                             ; preds = %1225, %1213
  call void @llvm.lifetime.end.p0(i64 32, ptr %91) #13
  br label %1228

1227:                                             ; preds = %1200, %1186
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #13
  br label %1229

1228:                                             ; preds = %1226, %1209
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #13
  br label %1230

1229:                                             ; preds = %1227, %1154
  store i32 2, ptr %78, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %89) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %86) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %85) #13
  br label %1596

1230:                                             ; preds = %1228, %1205
  call void @llvm.lifetime.end.p0(i64 1, ptr %89) #13
  br label %1231

1231:                                             ; preds = %1230, %1201, %1138
  call void @llvm.lifetime.end.p0(i64 8, ptr %86) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %85) #13
  br label %1600

1232:                                             ; preds = %1108
  %1233 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str.110)
          to label %1234 unwind label %1092

1234:                                             ; preds = %1232
  br i1 %1233, label %1235, label %1358

1235:                                             ; preds = %1234
  call void @llvm.lifetime.start.p0(i64 8, ptr %93) #13
  %1236 = load ptr, ptr %5, align 8, !tbaa !5
  %1237 = icmp eq ptr %1236, null
  br i1 %1237, label %1240, label %1238

1238:                                             ; preds = %1235
  %1239 = call ptr @__dynamic_cast(ptr %1236, ptr @_ZTIN5clnet6TensorE, ptr @_ZTIN5clnet4type32StochasticGradientDescentUpdaterE, i64 0) #13
  br label %1241

1240:                                             ; preds = %1235
  br label %1241

1241:                                             ; preds = %1240, %1238
  %1242 = phi ptr [ %1239, %1238 ], [ null, %1240 ]
  store ptr %1242, ptr %93, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %94) #13
  %1243 = load ptr, ptr %93, align 8, !tbaa !5
  %1244 = getelementptr inbounds %"struct.clnet::type::StochasticGradientDescentUpdater", ptr %1243, i32 0, i32 2
  store ptr %1244, ptr %94, align 8, !tbaa !5
  %1245 = load ptr, ptr %93, align 8, !tbaa !5
  %1246 = icmp eq ptr %1245, null
  br i1 %1246, label %1247, label %1265

1247:                                             ; preds = %1241
  store i1 true, ptr %96, align 1
  %1248 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %95) #13
  %1249 = load ptr, ptr %5, align 8, !tbaa !5
  %1250 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1249, i32 0, i32 3
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %95, ptr noundef nonnull align 8 dereferenceable(32) %1250, ptr noundef @.str.104)
          to label %1251 unwind label %1253

1251:                                             ; preds = %1247
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %1248, ptr noundef nonnull align 8 dereferenceable(32) %95)
          to label %1252 unwind label %1257

1252:                                             ; preds = %1251
  store i1 false, ptr %96, align 1
  invoke void @__cxa_throw(ptr %1248, ptr @_ZTISt13runtime_error, ptr @_ZNSt13runtime_errorD1Ev) #15
          to label %2284 unwind label %1257

1253:                                             ; preds = %1247
  %1254 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1255 = extractvalue { ptr, i32 } %1254, 0
  store ptr %1255, ptr %8, align 8
  %1256 = extractvalue { ptr, i32 } %1254, 1
  store i32 %1256, ptr %9, align 4
  br label %1261

1257:                                             ; preds = %1252, %1251
  %1258 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1259 = extractvalue { ptr, i32 } %1258, 0
  store ptr %1259, ptr %8, align 8
  %1260 = extractvalue { ptr, i32 } %1258, 1
  store i32 %1260, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #13
  br label %1261

1261:                                             ; preds = %1257, %1253
  call void @llvm.lifetime.end.p0(i64 32, ptr %95) #13
  %1262 = load i1, ptr %96, align 1
  br i1 %1262, label %1263, label %1264

1263:                                             ; preds = %1261
  call void @__cxa_free_exception(ptr %1248) #13
  br label %1264

1264:                                             ; preds = %1263, %1261
  br label %1357

1265:                                             ; preds = %1241
  %1266 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1267 unwind label %1327

1267:                                             ; preds = %1265
  %1268 = load ptr, ptr %5, align 8, !tbaa !5
  %1269 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1268, i32 0, i32 3
  %1270 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1266, ptr noundef nonnull align 8 dereferenceable(32) %1269)
          to label %1271 unwind label %1327

1271:                                             ; preds = %1267
  %1272 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA17_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1270, ptr noundef nonnull align 1 dereferenceable(17) @.str.111)
          to label %1273 unwind label %1327

1273:                                             ; preds = %1271
  %1274 = load ptr, ptr %94, align 8, !tbaa !5
  %1275 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1272, ptr noundef nonnull align 4 dereferenceable(4) %1274)
          to label %1276 unwind label %1327

1276:                                             ; preds = %1273
  %1277 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1275, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1278 unwind label %1327

1278:                                             ; preds = %1276
  call void @llvm.lifetime.start.p0(i64 1, ptr %97) #13
  %1279 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %1280 unwind label %1331

1280:                                             ; preds = %1278
  %1281 = trunc i32 %1279 to i8
  store i8 %1281, ptr %97, align 1, !tbaa !37
  %1282 = load i8, ptr %97, align 1, !tbaa !37
  %1283 = sext i8 %1282 to i32
  %1284 = icmp ne i32 %1283, 10
  br i1 %1284, label %1285, label %1355

1285:                                             ; preds = %1280
  %1286 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1287 unwind label %1331

1287:                                             ; preds = %1285
  call void @llvm.lifetime.start.p0(i64 4, ptr %98) #13
  %1288 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %98)
          to label %1289 unwind label %1335

1289:                                             ; preds = %1287
  call void @llvm.lifetime.start.p0(i64 32, ptr %99) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %100, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1290 unwind label %1339

1290:                                             ; preds = %1289
  %1291 = load float, ptr %98, align 4, !tbaa !50
  invoke void @_ZN5clnet17unitary_operationIfEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind writable sret(%"class.std::function") align 8 %99, ptr noundef %100, float noundef %1291)
          to label %1292 unwind label %1343

1292:                                             ; preds = %1290
  %1293 = load ptr, ptr %94, align 8, !tbaa !5
  invoke void @_ZNKSt8functionIFvRfEEclES0_(ptr noundef nonnull align 8 dereferenceable(32) %99, ptr noundef nonnull align 4 dereferenceable(4) %1293)
          to label %1294 unwind label %1347

1294:                                             ; preds = %1292
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %99) #13
  %1295 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1296 unwind label %1335

1296:                                             ; preds = %1294
  %1297 = load ptr, ptr %5, align 8, !tbaa !5
  %1298 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1297, i32 0, i32 3
  %1299 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1295, ptr noundef nonnull align 8 dereferenceable(32) %1298)
          to label %1300 unwind label %1335

1300:                                             ; preds = %1296
  %1301 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1299, ptr noundef nonnull align 1 dereferenceable(15) @.str.112)
          to label %1302 unwind label %1335

1302:                                             ; preds = %1300
  %1303 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1301, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1304 unwind label %1335

1304:                                             ; preds = %1302
  %1305 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1303, ptr noundef nonnull align 1 dereferenceable(2) @.str.108)
          to label %1306 unwind label %1335

1306:                                             ; preds = %1304
  %1307 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1305, ptr noundef nonnull align 4 dereferenceable(4) %98)
          to label %1308 unwind label %1335

1308:                                             ; preds = %1306
  %1309 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1307, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1310 unwind label %1335

1310:                                             ; preds = %1308
  %1311 = invoke noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef @.str.109)
          to label %1312 unwind label %1335

1312:                                             ; preds = %1310
  br i1 %1311, label %1313, label %1353

1313:                                             ; preds = %1312
  %1314 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1315 unwind label %1335

1315:                                             ; preds = %1313
  %1316 = load ptr, ptr %5, align 8, !tbaa !5
  %1317 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1316, i32 0, i32 3
  %1318 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1314, ptr noundef nonnull align 8 dereferenceable(32) %1317)
          to label %1319 unwind label %1335

1319:                                             ; preds = %1315
  %1320 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA17_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1318, ptr noundef nonnull align 1 dereferenceable(17) @.str.111)
          to label %1321 unwind label %1335

1321:                                             ; preds = %1319
  %1322 = load ptr, ptr %94, align 8, !tbaa !5
  %1323 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1320, ptr noundef nonnull align 4 dereferenceable(4) %1322)
          to label %1324 unwind label %1335

1324:                                             ; preds = %1321
  %1325 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1323, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1326 unwind label %1335

1326:                                             ; preds = %1324
  br label %1353

1327:                                             ; preds = %1276, %1273, %1271, %1267, %1265
  %1328 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1329 = extractvalue { ptr, i32 } %1328, 0
  store ptr %1329, ptr %8, align 8
  %1330 = extractvalue { ptr, i32 } %1328, 1
  store i32 %1330, ptr %9, align 4
  br label %1357

1331:                                             ; preds = %1285, %1278
  %1332 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1333 = extractvalue { ptr, i32 } %1332, 0
  store ptr %1333, ptr %8, align 8
  %1334 = extractvalue { ptr, i32 } %1332, 1
  store i32 %1334, ptr %9, align 4
  br label %1356

1335:                                             ; preds = %1324, %1321, %1319, %1315, %1313, %1310, %1308, %1306, %1304, %1302, %1300, %1296, %1294, %1287
  %1336 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1337 = extractvalue { ptr, i32 } %1336, 0
  store ptr %1337, ptr %8, align 8
  %1338 = extractvalue { ptr, i32 } %1336, 1
  store i32 %1338, ptr %9, align 4
  br label %1354

1339:                                             ; preds = %1289
  %1340 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1341 = extractvalue { ptr, i32 } %1340, 0
  store ptr %1341, ptr %8, align 8
  %1342 = extractvalue { ptr, i32 } %1340, 1
  store i32 %1342, ptr %9, align 4
  br label %1352

1343:                                             ; preds = %1290
  %1344 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1345 = extractvalue { ptr, i32 } %1344, 0
  store ptr %1345, ptr %8, align 8
  %1346 = extractvalue { ptr, i32 } %1344, 1
  store i32 %1346, ptr %9, align 4
  br label %1351

1347:                                             ; preds = %1292
  %1348 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1349 = extractvalue { ptr, i32 } %1348, 0
  store ptr %1349, ptr %8, align 8
  %1350 = extractvalue { ptr, i32 } %1348, 1
  store i32 %1350, ptr %9, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #13
  br label %1351

1351:                                             ; preds = %1347, %1343
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #13
  br label %1352

1352:                                             ; preds = %1351, %1339
  call void @llvm.lifetime.end.p0(i64 32, ptr %99) #13
  br label %1354

1353:                                             ; preds = %1326, %1312
  call void @llvm.lifetime.end.p0(i64 4, ptr %98) #13
  br label %1355

1354:                                             ; preds = %1352, %1335
  call void @llvm.lifetime.end.p0(i64 4, ptr %98) #13
  br label %1356

1355:                                             ; preds = %1353, %1280
  store i32 2, ptr %78, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %97) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %94) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %93) #13
  br label %1596

1356:                                             ; preds = %1354, %1331
  call void @llvm.lifetime.end.p0(i64 1, ptr %97) #13
  br label %1357

1357:                                             ; preds = %1356, %1327, %1264
  call void @llvm.lifetime.end.p0(i64 8, ptr %94) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %93) #13
  br label %1600

1358:                                             ; preds = %1234
  %1359 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str.113)
          to label %1360 unwind label %1092

1360:                                             ; preds = %1358
  br i1 %1359, label %1361, label %1484

1361:                                             ; preds = %1360
  call void @llvm.lifetime.start.p0(i64 8, ptr %101) #13
  %1362 = load ptr, ptr %5, align 8, !tbaa !5
  %1363 = icmp eq ptr %1362, null
  br i1 %1363, label %1366, label %1364

1364:                                             ; preds = %1361
  %1365 = call ptr @__dynamic_cast(ptr %1362, ptr @_ZTIN5clnet6TensorE, ptr @_ZTIN5clnet4type18IterativeOptimizerE, i64 0) #13
  br label %1367

1366:                                             ; preds = %1361
  br label %1367

1367:                                             ; preds = %1366, %1364
  %1368 = phi ptr [ %1365, %1364 ], [ null, %1366 ]
  store ptr %1368, ptr %101, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %102) #13
  %1369 = load ptr, ptr %101, align 8, !tbaa !5
  %1370 = getelementptr inbounds %"struct.clnet::type::IterativeOptimizer", ptr %1369, i32 0, i32 2
  store ptr %1370, ptr %102, align 8, !tbaa !5
  %1371 = load ptr, ptr %101, align 8, !tbaa !5
  %1372 = icmp eq ptr %1371, null
  br i1 %1372, label %1373, label %1391

1373:                                             ; preds = %1367
  store i1 true, ptr %104, align 1
  %1374 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %103) #13
  %1375 = load ptr, ptr %5, align 8, !tbaa !5
  %1376 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1375, i32 0, i32 3
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %103, ptr noundef nonnull align 8 dereferenceable(32) %1376, ptr noundef @.str.104)
          to label %1377 unwind label %1379

1377:                                             ; preds = %1373
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %1374, ptr noundef nonnull align 8 dereferenceable(32) %103)
          to label %1378 unwind label %1383

1378:                                             ; preds = %1377
  store i1 false, ptr %104, align 1
  invoke void @__cxa_throw(ptr %1374, ptr @_ZTISt13runtime_error, ptr @_ZNSt13runtime_errorD1Ev) #15
          to label %2284 unwind label %1383

1379:                                             ; preds = %1373
  %1380 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1381 = extractvalue { ptr, i32 } %1380, 0
  store ptr %1381, ptr %8, align 8
  %1382 = extractvalue { ptr, i32 } %1380, 1
  store i32 %1382, ptr %9, align 4
  br label %1387

1383:                                             ; preds = %1378, %1377
  %1384 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1385 = extractvalue { ptr, i32 } %1384, 0
  store ptr %1385, ptr %8, align 8
  %1386 = extractvalue { ptr, i32 } %1384, 1
  store i32 %1386, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #13
  br label %1387

1387:                                             ; preds = %1383, %1379
  call void @llvm.lifetime.end.p0(i64 32, ptr %103) #13
  %1388 = load i1, ptr %104, align 1
  br i1 %1388, label %1389, label %1390

1389:                                             ; preds = %1387
  call void @__cxa_free_exception(ptr %1374) #13
  br label %1390

1390:                                             ; preds = %1389, %1387
  br label %1483

1391:                                             ; preds = %1367
  %1392 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1393 unwind label %1453

1393:                                             ; preds = %1391
  %1394 = load ptr, ptr %5, align 8, !tbaa !5
  %1395 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1394, i32 0, i32 3
  %1396 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1392, ptr noundef nonnull align 8 dereferenceable(32) %1395)
          to label %1397 unwind label %1453

1397:                                             ; preds = %1393
  %1398 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1396, ptr noundef nonnull align 1 dereferenceable(15) @.str.114)
          to label %1399 unwind label %1453

1399:                                             ; preds = %1397
  %1400 = load ptr, ptr %102, align 8, !tbaa !5
  %1401 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1398, ptr noundef nonnull align 8 dereferenceable(8) %1400)
          to label %1402 unwind label %1453

1402:                                             ; preds = %1399
  %1403 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1401, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1404 unwind label %1453

1404:                                             ; preds = %1402
  call void @llvm.lifetime.start.p0(i64 1, ptr %105) #13
  %1405 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %1406 unwind label %1457

1406:                                             ; preds = %1404
  %1407 = trunc i32 %1405 to i8
  store i8 %1407, ptr %105, align 1, !tbaa !37
  %1408 = load i8, ptr %105, align 1, !tbaa !37
  %1409 = sext i8 %1408 to i32
  %1410 = icmp ne i32 %1409, 10
  br i1 %1410, label %1411, label %1481

1411:                                             ; preds = %1406
  %1412 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1413 unwind label %1457

1413:                                             ; preds = %1411
  call void @llvm.lifetime.start.p0(i64 8, ptr %106) #13
  %1414 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERx(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(8) %106)
          to label %1415 unwind label %1461

1415:                                             ; preds = %1413
  call void @llvm.lifetime.start.p0(i64 32, ptr %107) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %108, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1416 unwind label %1465

1416:                                             ; preds = %1415
  %1417 = load i64, ptr %106, align 8, !tbaa !38
  invoke void @_ZN5clnet17unitary_operationIxEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind writable sret(%"class.std::function.112") align 8 %107, ptr noundef %108, i64 noundef %1417)
          to label %1418 unwind label %1469

1418:                                             ; preds = %1416
  %1419 = load ptr, ptr %102, align 8, !tbaa !5
  invoke void @_ZNKSt8functionIFvRxEEclES0_(ptr noundef nonnull align 8 dereferenceable(32) %107, ptr noundef nonnull align 8 dereferenceable(8) %1419)
          to label %1420 unwind label %1473

1420:                                             ; preds = %1418
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %108) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %107) #13
  %1421 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1422 unwind label %1461

1422:                                             ; preds = %1420
  %1423 = load ptr, ptr %5, align 8, !tbaa !5
  %1424 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1423, i32 0, i32 3
  %1425 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1421, ptr noundef nonnull align 8 dereferenceable(32) %1424)
          to label %1426 unwind label %1461

1426:                                             ; preds = %1422
  %1427 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA13_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1425, ptr noundef nonnull align 1 dereferenceable(13) @.str.115)
          to label %1428 unwind label %1461

1428:                                             ; preds = %1426
  %1429 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1427, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1430 unwind label %1461

1430:                                             ; preds = %1428
  %1431 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1429, ptr noundef nonnull align 1 dereferenceable(2) @.str.108)
          to label %1432 unwind label %1461

1432:                                             ; preds = %1430
  %1433 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1431, ptr noundef nonnull align 8 dereferenceable(8) %106)
          to label %1434 unwind label %1461

1434:                                             ; preds = %1432
  %1435 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1433, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1436 unwind label %1461

1436:                                             ; preds = %1434
  %1437 = invoke noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef @.str.109)
          to label %1438 unwind label %1461

1438:                                             ; preds = %1436
  br i1 %1437, label %1439, label %1479

1439:                                             ; preds = %1438
  %1440 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %1441 unwind label %1461

1441:                                             ; preds = %1439
  %1442 = load ptr, ptr %5, align 8, !tbaa !5
  %1443 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1442, i32 0, i32 3
  %1444 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1440, ptr noundef nonnull align 8 dereferenceable(32) %1443)
          to label %1445 unwind label %1461

1445:                                             ; preds = %1441
  %1446 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1444, ptr noundef nonnull align 1 dereferenceable(15) @.str.114)
          to label %1447 unwind label %1461

1447:                                             ; preds = %1445
  %1448 = load ptr, ptr %102, align 8, !tbaa !5
  %1449 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1446, ptr noundef nonnull align 8 dereferenceable(8) %1448)
          to label %1450 unwind label %1461

1450:                                             ; preds = %1447
  %1451 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1449, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1452 unwind label %1461

1452:                                             ; preds = %1450
  br label %1479

1453:                                             ; preds = %1402, %1399, %1397, %1393, %1391
  %1454 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1455 = extractvalue { ptr, i32 } %1454, 0
  store ptr %1455, ptr %8, align 8
  %1456 = extractvalue { ptr, i32 } %1454, 1
  store i32 %1456, ptr %9, align 4
  br label %1483

1457:                                             ; preds = %1411, %1404
  %1458 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1459 = extractvalue { ptr, i32 } %1458, 0
  store ptr %1459, ptr %8, align 8
  %1460 = extractvalue { ptr, i32 } %1458, 1
  store i32 %1460, ptr %9, align 4
  br label %1482

1461:                                             ; preds = %1450, %1447, %1445, %1441, %1439, %1436, %1434, %1432, %1430, %1428, %1426, %1422, %1420, %1413
  %1462 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1463 = extractvalue { ptr, i32 } %1462, 0
  store ptr %1463, ptr %8, align 8
  %1464 = extractvalue { ptr, i32 } %1462, 1
  store i32 %1464, ptr %9, align 4
  br label %1480

1465:                                             ; preds = %1415
  %1466 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1467 = extractvalue { ptr, i32 } %1466, 0
  store ptr %1467, ptr %8, align 8
  %1468 = extractvalue { ptr, i32 } %1466, 1
  store i32 %1468, ptr %9, align 4
  br label %1478

1469:                                             ; preds = %1416
  %1470 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1471 = extractvalue { ptr, i32 } %1470, 0
  store ptr %1471, ptr %8, align 8
  %1472 = extractvalue { ptr, i32 } %1470, 1
  store i32 %1472, ptr %9, align 4
  br label %1477

1473:                                             ; preds = %1418
  %1474 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1475 = extractvalue { ptr, i32 } %1474, 0
  store ptr %1475, ptr %8, align 8
  %1476 = extractvalue { ptr, i32 } %1474, 1
  store i32 %1476, ptr %9, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #13
  br label %1477

1477:                                             ; preds = %1473, %1469
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %108) #13
  br label %1478

1478:                                             ; preds = %1477, %1465
  call void @llvm.lifetime.end.p0(i64 32, ptr %107) #13
  br label %1480

1479:                                             ; preds = %1452, %1438
  call void @llvm.lifetime.end.p0(i64 8, ptr %106) #13
  br label %1481

1480:                                             ; preds = %1478, %1461
  call void @llvm.lifetime.end.p0(i64 8, ptr %106) #13
  br label %1482

1481:                                             ; preds = %1479, %1406
  store i32 2, ptr %78, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %105) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %102) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #13
  br label %1596

1482:                                             ; preds = %1480, %1457
  call void @llvm.lifetime.end.p0(i64 1, ptr %105) #13
  br label %1483

1483:                                             ; preds = %1482, %1453, %1390
  call void @llvm.lifetime.end.p0(i64 8, ptr %102) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #13
  br label %1600

1484:                                             ; preds = %1360
  %1485 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str.116)
          to label %1486 unwind label %1092

1486:                                             ; preds = %1484
  br i1 %1485, label %1487, label %1541

1487:                                             ; preds = %1486
  call void @llvm.lifetime.start.p0(i64 8, ptr %109) #13
  %1488 = load ptr, ptr %5, align 8, !tbaa !5
  %1489 = icmp eq ptr %1488, null
  br i1 %1489, label %1492, label %1490

1490:                                             ; preds = %1487
  %1491 = call ptr @__dynamic_cast(ptr %1488, ptr @_ZTIN5clnet6TensorE, ptr @_ZTIN5clnet4back4LossE, i64 0) #13
  br label %1493

1492:                                             ; preds = %1487
  br label %1493

1493:                                             ; preds = %1492, %1490
  %1494 = phi ptr [ %1491, %1490 ], [ null, %1492 ]
  store ptr %1494, ptr %109, align 8, !tbaa !5
  %1495 = load ptr, ptr %109, align 8, !tbaa !5
  %1496 = icmp eq ptr %1495, null
  br i1 %1496, label %1497, label %1520

1497:                                             ; preds = %1493
  store i1 true, ptr %112, align 1
  %1498 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %110) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %111) #13
  %1499 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN5clnet9type_nameB5cxx11EPNS_6TensorE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %111, ptr noundef %1499)
          to label %1500 unwind label %1503

1500:                                             ; preds = %1497
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %110, ptr noundef nonnull align 8 dereferenceable(32) %111, ptr noundef @.str.117)
          to label %1501 unwind label %1507

1501:                                             ; preds = %1500
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %1498, ptr noundef nonnull align 8 dereferenceable(32) %110)
          to label %1502 unwind label %1511

1502:                                             ; preds = %1501
  store i1 false, ptr %112, align 1
  invoke void @__cxa_throw(ptr %1498, ptr @_ZTISt13runtime_error, ptr @_ZNSt13runtime_errorD1Ev) #15
          to label %2284 unwind label %1511

1503:                                             ; preds = %1497
  %1504 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1505 = extractvalue { ptr, i32 } %1504, 0
  store ptr %1505, ptr %8, align 8
  %1506 = extractvalue { ptr, i32 } %1504, 1
  store i32 %1506, ptr %9, align 4
  br label %1516

1507:                                             ; preds = %1500
  %1508 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1509 = extractvalue { ptr, i32 } %1508, 0
  store ptr %1509, ptr %8, align 8
  %1510 = extractvalue { ptr, i32 } %1508, 1
  store i32 %1510, ptr %9, align 4
  br label %1515

1511:                                             ; preds = %1502, %1501
  %1512 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1513 = extractvalue { ptr, i32 } %1512, 0
  store ptr %1513, ptr %8, align 8
  %1514 = extractvalue { ptr, i32 } %1512, 1
  store i32 %1514, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #13
  br label %1515

1515:                                             ; preds = %1511, %1507
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #13
  br label %1516

1516:                                             ; preds = %1515, %1503
  call void @llvm.lifetime.end.p0(i64 32, ptr %111) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %110) #13
  %1517 = load i1, ptr %112, align 1
  br i1 %1517, label %1518, label %1519

1518:                                             ; preds = %1516
  call void @__cxa_free_exception(ptr %1498) #13
  br label %1519

1519:                                             ; preds = %1518, %1516
  br label %1540

1520:                                             ; preds = %1493
  call void @llvm.lifetime.start.p0(i64 4, ptr %113) #13
  %1521 = load ptr, ptr %109, align 8, !tbaa !5
  %1522 = load ptr, ptr %3, align 8, !tbaa !5
  %1523 = load ptr, ptr %1521, align 8, !tbaa !42
  %1524 = getelementptr inbounds ptr, ptr %1523, i64 7
  %1525 = load ptr, ptr %1524, align 8
  %1526 = invoke noundef float %1525(ptr noundef nonnull align 8 dereferenceable(176) %1521, ptr noundef nonnull align 8 dereferenceable(296) %1522)
          to label %1527 unwind label %1536

1527:                                             ; preds = %1520
  store float %1526, ptr %113, align 4, !tbaa !50
  %1528 = load ptr, ptr %5, align 8, !tbaa !5
  invoke void @_ZN5clnet15describe_tensorEPNS_6TensorEb(ptr noundef %1528, i1 noundef zeroext true)
          to label %1529 unwind label %1536

1529:                                             ; preds = %1527
  %1530 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA14_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(14) @.str.118)
          to label %1531 unwind label %1536

1531:                                             ; preds = %1529
  %1532 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1530, ptr noundef nonnull align 4 dereferenceable(4) %113)
          to label %1533 unwind label %1536

1533:                                             ; preds = %1531
  %1534 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1532, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1535 unwind label %1536

1535:                                             ; preds = %1533
  store i32 2, ptr %78, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %113) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %109) #13
  br label %1596

1536:                                             ; preds = %1533, %1531, %1529, %1527, %1520
  %1537 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1538 = extractvalue { ptr, i32 } %1537, 0
  store ptr %1538, ptr %8, align 8
  %1539 = extractvalue { ptr, i32 } %1537, 1
  store i32 %1539, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %113) #13
  br label %1540

1540:                                             ; preds = %1536, %1519
  call void @llvm.lifetime.end.p0(i64 8, ptr %109) #13
  br label %1600

1541:                                             ; preds = %1486
  br label %1542

1542:                                             ; preds = %1541
  br label %1543

1543:                                             ; preds = %1542
  br label %1544

1544:                                             ; preds = %1543
  br label %1545

1545:                                             ; preds = %1544, %1103
  br label %1546

1546:                                             ; preds = %1545, %1073
  call void @llvm.lifetime.start.p0(i64 8, ptr %114) #13
  %1547 = load i64, ptr %80, align 8, !tbaa !36
  %1548 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.4, i64 noundef %1547) #13
  %1549 = add i64 %1548, 1
  store i64 %1549, ptr %114, align 8, !tbaa !36
  call void @llvm.lifetime.start.p0(i64 4, ptr %115) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %116) #13
  %1550 = load i64, ptr %80, align 8, !tbaa !36
  %1551 = load i64, ptr %114, align 8, !tbaa !36
  %1552 = load i64, ptr %80, align 8, !tbaa !36
  %1553 = sub i64 %1551, %1552
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %116, ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef %1550, i64 noundef %1553)
          to label %1554 unwind label %1578

1554:                                             ; preds = %1546
  %1555 = invoke noundef i32 @_ZNSt7__cxx114stoiERKNS_12basic_stringIcSt11char_traitsIcESaIcEEEPmi(ptr noundef nonnull align 8 dereferenceable(32) %116, ptr noundef null, i32 noundef 10)
          to label %1556 unwind label %1582

1556:                                             ; preds = %1554
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %116) #13
  store i32 %1555, ptr %115, align 4, !tbaa !35
  %1557 = load i32, ptr %115, align 4, !tbaa !35
  %1558 = sext i32 %1557 to i64
  %1559 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef %1558) #13
  %1560 = load ptr, ptr %1559, align 8, !tbaa !5
  store ptr %1560, ptr %5, align 8, !tbaa !5
  %1561 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  %1562 = load i64, ptr %114, align 8, !tbaa !36
  %1563 = icmp ugt i64 %1561, %1562
  br i1 %1563, label %1564, label %1595

1564:                                             ; preds = %1556
  %1565 = load i64, ptr %114, align 8, !tbaa !36
  %1566 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef %1565)
          to label %1567 unwind label %1587

1567:                                             ; preds = %1564
  %1568 = load i8, ptr %1566, align 1, !tbaa !37
  %1569 = sext i8 %1568 to i32
  %1570 = icmp eq i32 %1569, 91
  br i1 %1570, label %1571, label %1595

1571:                                             ; preds = %1567
  call void @llvm.lifetime.start.p0(i64 32, ptr %117) #13
  %1572 = load i64, ptr %114, align 8, !tbaa !36
  %1573 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  %1574 = load i64, ptr %114, align 8, !tbaa !36
  %1575 = sub i64 %1573, %1574
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %117, ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef %1572, i64 noundef %1575)
          to label %1576 unwind label %1591

1576:                                             ; preds = %1571
  %1577 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull align 8 dereferenceable(32) %117) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %117) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %117) #13
  br label %1595

1578:                                             ; preds = %1546
  %1579 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1580 = extractvalue { ptr, i32 } %1579, 0
  store ptr %1580, ptr %8, align 8
  %1581 = extractvalue { ptr, i32 } %1579, 1
  store i32 %1581, ptr %9, align 4
  br label %1586

1582:                                             ; preds = %1554
  %1583 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1584 = extractvalue { ptr, i32 } %1583, 0
  store ptr %1584, ptr %8, align 8
  %1585 = extractvalue { ptr, i32 } %1583, 1
  store i32 %1585, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #13
  br label %1586

1586:                                             ; preds = %1582, %1578
  call void @llvm.lifetime.end.p0(i64 32, ptr %116) #13
  br label %1599

1587:                                             ; preds = %1564
  %1588 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1589 = extractvalue { ptr, i32 } %1588, 0
  store ptr %1589, ptr %8, align 8
  %1590 = extractvalue { ptr, i32 } %1588, 1
  store i32 %1590, ptr %9, align 4
  br label %1599

1591:                                             ; preds = %1571
  %1592 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1593 = extractvalue { ptr, i32 } %1592, 0
  store ptr %1593, ptr %8, align 8
  %1594 = extractvalue { ptr, i32 } %1592, 1
  store i32 %1594, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %117) #13
  br label %1599

1595:                                             ; preds = %1576, %1567, %1556
  call void @llvm.lifetime.end.p0(i64 4, ptr %115) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %114) #13
  store i32 0, ptr %78, align 4
  br label %1596

1596:                                             ; preds = %1595, %1535, %1481, %1355, %1229
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %84) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %83) #13
  %1597 = load i32, ptr %78, align 4
  switch i32 %1597, label %1645 [
    i32 0, label %1598
  ]

1598:                                             ; preds = %1596
  br label %1644

1599:                                             ; preds = %1591, %1587, %1586
  call void @llvm.lifetime.end.p0(i64 4, ptr %115) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %114) #13
  br label %1600

1600:                                             ; preds = %1599, %1540, %1483, %1357, %1231, %1092
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %84) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #13
  br label %1601

1601:                                             ; preds = %1600, %1088
  call void @llvm.lifetime.end.p0(i64 32, ptr %83) #13
  br label %1648

1602:                                             ; preds = %1053
  %1603 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.19, i64 noundef 0) #13
  store i64 %1603, ptr %80, align 8, !tbaa !36
  %1604 = icmp ne i64 %1603, -1
  br i1 %1604, label %1608, label %1605

1605:                                             ; preds = %1602
  %1606 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef @.str.59, i64 noundef 0) #13
  store i64 %1606, ptr %80, align 8, !tbaa !36
  %1607 = icmp ne i64 %1606, -1
  br i1 %1607, label %1608, label %1633

1608:                                             ; preds = %1605, %1602
  call void @llvm.lifetime.start.p0(i64 32, ptr %118) #13
  %1609 = load i64, ptr %80, align 8, !tbaa !36
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %118, ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef 0, i64 noundef %1609)
          to label %1610 unwind label %1621

1610:                                             ; preds = %1608
  %1611 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull align 8 dereferenceable(32) %118) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %118) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %118) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1612 unwind label %1080

1612:                                             ; preds = %1610
  %1613 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef %119)
          to label %1614 unwind label %1625

1614:                                             ; preds = %1612
  store ptr %1613, ptr %5, align 8, !tbaa !5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %120) #13
  %1615 = load i64, ptr %80, align 8, !tbaa !36
  %1616 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  %1617 = load i64, ptr %80, align 8, !tbaa !36
  %1618 = sub i64 %1616, %1617
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %120, ptr noundef nonnull align 8 dereferenceable(32) %6, i64 noundef %1615, i64 noundef %1618)
          to label %1619 unwind label %1629

1619:                                             ; preds = %1614
  %1620 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull align 8 dereferenceable(32) %120) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %120) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %120) #13
  br label %1643

1621:                                             ; preds = %1608
  %1622 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1623 = extractvalue { ptr, i32 } %1622, 0
  store ptr %1623, ptr %8, align 8
  %1624 = extractvalue { ptr, i32 } %1622, 1
  store i32 %1624, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %118) #13
  br label %1648

1625:                                             ; preds = %1612
  %1626 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1627 = extractvalue { ptr, i32 } %1626, 0
  store ptr %1627, ptr %8, align 8
  %1628 = extractvalue { ptr, i32 } %1626, 1
  store i32 %1628, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #13
  br label %1648

1629:                                             ; preds = %1614
  %1630 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1631 = extractvalue { ptr, i32 } %1630, 0
  store ptr %1631, ptr %8, align 8
  %1632 = extractvalue { ptr, i32 } %1630, 1
  store i32 %1632, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %120) #13
  br label %1648

1633:                                             ; preds = %1605
  %1634 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull align 8 dereferenceable(32) %6)
          to label %1635 unwind label %1080

1635:                                             ; preds = %1633
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %121, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1636 unwind label %1080

1636:                                             ; preds = %1635
  %1637 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef %121)
          to label %1638 unwind label %1639

1638:                                             ; preds = %1636
  store ptr %1637, ptr %5, align 8, !tbaa !5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #13
  br label %1643

1639:                                             ; preds = %1636
  %1640 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1641 = extractvalue { ptr, i32 } %1640, 0
  store ptr %1641, ptr %8, align 8
  %1642 = extractvalue { ptr, i32 } %1640, 1
  store i32 %1642, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #13
  br label %1648

1643:                                             ; preds = %1638, %1619
  br label %1644

1644:                                             ; preds = %1643, %1598
  store i32 0, ptr %78, align 4
  br label %1645

1645:                                             ; preds = %1644, %1596
  call void @llvm.lifetime.end.p0(i64 8, ptr %80) #13
  %1646 = load i32, ptr %78, align 4
  switch i32 %1646, label %2185 [
    i32 0, label %1647
  ]

1647:                                             ; preds = %1645
  br label %1657

1648:                                             ; preds = %1639, %1629, %1625, %1621, %1601, %1084, %1080, %1076
  call void @llvm.lifetime.end.p0(i64 8, ptr %80) #13
  br label %2193

1649:                                             ; preds = %1049
  %1650 = load ptr, ptr %5, align 8, !tbaa !5
  %1651 = icmp eq ptr %1650, null
  br i1 %1651, label %1652, label %1654

1652:                                             ; preds = %1649
  %1653 = load ptr, ptr @_ZN5clnet8_currentE, align 8, !tbaa !5
  store ptr %1653, ptr %5, align 8, !tbaa !5
  br label %1654

1654:                                             ; preds = %1652, %1649
  %1655 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull align 8 dereferenceable(32) %6)
          to label %1656 unwind label %1037

1656:                                             ; preds = %1654
  br label %1657

1657:                                             ; preds = %1656, %1647
  call void @llvm.lifetime.start.p0(i64 32, ptr %122) #13
  call void @llvm.lifetime.start.p0(i64 1, ptr %123) #13
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %123) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.119, ptr noundef nonnull align 1 dereferenceable(1) %123)
          to label %1658 unwind label %1676

1658:                                             ; preds = %1657
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %123) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr %123) #13
  call void @llvm.lifetime.start.p0(i64 8, ptr %124) #13
  %1659 = invoke noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5rfindEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef @.str.59, i64 noundef -1)
          to label %1660 unwind label %1680

1660:                                             ; preds = %1658
  store i64 %1659, ptr %124, align 8, !tbaa !36
  %1661 = load i64, ptr %124, align 8, !tbaa !36
  %1662 = icmp ne i64 %1661, -1
  br i1 %1662, label %1663, label %1692

1663:                                             ; preds = %1660
  %1664 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4backEv(ptr noundef nonnull align 8 dereferenceable(32) %76) #13
  %1665 = load i8, ptr %1664, align 1, !tbaa !37
  %1666 = sext i8 %1665 to i32
  %1667 = icmp ne i32 %1666, 93
  br i1 %1667, label %1668, label %1692

1668:                                             ; preds = %1663
  call void @llvm.lifetime.start.p0(i64 32, ptr %125) #13
  %1669 = load i64, ptr %124, align 8, !tbaa !36
  %1670 = add i64 %1669, 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %125, ptr noundef nonnull align 8 dereferenceable(32) %76, i64 noundef %1670, i64 noundef -1)
          to label %1671 unwind label %1684

1671:                                             ; preds = %1668
  %1672 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef nonnull align 8 dereferenceable(32) %125) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %125) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %126) #13
  %1673 = load i64, ptr %124, align 8, !tbaa !36
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %126, ptr noundef nonnull align 8 dereferenceable(32) %76, i64 noundef 0, i64 noundef %1673)
          to label %1674 unwind label %1688

1674:                                             ; preds = %1671
  %1675 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull align 8 dereferenceable(32) %126) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %126) #13
  br label %1692

1676:                                             ; preds = %1657
  %1677 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1678 = extractvalue { ptr, i32 } %1677, 0
  store ptr %1678, ptr %8, align 8
  %1679 = extractvalue { ptr, i32 } %1677, 1
  store i32 %1679, ptr %9, align 4
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %123) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr %123) #13
  br label %2192

1680:                                             ; preds = %1658
  %1681 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1682 = extractvalue { ptr, i32 } %1681, 0
  store ptr %1682, ptr %8, align 8
  %1683 = extractvalue { ptr, i32 } %1681, 1
  store i32 %1683, ptr %9, align 4
  br label %2191

1684:                                             ; preds = %1668
  %1685 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1686 = extractvalue { ptr, i32 } %1685, 0
  store ptr %1686, ptr %8, align 8
  %1687 = extractvalue { ptr, i32 } %1685, 1
  store i32 %1687, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %125) #13
  br label %2191

1688:                                             ; preds = %1671
  %1689 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1690 = extractvalue { ptr, i32 } %1689, 0
  store ptr %1690, ptr %8, align 8
  %1691 = extractvalue { ptr, i32 } %1689, 1
  store i32 %1691, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 32, ptr %126) #13
  br label %2191

1692:                                             ; preds = %1674, %1663, %1660
  call void @llvm.lifetime.start.p0(i64 1, ptr %127) #13
  %1693 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %1694 unwind label %1721

1694:                                             ; preds = %1692
  %1695 = trunc i32 %1693 to i8
  store i8 %1695, ptr %127, align 1, !tbaa !37
  %1696 = load i8, ptr %127, align 1, !tbaa !37
  %1697 = sext i8 %1696 to i32
  %1698 = icmp ne i32 %1697, 10
  br i1 %1698, label %1699, label %1736

1699:                                             ; preds = %1694
  %1700 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1701 unwind label %1721

1701:                                             ; preds = %1699
  %1702 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %7, i64 noundef 0)
          to label %1703 unwind label %1721

1703:                                             ; preds = %1701
  %1704 = load i8, ptr %1702, align 1, !tbaa !37
  %1705 = sext i8 %1704 to i32
  %1706 = icmp eq i32 %1705, 91
  br i1 %1706, label %1707, label %1735

1707:                                             ; preds = %1703
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %128, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1708 unwind label %1721

1708:                                             ; preds = %1707
  invoke void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef %128, ptr noundef %75, ptr noundef null, ptr noundef null, ptr noundef null)
          to label %1709 unwind label %1725

1709:                                             ; preds = %1708
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %128) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %129, ptr noundef nonnull align 8 dereferenceable(32) %76)
          to label %1710 unwind label %1721

1710:                                             ; preds = %1709
  invoke void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef %129, ptr noundef %73, ptr noundef %74, ptr noundef %75, ptr noundef null)
          to label %1711 unwind label %1729

1711:                                             ; preds = %1710
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %129) #13
  %1712 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %1713 unwind label %1721

1713:                                             ; preds = %1711
  %1714 = trunc i32 %1712 to i8
  store i8 %1714, ptr %127, align 1, !tbaa !37
  %1715 = load i8, ptr %127, align 1, !tbaa !37
  %1716 = sext i8 %1715 to i32
  %1717 = icmp ne i32 %1716, 10
  br i1 %1717, label %1718, label %1733

1718:                                             ; preds = %1713
  %1719 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1720 unwind label %1721

1720:                                             ; preds = %1718
  br label %1734

1721:                                             ; preds = %1739, %1718, %1711, %1709, %1707, %1701, %1699, %1692
  %1722 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1723 = extractvalue { ptr, i32 } %1722, 0
  store ptr %1723, ptr %8, align 8
  %1724 = extractvalue { ptr, i32 } %1722, 1
  store i32 %1724, ptr %9, align 4
  br label %2190

1725:                                             ; preds = %1708
  %1726 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1727 = extractvalue { ptr, i32 } %1726, 0
  store ptr %1727, ptr %8, align 8
  %1728 = extractvalue { ptr, i32 } %1726, 1
  store i32 %1728, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %128) #13
  br label %2190

1729:                                             ; preds = %1710
  %1730 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1731 = extractvalue { ptr, i32 } %1730, 0
  store ptr %1731, ptr %8, align 8
  %1732 = extractvalue { ptr, i32 } %1730, 1
  store i32 %1732, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %129) #13
  br label %2190

1733:                                             ; preds = %1713
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  br label %1734

1734:                                             ; preds = %1733, %1720
  br label %1735

1735:                                             ; preds = %1734, %1703
  br label %1737

1736:                                             ; preds = %1694
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  br label %1737

1737:                                             ; preds = %1736, %1735
  %1738 = call noundef zeroext i1 @_ZNKSt6vectorIxSaIxEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24) %75) #13
  br i1 %1738, label %1739, label %1748

1739:                                             ; preds = %1737
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %130, ptr noundef nonnull align 8 dereferenceable(32) %76)
          to label %1740 unwind label %1721

1740:                                             ; preds = %1739
  %1741 = load ptr, ptr %5, align 8, !tbaa !5
  %1742 = getelementptr inbounds %"struct.clnet::Tensor", ptr %1741, i32 0, i32 1
  invoke void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef %130, ptr noundef %73, ptr noundef %74, ptr noundef %1742, ptr noundef %75)
          to label %1743 unwind label %1744

1743:                                             ; preds = %1740
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %130) #13
  br label %1748

1744:                                             ; preds = %1740
  %1745 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1746 = extractvalue { ptr, i32 } %1745, 0
  store ptr %1746, ptr %8, align 8
  %1747 = extractvalue { ptr, i32 } %1745, 1
  store i32 %1747, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %130) #13
  br label %2190

1748:                                             ; preds = %1743, %1737
  call void @llvm.lifetime.start.p0(i64 32, ptr %131) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr %132) #13
  %1749 = load i32, ptr %77, align 4, !tbaa !35
  call void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %132, i32 noundef %1749) #13
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %131, ptr noundef nonnull align 8 dereferenceable(32) %132, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %1750 unwind label %1763

1750:                                             ; preds = %1748
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %132) #13
  %1751 = call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  br i1 %1751, label %1752, label %1946

1752:                                             ; preds = %1750
  %1753 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.119)
          to label %1754 unwind label %1767

1754:                                             ; preds = %1752
  br i1 %1753, label %1755, label %1790

1755:                                             ; preds = %1754
  %1756 = load ptr, ptr %5, align 8, !tbaa !5
  %1757 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %133, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1758 unwind label %1767

1758:                                             ; preds = %1755
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %134, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1759 unwind label %1771

1759:                                             ; preds = %1758
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %135, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1760 unwind label %1775

1760:                                             ; preds = %1759
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %136, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1761 unwind label %1779

1761:                                             ; preds = %1760
  invoke void @_ZN5clnet19operate_tensor_dataIfEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1756, ptr noundef nonnull align 8 dereferenceable(296) %1757, ptr noundef %133, ptr noundef %134, ptr noundef %135, ptr noundef %136, float noundef 0.000000e+00)
          to label %1762 unwind label %1783

1762:                                             ; preds = %1761
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %136) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %135) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %134) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %133) #13
  br label %1945

1763:                                             ; preds = %1748
  %1764 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1765 = extractvalue { ptr, i32 } %1764, 0
  store ptr %1765, ptr %8, align 8
  %1766 = extractvalue { ptr, i32 } %1764, 1
  store i32 %1766, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %132) #13
  br label %2189

1767:                                             ; preds = %2181, %2179, %2136, %2098, %2060, %2022, %1984, %1946, %1913, %1910, %1883, %1880, %1853, %1850, %1823, %1820, %1793, %1790, %1755, %1752
  %1768 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1769 = extractvalue { ptr, i32 } %1768, 0
  store ptr %1769, ptr %8, align 8
  %1770 = extractvalue { ptr, i32 } %1768, 1
  store i32 %1770, ptr %9, align 4
  br label %2188

1771:                                             ; preds = %1758
  %1772 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1773 = extractvalue { ptr, i32 } %1772, 0
  store ptr %1773, ptr %8, align 8
  %1774 = extractvalue { ptr, i32 } %1772, 1
  store i32 %1774, ptr %9, align 4
  br label %1789

1775:                                             ; preds = %1759
  %1776 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1777 = extractvalue { ptr, i32 } %1776, 0
  store ptr %1777, ptr %8, align 8
  %1778 = extractvalue { ptr, i32 } %1776, 1
  store i32 %1778, ptr %9, align 4
  br label %1788

1779:                                             ; preds = %1760
  %1780 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1781 = extractvalue { ptr, i32 } %1780, 0
  store ptr %1781, ptr %8, align 8
  %1782 = extractvalue { ptr, i32 } %1780, 1
  store i32 %1782, ptr %9, align 4
  br label %1787

1783:                                             ; preds = %1761
  %1784 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1785 = extractvalue { ptr, i32 } %1784, 0
  store ptr %1785, ptr %8, align 8
  %1786 = extractvalue { ptr, i32 } %1784, 1
  store i32 %1786, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %136) #13
  br label %1787

1787:                                             ; preds = %1783, %1779
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %135) #13
  br label %1788

1788:                                             ; preds = %1787, %1775
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %134) #13
  br label %1789

1789:                                             ; preds = %1788, %1771
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %133) #13
  br label %2188

1790:                                             ; preds = %1754
  %1791 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.120)
          to label %1792 unwind label %1767

1792:                                             ; preds = %1790
  br i1 %1791, label %1793, label %1820

1793:                                             ; preds = %1792
  %1794 = load ptr, ptr %5, align 8, !tbaa !5
  %1795 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %137, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1796 unwind label %1767

1796:                                             ; preds = %1793
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %138, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1797 unwind label %1801

1797:                                             ; preds = %1796
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %139, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1798 unwind label %1805

1798:                                             ; preds = %1797
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %140, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1799 unwind label %1809

1799:                                             ; preds = %1798
  invoke void @_ZN5clnet19operate_tensor_dataIiEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1794, ptr noundef nonnull align 8 dereferenceable(296) %1795, ptr noundef %137, ptr noundef %138, ptr noundef %139, ptr noundef %140, i32 noundef 0)
          to label %1800 unwind label %1813

1800:                                             ; preds = %1799
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %140) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %139) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %138) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %137) #13
  br label %1944

1801:                                             ; preds = %1796
  %1802 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1803 = extractvalue { ptr, i32 } %1802, 0
  store ptr %1803, ptr %8, align 8
  %1804 = extractvalue { ptr, i32 } %1802, 1
  store i32 %1804, ptr %9, align 4
  br label %1819

1805:                                             ; preds = %1797
  %1806 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1807 = extractvalue { ptr, i32 } %1806, 0
  store ptr %1807, ptr %8, align 8
  %1808 = extractvalue { ptr, i32 } %1806, 1
  store i32 %1808, ptr %9, align 4
  br label %1818

1809:                                             ; preds = %1798
  %1810 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1811 = extractvalue { ptr, i32 } %1810, 0
  store ptr %1811, ptr %8, align 8
  %1812 = extractvalue { ptr, i32 } %1810, 1
  store i32 %1812, ptr %9, align 4
  br label %1817

1813:                                             ; preds = %1799
  %1814 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1815 = extractvalue { ptr, i32 } %1814, 0
  store ptr %1815, ptr %8, align 8
  %1816 = extractvalue { ptr, i32 } %1814, 1
  store i32 %1816, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %140) #13
  br label %1817

1817:                                             ; preds = %1813, %1809
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %139) #13
  br label %1818

1818:                                             ; preds = %1817, %1805
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %138) #13
  br label %1819

1819:                                             ; preds = %1818, %1801
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %137) #13
  br label %2188

1820:                                             ; preds = %1792
  %1821 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.121)
          to label %1822 unwind label %1767

1822:                                             ; preds = %1820
  br i1 %1821, label %1823, label %1850

1823:                                             ; preds = %1822
  %1824 = load ptr, ptr %5, align 8, !tbaa !5
  %1825 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %141, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1826 unwind label %1767

1826:                                             ; preds = %1823
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %142, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1827 unwind label %1831

1827:                                             ; preds = %1826
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %143, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1828 unwind label %1835

1828:                                             ; preds = %1827
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %144, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1829 unwind label %1839

1829:                                             ; preds = %1828
  invoke void @_ZN5clnet19operate_tensor_dataIcEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1824, ptr noundef nonnull align 8 dereferenceable(296) %1825, ptr noundef %141, ptr noundef %142, ptr noundef %143, ptr noundef %144, i8 noundef signext 0)
          to label %1830 unwind label %1843

1830:                                             ; preds = %1829
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %144) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %143) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %142) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %141) #13
  br label %1943

1831:                                             ; preds = %1826
  %1832 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1833 = extractvalue { ptr, i32 } %1832, 0
  store ptr %1833, ptr %8, align 8
  %1834 = extractvalue { ptr, i32 } %1832, 1
  store i32 %1834, ptr %9, align 4
  br label %1849

1835:                                             ; preds = %1827
  %1836 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1837 = extractvalue { ptr, i32 } %1836, 0
  store ptr %1837, ptr %8, align 8
  %1838 = extractvalue { ptr, i32 } %1836, 1
  store i32 %1838, ptr %9, align 4
  br label %1848

1839:                                             ; preds = %1828
  %1840 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1841 = extractvalue { ptr, i32 } %1840, 0
  store ptr %1841, ptr %8, align 8
  %1842 = extractvalue { ptr, i32 } %1840, 1
  store i32 %1842, ptr %9, align 4
  br label %1847

1843:                                             ; preds = %1829
  %1844 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1845 = extractvalue { ptr, i32 } %1844, 0
  store ptr %1845, ptr %8, align 8
  %1846 = extractvalue { ptr, i32 } %1844, 1
  store i32 %1846, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %144) #13
  br label %1847

1847:                                             ; preds = %1843, %1839
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %143) #13
  br label %1848

1848:                                             ; preds = %1847, %1835
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %142) #13
  br label %1849

1849:                                             ; preds = %1848, %1831
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %141) #13
  br label %2188

1850:                                             ; preds = %1822
  %1851 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.122)
          to label %1852 unwind label %1767

1852:                                             ; preds = %1850
  br i1 %1851, label %1853, label %1880

1853:                                             ; preds = %1852
  %1854 = load ptr, ptr %5, align 8, !tbaa !5
  %1855 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %145, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1856 unwind label %1767

1856:                                             ; preds = %1853
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %146, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1857 unwind label %1861

1857:                                             ; preds = %1856
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %147, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1858 unwind label %1865

1858:                                             ; preds = %1857
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %148, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1859 unwind label %1869

1859:                                             ; preds = %1858
  invoke void @_ZN5clnet19operate_tensor_dataIxEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1854, ptr noundef nonnull align 8 dereferenceable(296) %1855, ptr noundef %145, ptr noundef %146, ptr noundef %147, ptr noundef %148, i64 noundef 0)
          to label %1860 unwind label %1873

1860:                                             ; preds = %1859
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %148) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %147) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %146) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %145) #13
  br label %1942

1861:                                             ; preds = %1856
  %1862 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1863 = extractvalue { ptr, i32 } %1862, 0
  store ptr %1863, ptr %8, align 8
  %1864 = extractvalue { ptr, i32 } %1862, 1
  store i32 %1864, ptr %9, align 4
  br label %1879

1865:                                             ; preds = %1857
  %1866 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1867 = extractvalue { ptr, i32 } %1866, 0
  store ptr %1867, ptr %8, align 8
  %1868 = extractvalue { ptr, i32 } %1866, 1
  store i32 %1868, ptr %9, align 4
  br label %1878

1869:                                             ; preds = %1858
  %1870 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1871 = extractvalue { ptr, i32 } %1870, 0
  store ptr %1871, ptr %8, align 8
  %1872 = extractvalue { ptr, i32 } %1870, 1
  store i32 %1872, ptr %9, align 4
  br label %1877

1873:                                             ; preds = %1859
  %1874 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1875 = extractvalue { ptr, i32 } %1874, 0
  store ptr %1875, ptr %8, align 8
  %1876 = extractvalue { ptr, i32 } %1874, 1
  store i32 %1876, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %148) #13
  br label %1877

1877:                                             ; preds = %1873, %1869
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %147) #13
  br label %1878

1878:                                             ; preds = %1877, %1865
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %146) #13
  br label %1879

1879:                                             ; preds = %1878, %1861
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %145) #13
  br label %2188

1880:                                             ; preds = %1852
  %1881 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.123)
          to label %1882 unwind label %1767

1882:                                             ; preds = %1880
  br i1 %1881, label %1883, label %1910

1883:                                             ; preds = %1882
  %1884 = load ptr, ptr %5, align 8, !tbaa !5
  %1885 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %149, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1886 unwind label %1767

1886:                                             ; preds = %1883
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %150, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1887 unwind label %1891

1887:                                             ; preds = %1886
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %151, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1888 unwind label %1895

1888:                                             ; preds = %1887
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %152, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1889 unwind label %1899

1889:                                             ; preds = %1888
  invoke void @_ZN5clnet19operate_tensor_dataIsEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1884, ptr noundef nonnull align 8 dereferenceable(296) %1885, ptr noundef %149, ptr noundef %150, ptr noundef %151, ptr noundef %152, i16 noundef signext 0)
          to label %1890 unwind label %1903

1890:                                             ; preds = %1889
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %152) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %151) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %150) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %149) #13
  br label %1941

1891:                                             ; preds = %1886
  %1892 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1893 = extractvalue { ptr, i32 } %1892, 0
  store ptr %1893, ptr %8, align 8
  %1894 = extractvalue { ptr, i32 } %1892, 1
  store i32 %1894, ptr %9, align 4
  br label %1909

1895:                                             ; preds = %1887
  %1896 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1897 = extractvalue { ptr, i32 } %1896, 0
  store ptr %1897, ptr %8, align 8
  %1898 = extractvalue { ptr, i32 } %1896, 1
  store i32 %1898, ptr %9, align 4
  br label %1908

1899:                                             ; preds = %1888
  %1900 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1901 = extractvalue { ptr, i32 } %1900, 0
  store ptr %1901, ptr %8, align 8
  %1902 = extractvalue { ptr, i32 } %1900, 1
  store i32 %1902, ptr %9, align 4
  br label %1907

1903:                                             ; preds = %1889
  %1904 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1905 = extractvalue { ptr, i32 } %1904, 0
  store ptr %1905, ptr %8, align 8
  %1906 = extractvalue { ptr, i32 } %1904, 1
  store i32 %1906, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %152) #13
  br label %1907

1907:                                             ; preds = %1903, %1899
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %151) #13
  br label %1908

1908:                                             ; preds = %1907, %1895
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %150) #13
  br label %1909

1909:                                             ; preds = %1908, %1891
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %149) #13
  br label %2188

1910:                                             ; preds = %1882
  %1911 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.124)
          to label %1912 unwind label %1767

1912:                                             ; preds = %1910
  br i1 %1911, label %1913, label %1940

1913:                                             ; preds = %1912
  %1914 = load ptr, ptr %5, align 8, !tbaa !5
  %1915 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %153, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1916 unwind label %1767

1916:                                             ; preds = %1913
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %154, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1917 unwind label %1921

1917:                                             ; preds = %1916
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %155, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1918 unwind label %1925

1918:                                             ; preds = %1917
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %156, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1919 unwind label %1929

1919:                                             ; preds = %1918
  invoke void @_ZN5clnet19operate_tensor_dataIdEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1914, ptr noundef nonnull align 8 dereferenceable(296) %1915, ptr noundef %153, ptr noundef %154, ptr noundef %155, ptr noundef %156, double noundef 0.000000e+00)
          to label %1920 unwind label %1933

1920:                                             ; preds = %1919
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %156) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %154) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %153) #13
  br label %1940

1921:                                             ; preds = %1916
  %1922 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1923 = extractvalue { ptr, i32 } %1922, 0
  store ptr %1923, ptr %8, align 8
  %1924 = extractvalue { ptr, i32 } %1922, 1
  store i32 %1924, ptr %9, align 4
  br label %1939

1925:                                             ; preds = %1917
  %1926 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1927 = extractvalue { ptr, i32 } %1926, 0
  store ptr %1927, ptr %8, align 8
  %1928 = extractvalue { ptr, i32 } %1926, 1
  store i32 %1928, ptr %9, align 4
  br label %1938

1929:                                             ; preds = %1918
  %1930 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1931 = extractvalue { ptr, i32 } %1930, 0
  store ptr %1931, ptr %8, align 8
  %1932 = extractvalue { ptr, i32 } %1930, 1
  store i32 %1932, ptr %9, align 4
  br label %1937

1933:                                             ; preds = %1919
  %1934 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1935 = extractvalue { ptr, i32 } %1934, 0
  store ptr %1935, ptr %8, align 8
  %1936 = extractvalue { ptr, i32 } %1934, 1
  store i32 %1936, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %156) #13
  br label %1937

1937:                                             ; preds = %1933, %1929
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #13
  br label %1938

1938:                                             ; preds = %1937, %1925
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %154) #13
  br label %1939

1939:                                             ; preds = %1938, %1921
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %153) #13
  br label %2188

1940:                                             ; preds = %1920, %1912
  br label %1941

1941:                                             ; preds = %1940, %1890
  br label %1942

1942:                                             ; preds = %1941, %1860
  br label %1943

1943:                                             ; preds = %1942, %1830
  br label %1944

1944:                                             ; preds = %1943, %1800
  br label %1945

1945:                                             ; preds = %1944, %1762
  br label %2184

1946:                                             ; preds = %1750
  %1947 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.119)
          to label %1948 unwind label %1767

1948:                                             ; preds = %1946
  br i1 %1947, label %1949, label %1984

1949:                                             ; preds = %1948
  call void @llvm.lifetime.start.p0(i64 4, ptr %157) #13
  %1950 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %157)
          to label %1951 unwind label %1960

1951:                                             ; preds = %1949
  %1952 = load ptr, ptr %5, align 8, !tbaa !5
  %1953 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %158, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1954 unwind label %1960

1954:                                             ; preds = %1951
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %159, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1955 unwind label %1964

1955:                                             ; preds = %1954
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %160, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1956 unwind label %1968

1956:                                             ; preds = %1955
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %161, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1957 unwind label %1972

1957:                                             ; preds = %1956
  %1958 = load float, ptr %157, align 4, !tbaa !50
  invoke void @_ZN5clnet19operate_tensor_dataIfEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1952, ptr noundef nonnull align 8 dereferenceable(296) %1953, ptr noundef %158, ptr noundef %159, ptr noundef %160, ptr noundef %161, float noundef %1958)
          to label %1959 unwind label %1976

1959:                                             ; preds = %1957
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %161) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %160) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %158) #13
  call void @llvm.lifetime.end.p0(i64 4, ptr %157) #13
  br label %2179

1960:                                             ; preds = %1951, %1949
  %1961 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1962 = extractvalue { ptr, i32 } %1961, 0
  store ptr %1962, ptr %8, align 8
  %1963 = extractvalue { ptr, i32 } %1961, 1
  store i32 %1963, ptr %9, align 4
  br label %1983

1964:                                             ; preds = %1954
  %1965 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1966 = extractvalue { ptr, i32 } %1965, 0
  store ptr %1966, ptr %8, align 8
  %1967 = extractvalue { ptr, i32 } %1965, 1
  store i32 %1967, ptr %9, align 4
  br label %1982

1968:                                             ; preds = %1955
  %1969 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1970 = extractvalue { ptr, i32 } %1969, 0
  store ptr %1970, ptr %8, align 8
  %1971 = extractvalue { ptr, i32 } %1969, 1
  store i32 %1971, ptr %9, align 4
  br label %1981

1972:                                             ; preds = %1956
  %1973 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1974 = extractvalue { ptr, i32 } %1973, 0
  store ptr %1974, ptr %8, align 8
  %1975 = extractvalue { ptr, i32 } %1973, 1
  store i32 %1975, ptr %9, align 4
  br label %1980

1976:                                             ; preds = %1957
  %1977 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %1978 = extractvalue { ptr, i32 } %1977, 0
  store ptr %1978, ptr %8, align 8
  %1979 = extractvalue { ptr, i32 } %1977, 1
  store i32 %1979, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %161) #13
  br label %1980

1980:                                             ; preds = %1976, %1972
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %160) #13
  br label %1981

1981:                                             ; preds = %1980, %1968
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #13
  br label %1982

1982:                                             ; preds = %1981, %1964
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %158) #13
  br label %1983

1983:                                             ; preds = %1982, %1960
  call void @llvm.lifetime.end.p0(i64 4, ptr %157) #13
  br label %2188

1984:                                             ; preds = %1948
  %1985 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.120)
          to label %1986 unwind label %1767

1986:                                             ; preds = %1984
  br i1 %1985, label %1987, label %2022

1987:                                             ; preds = %1986
  call void @llvm.lifetime.start.p0(i64 4, ptr %162) #13
  %1988 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERi(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %162)
          to label %1989 unwind label %1998

1989:                                             ; preds = %1987
  %1990 = load ptr, ptr %5, align 8, !tbaa !5
  %1991 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %163, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %1992 unwind label %1998

1992:                                             ; preds = %1989
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %164, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %1993 unwind label %2002

1993:                                             ; preds = %1992
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %165, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1994 unwind label %2006

1994:                                             ; preds = %1993
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %166, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %1995 unwind label %2010

1995:                                             ; preds = %1994
  %1996 = load i32, ptr %162, align 4, !tbaa !35
  invoke void @_ZN5clnet19operate_tensor_dataIiEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %1990, ptr noundef nonnull align 8 dereferenceable(296) %1991, ptr noundef %163, ptr noundef %164, ptr noundef %165, ptr noundef %166, i32 noundef %1996)
          to label %1997 unwind label %2014

1997:                                             ; preds = %1995
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %166) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %165) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #13
  call void @llvm.lifetime.end.p0(i64 4, ptr %162) #13
  br label %2178

1998:                                             ; preds = %1989, %1987
  %1999 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2000 = extractvalue { ptr, i32 } %1999, 0
  store ptr %2000, ptr %8, align 8
  %2001 = extractvalue { ptr, i32 } %1999, 1
  store i32 %2001, ptr %9, align 4
  br label %2021

2002:                                             ; preds = %1992
  %2003 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2004 = extractvalue { ptr, i32 } %2003, 0
  store ptr %2004, ptr %8, align 8
  %2005 = extractvalue { ptr, i32 } %2003, 1
  store i32 %2005, ptr %9, align 4
  br label %2020

2006:                                             ; preds = %1993
  %2007 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2008 = extractvalue { ptr, i32 } %2007, 0
  store ptr %2008, ptr %8, align 8
  %2009 = extractvalue { ptr, i32 } %2007, 1
  store i32 %2009, ptr %9, align 4
  br label %2019

2010:                                             ; preds = %1994
  %2011 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2012 = extractvalue { ptr, i32 } %2011, 0
  store ptr %2012, ptr %8, align 8
  %2013 = extractvalue { ptr, i32 } %2011, 1
  store i32 %2013, ptr %9, align 4
  br label %2018

2014:                                             ; preds = %1995
  %2015 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2016 = extractvalue { ptr, i32 } %2015, 0
  store ptr %2016, ptr %8, align 8
  %2017 = extractvalue { ptr, i32 } %2015, 1
  store i32 %2017, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %166) #13
  br label %2018

2018:                                             ; preds = %2014, %2010
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %165) #13
  br label %2019

2019:                                             ; preds = %2018, %2006
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #13
  br label %2020

2020:                                             ; preds = %2019, %2002
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #13
  br label %2021

2021:                                             ; preds = %2020, %1998
  call void @llvm.lifetime.end.p0(i64 4, ptr %162) #13
  br label %2188

2022:                                             ; preds = %1986
  %2023 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.121)
          to label %2024 unwind label %1767

2024:                                             ; preds = %2022
  br i1 %2023, label %2025, label %2060

2025:                                             ; preds = %2024
  call void @llvm.lifetime.start.p0(i64 1, ptr %167) #13
  %2026 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_RS3_(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 1 dereferenceable(1) %167)
          to label %2027 unwind label %2036

2027:                                             ; preds = %2025
  %2028 = load ptr, ptr %5, align 8, !tbaa !5
  %2029 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %168, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %2030 unwind label %2036

2030:                                             ; preds = %2027
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %169, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %2031 unwind label %2040

2031:                                             ; preds = %2030
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %170, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %2032 unwind label %2044

2032:                                             ; preds = %2031
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %171, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %2033 unwind label %2048

2033:                                             ; preds = %2032
  %2034 = load i8, ptr %167, align 1, !tbaa !37
  invoke void @_ZN5clnet19operate_tensor_dataIcEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %2028, ptr noundef nonnull align 8 dereferenceable(296) %2029, ptr noundef %168, ptr noundef %169, ptr noundef %170, ptr noundef %171, i8 noundef signext %2034)
          to label %2035 unwind label %2052

2035:                                             ; preds = %2033
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %171) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %170) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %169) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %168) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr %167) #13
  br label %2177

2036:                                             ; preds = %2027, %2025
  %2037 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2038 = extractvalue { ptr, i32 } %2037, 0
  store ptr %2038, ptr %8, align 8
  %2039 = extractvalue { ptr, i32 } %2037, 1
  store i32 %2039, ptr %9, align 4
  br label %2059

2040:                                             ; preds = %2030
  %2041 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2042 = extractvalue { ptr, i32 } %2041, 0
  store ptr %2042, ptr %8, align 8
  %2043 = extractvalue { ptr, i32 } %2041, 1
  store i32 %2043, ptr %9, align 4
  br label %2058

2044:                                             ; preds = %2031
  %2045 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2046 = extractvalue { ptr, i32 } %2045, 0
  store ptr %2046, ptr %8, align 8
  %2047 = extractvalue { ptr, i32 } %2045, 1
  store i32 %2047, ptr %9, align 4
  br label %2057

2048:                                             ; preds = %2032
  %2049 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2050 = extractvalue { ptr, i32 } %2049, 0
  store ptr %2050, ptr %8, align 8
  %2051 = extractvalue { ptr, i32 } %2049, 1
  store i32 %2051, ptr %9, align 4
  br label %2056

2052:                                             ; preds = %2033
  %2053 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2054 = extractvalue { ptr, i32 } %2053, 0
  store ptr %2054, ptr %8, align 8
  %2055 = extractvalue { ptr, i32 } %2053, 1
  store i32 %2055, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %171) #13
  br label %2056

2056:                                             ; preds = %2052, %2048
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %170) #13
  br label %2057

2057:                                             ; preds = %2056, %2044
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %169) #13
  br label %2058

2058:                                             ; preds = %2057, %2040
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %168) #13
  br label %2059

2059:                                             ; preds = %2058, %2036
  call void @llvm.lifetime.end.p0(i64 1, ptr %167) #13
  br label %2188

2060:                                             ; preds = %2024
  %2061 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.122)
          to label %2062 unwind label %1767

2062:                                             ; preds = %2060
  br i1 %2061, label %2063, label %2098

2063:                                             ; preds = %2062
  call void @llvm.lifetime.start.p0(i64 8, ptr %172) #13
  %2064 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERx(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(8) %172)
          to label %2065 unwind label %2074

2065:                                             ; preds = %2063
  %2066 = load ptr, ptr %5, align 8, !tbaa !5
  %2067 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %173, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %2068 unwind label %2074

2068:                                             ; preds = %2065
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %174, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %2069 unwind label %2078

2069:                                             ; preds = %2068
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %175, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %2070 unwind label %2082

2070:                                             ; preds = %2069
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %176, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %2071 unwind label %2086

2071:                                             ; preds = %2070
  %2072 = load i64, ptr %172, align 8, !tbaa !38
  invoke void @_ZN5clnet19operate_tensor_dataIxEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %2066, ptr noundef nonnull align 8 dereferenceable(296) %2067, ptr noundef %173, ptr noundef %174, ptr noundef %175, ptr noundef %176, i64 noundef %2072)
          to label %2073 unwind label %2090

2073:                                             ; preds = %2071
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %176) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %174) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %173) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %172) #13
  br label %2176

2074:                                             ; preds = %2065, %2063
  %2075 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2076 = extractvalue { ptr, i32 } %2075, 0
  store ptr %2076, ptr %8, align 8
  %2077 = extractvalue { ptr, i32 } %2075, 1
  store i32 %2077, ptr %9, align 4
  br label %2097

2078:                                             ; preds = %2068
  %2079 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2080 = extractvalue { ptr, i32 } %2079, 0
  store ptr %2080, ptr %8, align 8
  %2081 = extractvalue { ptr, i32 } %2079, 1
  store i32 %2081, ptr %9, align 4
  br label %2096

2082:                                             ; preds = %2069
  %2083 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2084 = extractvalue { ptr, i32 } %2083, 0
  store ptr %2084, ptr %8, align 8
  %2085 = extractvalue { ptr, i32 } %2083, 1
  store i32 %2085, ptr %9, align 4
  br label %2095

2086:                                             ; preds = %2070
  %2087 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2088 = extractvalue { ptr, i32 } %2087, 0
  store ptr %2088, ptr %8, align 8
  %2089 = extractvalue { ptr, i32 } %2087, 1
  store i32 %2089, ptr %9, align 4
  br label %2094

2090:                                             ; preds = %2071
  %2091 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2092 = extractvalue { ptr, i32 } %2091, 0
  store ptr %2092, ptr %8, align 8
  %2093 = extractvalue { ptr, i32 } %2091, 1
  store i32 %2093, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %176) #13
  br label %2094

2094:                                             ; preds = %2090, %2086
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #13
  br label %2095

2095:                                             ; preds = %2094, %2082
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %174) #13
  br label %2096

2096:                                             ; preds = %2095, %2078
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %173) #13
  br label %2097

2097:                                             ; preds = %2096, %2074
  call void @llvm.lifetime.end.p0(i64 8, ptr %172) #13
  br label %2188

2098:                                             ; preds = %2062
  %2099 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.123)
          to label %2100 unwind label %1767

2100:                                             ; preds = %2098
  br i1 %2099, label %2101, label %2136

2101:                                             ; preds = %2100
  call void @llvm.lifetime.start.p0(i64 2, ptr %177) #13
  %2102 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERs(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 2 dereferenceable(2) %177)
          to label %2103 unwind label %2112

2103:                                             ; preds = %2101
  %2104 = load ptr, ptr %5, align 8, !tbaa !5
  %2105 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %178, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %2106 unwind label %2112

2106:                                             ; preds = %2103
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %179, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %2107 unwind label %2116

2107:                                             ; preds = %2106
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %180, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %2108 unwind label %2120

2108:                                             ; preds = %2107
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %181, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %2109 unwind label %2124

2109:                                             ; preds = %2108
  %2110 = load i16, ptr %177, align 2, !tbaa !51
  invoke void @_ZN5clnet19operate_tensor_dataIsEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %2104, ptr noundef nonnull align 8 dereferenceable(296) %2105, ptr noundef %178, ptr noundef %179, ptr noundef %180, ptr noundef %181, i16 noundef signext %2110)
          to label %2111 unwind label %2128

2111:                                             ; preds = %2109
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %181) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %180) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %178) #13
  call void @llvm.lifetime.end.p0(i64 2, ptr %177) #13
  br label %2175

2112:                                             ; preds = %2103, %2101
  %2113 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2114 = extractvalue { ptr, i32 } %2113, 0
  store ptr %2114, ptr %8, align 8
  %2115 = extractvalue { ptr, i32 } %2113, 1
  store i32 %2115, ptr %9, align 4
  br label %2135

2116:                                             ; preds = %2106
  %2117 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2118 = extractvalue { ptr, i32 } %2117, 0
  store ptr %2118, ptr %8, align 8
  %2119 = extractvalue { ptr, i32 } %2117, 1
  store i32 %2119, ptr %9, align 4
  br label %2134

2120:                                             ; preds = %2107
  %2121 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2122 = extractvalue { ptr, i32 } %2121, 0
  store ptr %2122, ptr %8, align 8
  %2123 = extractvalue { ptr, i32 } %2121, 1
  store i32 %2123, ptr %9, align 4
  br label %2133

2124:                                             ; preds = %2108
  %2125 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2126 = extractvalue { ptr, i32 } %2125, 0
  store ptr %2126, ptr %8, align 8
  %2127 = extractvalue { ptr, i32 } %2125, 1
  store i32 %2127, ptr %9, align 4
  br label %2132

2128:                                             ; preds = %2109
  %2129 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2130 = extractvalue { ptr, i32 } %2129, 0
  store ptr %2130, ptr %8, align 8
  %2131 = extractvalue { ptr, i32 } %2129, 1
  store i32 %2131, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %181) #13
  br label %2132

2132:                                             ; preds = %2128, %2124
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %180) #13
  br label %2133

2133:                                             ; preds = %2132, %2120
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #13
  br label %2134

2134:                                             ; preds = %2133, %2116
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %178) #13
  br label %2135

2135:                                             ; preds = %2134, %2112
  call void @llvm.lifetime.end.p0(i64 2, ptr %177) #13
  br label %2188

2136:                                             ; preds = %2100
  %2137 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str.124)
          to label %2138 unwind label %1767

2138:                                             ; preds = %2136
  br i1 %2137, label %2139, label %2174

2139:                                             ; preds = %2138
  call void @llvm.lifetime.start.p0(i64 8, ptr %182) #13
  %2140 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERd(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(8) %182)
          to label %2141 unwind label %2150

2141:                                             ; preds = %2139
  %2142 = load ptr, ptr %5, align 8, !tbaa !5
  %2143 = load ptr, ptr %3, align 8, !tbaa !5
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %183, ptr noundef nonnull align 8 dereferenceable(24) %73)
          to label %2144 unwind label %2150

2144:                                             ; preds = %2141
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %184, ptr noundef nonnull align 8 dereferenceable(24) %74)
          to label %2145 unwind label %2154

2145:                                             ; preds = %2144
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %185, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %2146 unwind label %2158

2146:                                             ; preds = %2145
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %186, ptr noundef nonnull align 8 dereferenceable(32) %131)
          to label %2147 unwind label %2162

2147:                                             ; preds = %2146
  %2148 = load double, ptr %182, align 8, !tbaa !53
  invoke void @_ZN5clnet19operate_tensor_dataIdEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %2142, ptr noundef nonnull align 8 dereferenceable(296) %2143, ptr noundef %183, ptr noundef %184, ptr noundef %185, ptr noundef %186, double noundef %2148)
          to label %2149 unwind label %2166

2149:                                             ; preds = %2147
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %186) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %185) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %184) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %182) #13
  br label %2174

2150:                                             ; preds = %2141, %2139
  %2151 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2152 = extractvalue { ptr, i32 } %2151, 0
  store ptr %2152, ptr %8, align 8
  %2153 = extractvalue { ptr, i32 } %2151, 1
  store i32 %2153, ptr %9, align 4
  br label %2173

2154:                                             ; preds = %2144
  %2155 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2156 = extractvalue { ptr, i32 } %2155, 0
  store ptr %2156, ptr %8, align 8
  %2157 = extractvalue { ptr, i32 } %2155, 1
  store i32 %2157, ptr %9, align 4
  br label %2172

2158:                                             ; preds = %2145
  %2159 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2160 = extractvalue { ptr, i32 } %2159, 0
  store ptr %2160, ptr %8, align 8
  %2161 = extractvalue { ptr, i32 } %2159, 1
  store i32 %2161, ptr %9, align 4
  br label %2171

2162:                                             ; preds = %2146
  %2163 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2164 = extractvalue { ptr, i32 } %2163, 0
  store ptr %2164, ptr %8, align 8
  %2165 = extractvalue { ptr, i32 } %2163, 1
  store i32 %2165, ptr %9, align 4
  br label %2170

2166:                                             ; preds = %2147
  %2167 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  %2168 = extractvalue { ptr, i32 } %2167, 0
  store ptr %2168, ptr %8, align 8
  %2169 = extractvalue { ptr, i32 } %2167, 1
  store i32 %2169, ptr %9, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %186) #13
  br label %2170

2170:                                             ; preds = %2166, %2162
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %185) #13
  br label %2171

2171:                                             ; preds = %2170, %2158
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %184) #13
  br label %2172

2172:                                             ; preds = %2171, %2154
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #13
  br label %2173

2173:                                             ; preds = %2172, %2150
  call void @llvm.lifetime.end.p0(i64 8, ptr %182) #13
  br label %2188

2174:                                             ; preds = %2149, %2138
  br label %2175

2175:                                             ; preds = %2174, %2111
  br label %2176

2176:                                             ; preds = %2175, %2073
  br label %2177

2177:                                             ; preds = %2176, %2035
  br label %2178

2178:                                             ; preds = %2177, %1997
  br label %2179

2179:                                             ; preds = %2178, %1959
  %2180 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA9_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(9) @.str.125)
          to label %2181 unwind label %1767

2181:                                             ; preds = %2179
  %2182 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %2180, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %2183 unwind label %1767

2183:                                             ; preds = %2181
  br label %2184

2184:                                             ; preds = %2183, %1945
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %131) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %131) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr %127) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %124) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %122) #13
  store i32 0, ptr %78, align 4
  br label %2185

2185:                                             ; preds = %2184, %1645, %1018
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %76) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %75) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %74) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %74) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %73) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %73) #13
  %2186 = load i32, ptr %78, align 4
  switch i32 %2186, label %2284 [
    i32 0, label %2187
    i32 3, label %2274
    i32 2, label %194
  ]

2187:                                             ; preds = %2185
  br label %2232

2188:                                             ; preds = %2173, %2135, %2097, %2059, %2021, %1983, %1939, %1909, %1879, %1849, %1819, %1789, %1767
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %131) #13
  br label %2189

2189:                                             ; preds = %2188, %1763
  call void @llvm.lifetime.end.p0(i64 32, ptr %131) #13
  br label %2190

2190:                                             ; preds = %2189, %1744, %1729, %1725, %1721
  call void @llvm.lifetime.end.p0(i64 1, ptr %127) #13
  br label %2191

2191:                                             ; preds = %2190, %1688, %1684, %1680
  call void @llvm.lifetime.end.p0(i64 8, ptr %124) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #13
  br label %2192

2192:                                             ; preds = %2191, %1676
  call void @llvm.lifetime.end.p0(i64 32, ptr %122) #13
  br label %2193

2193:                                             ; preds = %2192, %1648, %1041, %1037
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %76) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %75) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %74) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %74) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %73) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr %73) #13
  br label %2194

2194:                                             ; preds = %2193, %950, %765, %570, %540, %340, %314, %265, %214
  %2195 = load i32, ptr %9, align 4
  %2196 = call i32 @llvm.eh.typeid.for.p0(ptr @_ZTISt16invalid_argument) #13
  %2197 = icmp eq i32 %2195, %2196
  br i1 %2197, label %2198, label %2214

2198:                                             ; preds = %2194
  call void @llvm.lifetime.start.p0(i64 8, ptr %189) #13
  %2199 = load ptr, ptr %8, align 8
  %2200 = call ptr @__cxa_begin_catch(ptr %2199) #13
  store ptr %2200, ptr %189, align 8
  %2201 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA32_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(32) @.str.127)
          to label %2202 unwind label %2259

2202:                                             ; preds = %2198
  call void @llvm.lifetime.start.p0(i64 8, ptr %190) #13
  %2203 = load ptr, ptr %189, align 8, !tbaa !5
  %2204 = load ptr, ptr %2203, align 8, !tbaa !42
  %2205 = getelementptr inbounds ptr, ptr %2204, i64 2
  %2206 = load ptr, ptr %2205, align 8
  %2207 = call noundef ptr %2206(ptr noundef nonnull align 8 dereferenceable(16) %2203) #13
  store ptr %2207, ptr %190, align 8, !tbaa !5
  %2208 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %2201, ptr noundef nonnull align 8 dereferenceable(8) %190)
          to label %2209 unwind label %2263

2209:                                             ; preds = %2202
  %2210 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %2208, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %2211 unwind label %2263

2211:                                             ; preds = %2209
  call void @llvm.lifetime.end.p0(i64 8, ptr %190) #13
  invoke void @__cxa_end_catch()
          to label %2212 unwind label %2267

2212:                                             ; preds = %2211
  call void @llvm.lifetime.end.p0(i64 8, ptr %189) #13
  br label %2213

2213:                                             ; preds = %2243, %2231, %2212
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  br label %194, !llvm.loop !55

2214:                                             ; preds = %2194
  %2215 = call i32 @llvm.eh.typeid.for.p0(ptr @_ZTISt13runtime_error) #13
  %2216 = icmp eq i32 %2195, %2215
  br i1 %2216, label %2217, label %2275

2217:                                             ; preds = %2214
  call void @llvm.lifetime.start.p0(i64 8, ptr %187) #13
  %2218 = load ptr, ptr %8, align 8
  %2219 = call ptr @__cxa_begin_catch(ptr %2218) #13
  store ptr %2219, ptr %187, align 8
  %2220 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA19_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(19) @.str.126)
          to label %2221 unwind label %2244

2221:                                             ; preds = %2217
  call void @llvm.lifetime.start.p0(i64 8, ptr %188) #13
  %2222 = load ptr, ptr %187, align 8, !tbaa !5
  %2223 = load ptr, ptr %2222, align 8, !tbaa !42
  %2224 = getelementptr inbounds ptr, ptr %2223, i64 2
  %2225 = load ptr, ptr %2224, align 8
  %2226 = call noundef ptr %2225(ptr noundef nonnull align 8 dereferenceable(16) %2222) #13
  store ptr %2226, ptr %188, align 8, !tbaa !5
  %2227 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %2220, ptr noundef nonnull align 8 dereferenceable(8) %188)
          to label %2228 unwind label %2248

2228:                                             ; preds = %2221
  %2229 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %2227, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %2230 unwind label %2248

2230:                                             ; preds = %2228
  call void @llvm.lifetime.end.p0(i64 8, ptr %188) #13
  invoke void @__cxa_end_catch()
          to label %2231 unwind label %2252

2231:                                             ; preds = %2230
  call void @llvm.lifetime.end.p0(i64 8, ptr %187) #13
  br label %2213

2232:                                             ; preds = %2187, %1015
  br label %2233

2233:                                             ; preds = %2232
  br label %2234

2234:                                             ; preds = %2233, %958
  br label %2235

2235:                                             ; preds = %2234, %948
  br label %2236

2236:                                             ; preds = %2235, %763
  br label %2237

2237:                                             ; preds = %2236, %561
  br label %2238

2238:                                             ; preds = %2237, %539
  br label %2239

2239:                                             ; preds = %2238, %331
  br label %2240

2240:                                             ; preds = %2239, %313
  br label %2241

2241:                                             ; preds = %2240, %293
  br label %2242

2242:                                             ; preds = %2241, %272
  br label %2243

2243:                                             ; preds = %2242, %264
  br label %2213

2244:                                             ; preds = %2217
  %2245 = landingpad { ptr, i32 }
          cleanup
  %2246 = extractvalue { ptr, i32 } %2245, 0
  store ptr %2246, ptr %8, align 8
  %2247 = extractvalue { ptr, i32 } %2245, 1
  store i32 %2247, ptr %9, align 4
  br label %2256

2248:                                             ; preds = %2228, %2221
  %2249 = landingpad { ptr, i32 }
          cleanup
  %2250 = extractvalue { ptr, i32 } %2249, 0
  store ptr %2250, ptr %8, align 8
  %2251 = extractvalue { ptr, i32 } %2249, 1
  store i32 %2251, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %188) #13
  br label %2256

2252:                                             ; preds = %2230
  %2253 = landingpad { ptr, i32 }
          cleanup
  %2254 = extractvalue { ptr, i32 } %2253, 0
  store ptr %2254, ptr %8, align 8
  %2255 = extractvalue { ptr, i32 } %2253, 1
  store i32 %2255, ptr %9, align 4
  br label %2258

2256:                                             ; preds = %2248, %2244
  invoke void @__cxa_end_catch()
          to label %2257 unwind label %2281

2257:                                             ; preds = %2256
  br label %2258

2258:                                             ; preds = %2257, %2252
  call void @llvm.lifetime.end.p0(i64 8, ptr %187) #13
  br label %2275

2259:                                             ; preds = %2198
  %2260 = landingpad { ptr, i32 }
          cleanup
  %2261 = extractvalue { ptr, i32 } %2260, 0
  store ptr %2261, ptr %8, align 8
  %2262 = extractvalue { ptr, i32 } %2260, 1
  store i32 %2262, ptr %9, align 4
  br label %2271

2263:                                             ; preds = %2209, %2202
  %2264 = landingpad { ptr, i32 }
          cleanup
  %2265 = extractvalue { ptr, i32 } %2264, 0
  store ptr %2265, ptr %8, align 8
  %2266 = extractvalue { ptr, i32 } %2264, 1
  store i32 %2266, ptr %9, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %190) #13
  br label %2271

2267:                                             ; preds = %2211
  %2268 = landingpad { ptr, i32 }
          cleanup
  %2269 = extractvalue { ptr, i32 } %2268, 0
  store ptr %2269, ptr %8, align 8
  %2270 = extractvalue { ptr, i32 } %2268, 1
  store i32 %2270, ptr %9, align 4
  br label %2273

2271:                                             ; preds = %2263, %2259
  invoke void @__cxa_end_catch()
          to label %2272 unwind label %2281

2272:                                             ; preds = %2271
  br label %2273

2273:                                             ; preds = %2272, %2267
  call void @llvm.lifetime.end.p0(i64 8, ptr %189) #13
  br label %2275

2274:                                             ; preds = %2185
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %7) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %6) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #13
  ret void

2275:                                             ; preds = %2273, %2258, %2214
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %7) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr %6) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #13
  br label %2276

2276:                                             ; preds = %2275
  %2277 = load ptr, ptr %8, align 8
  %2278 = load i32, ptr %9, align 4
  %2279 = insertvalue { ptr, i32 } poison, ptr %2277, 0
  %2280 = insertvalue { ptr, i32 } %2279, i32 %2278, 1
  resume { ptr, i32 } %2280

2281:                                             ; preds = %2271, %2256
  %2282 = landingpad { ptr, i32 }
          catch ptr null
  %2283 = extractvalue { ptr, i32 } %2282, 0
  call void @__clang_call_terminate(ptr %2283) #14
  unreachable

2284:                                             ; preds = %2185, %1502, %1378, %1252, %1126
  unreachable
}

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA35_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(35)) #2 align 2

declare noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16)) #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA31_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(31)) #2 align 2

; Function Attrs: inlinehint mustprogress nounwind willreturn memory(read) uwtable
declare i32 @atoi(ptr noundef nonnull) #7

; Function Attrs: mustprogress nounwind uwtable
declare noundef ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4dataEv(ptr noundef nonnull align 8 dereferenceable(32)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA38_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(38)) #2 align 2

; Function Attrs: nounwind
declare void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48)) #6

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA32_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(32)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA27_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(27)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 8 dereferenceable(8)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA25_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(25)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5clearEv(ptr noundef nonnull align 8 dereferenceable(56)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA36_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(36)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5beginEv(ptr noundef nonnull align 8 dereferenceable(56)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPN5clnet6TensorEmELb0EEES9_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #0

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(16) ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) #0 align 2

; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #8

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEppEv(ptr noundef nonnull align 8 dereferenceable(8)) #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS4_SaIS4_EEEEZNS2_15debugger_threadERNS2_14DeviceInstanceERS3_E3$_0EvT_SE_T0_"(ptr, ptr) #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56), ptr noundef nonnull align 8 dereferenceable(8)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA3_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(3)) #2 align 2

declare void @_ZN5clnet13millis_stringB5cxx11Em(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8, i64 noundef) #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIiEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 4 dereferenceable(4)) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK2cl12CommandQueue7getInfoILi4240EEENS_6detail12param_traitsINS2_21cl_command_queue_infoEXT_EE10param_typeEPi(ptr dead_on_unwind noalias writable sret(%"class.cl::Context") align 8, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #2 align 2

declare void @_ZN5clnet14reload_kernelsERKN2cl6DeviceERKNS0_7ContextERNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(296)) #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA29_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(29)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i64 noundef) #0 align 2

; Function Attrs: nounwind willreturn memory(read)
declare ptr @__dynamic_cast(ptr, ptr, ptr, i64) #9

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA21_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(21)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA8_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(8)) #2 align 2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(256)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA39_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(39)) #2 align 2

; Function Attrs: noreturn nounwind
declare void @exit(i32 noundef) #10

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA33_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(33)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA141_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(141)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA107_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(107)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA143_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(143)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA122_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(122)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA149_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(149)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA103_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(103)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(76)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA64_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(64)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA101_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(101)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA140_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(140)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA92_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(92)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA96_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(96)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA67_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(67)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA119_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(119)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA121_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(121)) #2 align 2

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA18_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(18)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 4 dereferenceable(4)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet17unitary_operationIfEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind noalias writable sret(%"class.std::function") align 8, ptr noundef, float noundef) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNKSt8functionIFvRfEEclES0_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 4 dereferenceable(4)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA16_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(16)) #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(15)) #2 align 2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERx(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(8)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet17unitary_operationIxEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind noalias writable sret(%"class.std::function.112") align 8, ptr noundef, i64 noundef) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNKSt8functionIFvRxEEclES0_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(8)) #2 align 2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5rfindEPKcm(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i64 noundef) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4backEv(ptr noundef nonnull align 8 dereferenceable(32)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef, ptr noundef, ptr noundef, ptr noundef, ptr noundef) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIfEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, float noundef) #2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIiEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i32 noundef) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIcEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i8 noundef signext) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIxEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i64 noundef) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIsEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i16 noundef signext) #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIdEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, double noundef) #2

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERs(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 2 dereferenceable(2)) #5

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERd(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(8)) #2 align 2

; Function Attrs: nounwind memory(none)
declare i32 @llvm.eh.typeid.for.p0(ptr) #11

declare ptr @__cxa_begin_catch(ptr)

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA19_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(19)) #2 align 2

declare void @__cxa_end_catch()

; Function Attrs: noinline noreturn nounwind uwtable
declare hidden void @__clang_call_terminate(ptr noundef) #12

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

attributes #0 = { 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 #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
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 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 = { 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 #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 = { 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 #7 = { inlinehint mustprogress nounwind willreturn memory(read) 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 #8 = { nocallback nofree nounwind willreturn memory(argmem: readwrite) }
attributes #9 = { nounwind willreturn memory(read) }
attributes #10 = { noreturn 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 #11 = { nounwind memory(none) }
attributes #12 = { noinline noreturn nounwind uwtable "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 #13 = { nounwind }
attributes #14 = { noreturn nounwind }
attributes #15 = { noreturn }

!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, !11, i64 0}
!10 = !{!"_ZTSN5clnet14DeviceInstanceE", !11, i64 0, !12, i64 8, !15, i64 24, !15, i64 28, !17, i64 32, !11, i64 56, !11, i64 60, !21, i64 64, !23, i64 72, !29, i64 128, !31, i64 184, !33, i64 240}
!11 = !{!"int", !7, i64 0}
!12 = !{!"_ZTSN2cl6DeviceE", !13, i64 0}
!13 = !{!"_ZTSN2cl6detail7WrapperIP13_cl_device_idEE", !6, i64 0, !14, i64 8}
!14 = !{!"bool", !7, i64 0}
!15 = !{!"_ZTSSt6atomicIiE", !16, i64 0}
!16 = !{!"_ZTSSt13__atomic_baseIiE", !11, i64 0}
!17 = !{!"_ZTSSt6vectorIN2cl5EventESaIS1_EE", !18, i64 0}
!18 = !{!"_ZTSSt12_Vector_baseIN2cl5EventESaIS1_EE", !19, i64 0}
!19 = !{!"_ZTSNSt12_Vector_baseIN2cl5EventESaIS1_EE12_Vector_implE", !20, i64 0}
!20 = !{!"_ZTSNSt12_Vector_baseIN2cl5EventESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!21 = !{!"_ZTSN2cl12CommandQueueE", !22, i64 0}
!22 = !{!"_ZTSN2cl6detail7WrapperIP17_cl_command_queueEE", !6, i64 0}
!23 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorEN2cl6BufferESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !24, i64 0}
!24 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_N2cl6BufferEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !25, i64 8, !26, i64 16, !25, i64 24, !27, i64 32, !6, i64 48}
!25 = !{!"long", !7, i64 0}
!26 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!27 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !28, i64 0, !25, i64 8}
!28 = !{!"float", !7, i64 0}
!29 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorEN2cl5EventESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !30, i64 0}
!30 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_N2cl5EventEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !25, i64 8, !26, i64 16, !25, i64 24, !27, i64 32, !6, i64 48}
!31 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorEPfSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S3_EEE", !32, i64 0}
!32 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_PfESaIS6_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS8_18_Mod_range_hashingENS8_20_Default_ranged_hashENS8_20_Prime_rehash_policyENS8_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !25, i64 8, !26, i64 16, !25, i64 24, !27, i64 32, !6, i64 48}
!33 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorESt6vectorIN2cl6KernelESaIS5_EESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S7_EEE", !34, i64 0}
!34 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_St6vectorIN2cl6KernelESaIS7_EEESaISA_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENSC_18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyENSC_17_Hashtable_traitsILb0ELb0ELb1EEEE", !6, i64 0, !25, i64 8, !26, i64 16, !25, i64 24, !27, i64 32, !6, i64 48}
!35 = !{!11, !11, i64 0}
!36 = !{!25, !25, i64 0}
!37 = !{!7, !7, i64 0}
!38 = !{!39, !39, i64 0}
!39 = !{!"long long", !7, i64 0}
!40 = !{!41, !25, i64 8}
!41 = !{!"_ZTSSt4pairIKPN5clnet6TensorEmE", !6, i64 0, !25, i64 8}
!42 = !{!43, !43, i64 0}
!43 = !{!"vtable pointer", !8, i64 0}
!44 = distinct !{!44, !45}
!45 = !{!"llvm.loop.mustprogress"}
!46 = distinct !{!46, !45}
!47 = distinct !{!47, !45}
!48 = distinct !{!48, !45}
!49 = distinct !{!49, !45}
!50 = !{!28, !28, i64 0}
!51 = !{!52, !52, i64 0}
!52 = !{!"short", !7, i64 0}
!53 = !{!54, !54, i64 0}
!54 = !{!"double", !7, i64 0}
!55 = distinct !{!55, !45}


; 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::condition_variable" = type { %"class.std::__condvar" }
%"class.std::__condvar" = type { %union.pthread_cond_t }
%union.pthread_cond_t = type { %struct.__pthread_cond_s }
%struct.__pthread_cond_s = type { %union.__atomic_wide_counter, %union.__atomic_wide_counter, [2 x i32], [2 x i32], i32, i32, [2 x i32] }
%union.__atomic_wide_counter = type { i64 }
%"class.std::vector.17" = type { %"struct.std::_Vector_base.18" }
%"struct.std::_Vector_base.18" = type { %"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl" }
%"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl" = type { %"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<clnet::Tensor *, std::allocator<clnet::Tensor *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.clnet::Logger" = type { [8 x ptr], i32, %"class.std::mutex", %"class.std::unordered_map.78" }
%"class.std::mutex" = type { %"class.std::__mutex_base" }
%"class.std::__mutex_base" = type { %union.pthread_mutex_t }
%union.pthread_mutex_t = type { %struct.__pthread_mutex_s }
%struct.__pthread_mutex_s = type { i32, i32, i32, i32, i32, i16, i16, %struct.__pthread_internal_list }
%struct.__pthread_internal_list = type { ptr, ptr }
%"class.std::unordered_map.78" = type { %"class.std::_Hashtable.79" }
%"class.std::_Hashtable.79" = 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::basic_istream" = type { ptr, i64, %"class.std::basic_ios" }
%"class.std::basic_ios" = type { %"class.std::ios_base", ptr, i8, i8, ptr, ptr, ptr, ptr }
%"class.std::ios_base" = type { ptr, i64, i64, i32, i32, i32, ptr, %"struct.std::ios_base::_Words", [8 x %"struct.std::ios_base::_Words"], i32, ptr, %"class.std::locale" }
%"struct.std::ios_base::_Words" = type { ptr, i64 }
%"class.std::locale" = type { ptr }
%"class.std::unordered_map.98" = type { %"class.std::_Hashtable.99" }
%"class.std::_Hashtable.99" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", 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] }
%"struct.std::__detail::_Node_iterator" = type { %"struct.std::__detail::_Node_iterator_base" }
%"struct.std::__detail::_Node_iterator_base" = type { ptr }
%"struct.std::pair" = type { ptr, i64 }
%"class.__gnu_cxx::__normal_iterator.77" = type { ptr }
%"class.cl::Context" = type { %"class.cl::detail::Wrapper" }
%"class.cl::detail::Wrapper" = type { ptr }
%"class.std::__cxx11::basic_stringstream" = type { %"class.std::basic_iostream.base", %"class.std::__cxx11::basic_stringbuf", %"class.std::basic_ios" }
%"class.std::basic_iostream.base" = type { %"class.std::basic_istream.base", %"class.std::basic_ostream.base" }
%"class.std::basic_istream.base" = type { ptr, i64 }
%"class.std::basic_ostream.base" = type { ptr }
%"class.std::__cxx11::basic_stringbuf" = type { %"class.std::basic_streambuf", i32, %"class.std::__cxx11::basic_string" }
%"class.std::basic_streambuf" = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, %"class.std::locale" }
%"class.std::basic_ofstream" = type { %"class.std::basic_ostream.base", %"class.std::basic_filebuf", %"class.std::basic_ios" }
%"class.std::basic_filebuf" = type { %"class.std::basic_streambuf", %union.pthread_mutex_t, %"class.std::__basic_file", i32, %struct.__mbstate_t, %struct.__mbstate_t, %struct.__mbstate_t, ptr, i64, i8, i8, i8, i8, ptr, ptr, i8, ptr, ptr, i64, ptr, ptr }
%"class.std::__basic_file" = type <{ ptr, i8, [7 x i8] }>
%struct.__mbstate_t = type { i32, %union.anon.76 }
%union.anon.76 = type { i32 }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = 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.__gnu_cxx::__normal_iterator" = type { ptr }
%"class.std::basic_ifstream" = type { %"class.std::basic_istream.base", %"class.std::basic_filebuf", %"class.std::basic_ios" }
%"class.std::vector.12" = type { %"struct.std::_Vector_base.13" }
%"struct.std::_Vector_base.13" = type { %"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl" }
%"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long long, std::allocator<long long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::function" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%"class.std::function.112" = type { %"class.std::_Function_base", ptr }
%"class.std::allocator" = type { i8 }

@.str.4 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTISt13runtime_error = external constant ptr
@_ZN5clnet18debugger_device_idE = external dso_local local_unnamed_addr global i32, align 4
@_ZN5clnet8debuggerE = external dso_local local_unnamed_addr global ptr, align 8
@_ZN5clnet10breakpointE = external dso_local global %"class.std::condition_variable", align 8
@.str.11 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZN5clnet6Tensor3ALLE = external global %"class.std::vector.17", align 8
@_ZN5clnet6loggerE = external global %"class.clnet::Logger", align 8
@.str.19 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTISt16invalid_argument = external constant ptr
@_ZSt3cin = external global %"class.std::basic_istream", align 8
@.str.34 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [5 x i8], align 1
@_ZN5clnet20CLNET_TENSOR_GLOBALSE = external local_unnamed_addr global i64, align 8
@.str.36 = external hidden unnamed_addr constant [35 x i8], align 1
@_ZN5clnet11_breakpointE = external local_unnamed_addr global ptr, align 8
@.str.37 = external hidden unnamed_addr constant [31 x i8], align 1
@_ZN5clnet20breakpoint_hit_timesE = external global i64, align 8
@.str.38 = external hidden unnamed_addr constant [38 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.48 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.50 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.52 = external hidden unnamed_addr constant [8 x i8], align 1
@_ZN5clnet12microsecondsE = external local_unnamed_addr global i64, align 8
@.str.53 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.54 = external hidden unnamed_addr constant [6 x i8], align 1
@_ZN5clnet12kernels_costE = external global %"class.std::unordered_map.98", align 8
@.str.55 = external hidden unnamed_addr constant [36 x i8], align 1
@.str.56 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.58 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.62 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.64 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.66 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTIN5clnet6TensorE = external constant ptr
@_ZTIN5clnet4type9ParameterE = external constant ptr
@.str.68 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.70 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.72 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.74 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.76 = external hidden unnamed_addr constant [39 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.78 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.79 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.80 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.81 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.82 = external hidden unnamed_addr constant [141 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [107 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [143 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [122 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [149 x i8], align 1
@.str.87 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.88 = external hidden unnamed_addr constant [76 x i8], align 1
@.str.89 = external hidden unnamed_addr constant [64 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [101 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [140 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [92 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [96 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [76 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [67 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [101 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [119 x i8], align 1
@.str.98 = external hidden unnamed_addr constant [103 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [121 x i8], align 1
@.str.100 = external hidden unnamed_addr constant [76 x i8], align 1
@.str.101 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.102 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.103 = external hidden unnamed_addr constant [14 x i8], align 1
@_ZTIN5clnet4type32StochasticGradientDescentUpdaterE = external constant ptr
@.str.104 = external hidden unnamed_addr constant [56 x i8], align 1
@.str.105 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.106 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.107 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.108 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.109 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.110 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.111 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.112 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.113 = external hidden unnamed_addr constant [11 x i8], align 1
@_ZTIN5clnet4type18IterativeOptimizerE = external constant ptr
@.str.114 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.115 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.116 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZTIN5clnet4back4LossE = external constant ptr
@.str.117 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.118 = external hidden unnamed_addr constant [14 x i8], align 1
@_ZN5clnet8_currentE = external local_unnamed_addr global ptr, align 8
@.str.119 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.120 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.121 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.122 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.123 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.124 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.125 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.126 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.127 = external hidden unnamed_addr constant [32 x i8], align 1

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

; Function Attrs: mustprogress nounwind uwtable
declare noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) local_unnamed_addr #0 align 2

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

; Function Attrs: mustprogress uwtable
declare void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), i64 noundef, i64 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #0 align 2

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

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

; Function Attrs: mustprogress uwtable
declare void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(128)) unnamed_addr #2 align 2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #3

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEEcvbEv(ptr noundef nonnull align 8 dereferenceable(264)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE9push_backERKS5_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #0 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN9__gnu_cxxneIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEEbRKNS_17__normal_iteratorIT_T0_EESG_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(32) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef i32 @_ZNSt7__cxx114stoiERKNS_12basic_stringIcSt11char_traitsIcESaIcEEEPmi(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0 align 2

declare ptr @__cxa_allocate_exception(i64) local_unnamed_addr

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #3

declare void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #5

; Function Attrs: nounwind
declare void @_ZNSt13runtime_errorD1Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #6

declare void @__cxa_throw(ptr, ptr, ptr) local_unnamed_addr

declare void @__cxa_free_exception(ptr) local_unnamed_addr

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, i32 noundef) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128)) unnamed_addr #0 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet9type_nameB5cxx11EPNS_6TensorE(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef) local_unnamed_addr #2

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERi(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #5

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_RS3_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet11save_tensorEPNS_6TensorERSoPNS_14DeviceInstanceE(ptr noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet18save_tensor_as_csvEPNS_6TensorERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_14DeviceInstanceEb(ptr noundef, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i1 noundef zeroext) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(248), ptr noundef nonnull align 8 dereferenceable(32), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(248)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(248)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet12load_tensorsERSiPNS_14DeviceInstanceE(ptr dead_on_unwind noalias writable sret(%"class.std::vector.17") align 8, ptr noundef nonnull align 8 dereferenceable(16), ptr noundef) local_unnamed_addr #2

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

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #3

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

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef ptr @_ZN5clnet20load_tensor_from_csvERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_6TensorEPNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, ptr noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256), ptr noundef nonnull align 8 dereferenceable(32), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #3

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

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

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256)) unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #0 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet15describe_tensorEPNS_6TensorEb(ptr noundef, i1 noundef zeroext) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA5_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(5)) local_unnamed_addr #2 align 2

declare noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef) local_unnamed_addr #5

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(ptr noundef nonnull align 8 dereferenceable(8)) #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(2)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt6vectorIxSaIxEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(12)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA13_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(13)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA17_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(17)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA14_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(14)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA9_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(9)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN5clnet15debugger_threadERNS_14DeviceInstanceERNS_6TensorE(ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull align 8 dereferenceable(144) %1) local_unnamed_addr #2 personality ptr @__gxx_personality_v0 {
  %3 = alloca %"class.std::__cxx11::basic_string", align 8
  %4 = alloca %"class.std::__cxx11::basic_string", align 8
  %5 = alloca %"class.std::__cxx11::basic_string", align 8
  %6 = alloca ptr, align 8
  %7 = alloca %"class.std::__cxx11::basic_string", align 8
  %8 = alloca ptr, align 8
  %9 = alloca %"class.std::vector.17", align 8
  %10 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %11 = alloca %"struct.std::__detail::_Node_iterator", align 8
  %12 = alloca %"struct.std::pair", align 8
  %13 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %14 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %15 = alloca ptr, align 8
  %16 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %17 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %18 = alloca ptr, align 8
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca i32, align 4
  %22 = alloca %"class.cl::Context", align 8
  %23 = alloca %"class.std::__cxx11::basic_string", align 8
  %24 = alloca %"class.std::__cxx11::basic_string", align 8
  %25 = alloca %"class.std::vector.17", align 8
  %26 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %27 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %28 = alloca ptr, align 8
  %29 = alloca %"class.std::__cxx11::basic_stringstream", align 8
  %30 = alloca ptr, align 8
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::__cxx11::basic_string", align 8
  %33 = alloca %"class.std::__cxx11::basic_string", align 8
  %34 = alloca %"class.std::basic_ofstream", align 8
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca %"class.std::__cxx11::basic_string", align 8
  %37 = alloca %"class.std::vector", align 8
  %38 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %39 = alloca %"class.__gnu_cxx::__normal_iterator.77", align 8
  %40 = alloca %"class.std::__cxx11::basic_stringstream", align 8
  %41 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %42 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %43 = alloca %"class.std::__cxx11::basic_string", align 8
  %44 = alloca %"class.std::__cxx11::basic_string", align 8
  %45 = alloca %"class.std::basic_ifstream", align 8
  %46 = alloca %"class.std::vector.17", align 8
  %47 = alloca %"class.std::vector.12", align 8
  %48 = alloca %"class.std::vector.12", align 8
  %49 = alloca %"class.std::vector.12", align 8
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::__cxx11::basic_string", align 8
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca %"class.std::vector.17", align 8
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca float, align 4
  %58 = alloca %"class.std::function", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::__cxx11::basic_string", align 8
  %61 = alloca float, align 4
  %62 = alloca %"class.std::function", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.std::__cxx11::basic_string", align 8
  %65 = alloca i64, align 8
  %66 = alloca %"class.std::function.112", align 8
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca float, align 4
  %71 = alloca %"class.std::__cxx11::basic_string", align 8
  %72 = alloca %"class.std::__cxx11::basic_string", align 8
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca %"class.std::__cxx11::basic_string", align 8
  %76 = alloca %"class.std::__cxx11::basic_string", align 8
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca %"class.std::allocator", align 1
  %79 = alloca %"class.std::__cxx11::basic_string", align 8
  %80 = alloca %"class.std::__cxx11::basic_string", align 8
  %81 = alloca %"class.std::__cxx11::basic_string", align 8
  %82 = alloca %"class.std::__cxx11::basic_string", align 8
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca %"class.std::__cxx11::basic_string", align 8
  %85 = alloca %"class.std::__cxx11::basic_string", align 8
  %86 = alloca %"class.std::vector.12", align 8
  %87 = alloca %"class.std::vector.12", align 8
  %88 = alloca %"class.std::vector.12", align 8
  %89 = alloca %"class.std::__cxx11::basic_string", align 8
  %90 = alloca %"class.std::vector.12", align 8
  %91 = alloca %"class.std::vector.12", align 8
  %92 = alloca %"class.std::vector.12", align 8
  %93 = alloca %"class.std::__cxx11::basic_string", align 8
  %94 = alloca %"class.std::vector.12", align 8
  %95 = alloca %"class.std::vector.12", align 8
  %96 = alloca %"class.std::vector.12", align 8
  %97 = alloca %"class.std::__cxx11::basic_string", align 8
  %98 = alloca %"class.std::vector.12", align 8
  %99 = alloca %"class.std::vector.12", align 8
  %100 = alloca %"class.std::vector.12", align 8
  %101 = alloca %"class.std::__cxx11::basic_string", align 8
  %102 = alloca %"class.std::vector.12", align 8
  %103 = alloca %"class.std::vector.12", align 8
  %104 = alloca %"class.std::vector.12", align 8
  %105 = alloca %"class.std::__cxx11::basic_string", align 8
  %106 = alloca %"class.std::vector.12", align 8
  %107 = alloca %"class.std::vector.12", align 8
  %108 = alloca %"class.std::vector.12", align 8
  %109 = alloca %"class.std::__cxx11::basic_string", align 8
  %110 = alloca float, align 4
  %111 = alloca %"class.std::vector.12", align 8
  %112 = alloca %"class.std::vector.12", align 8
  %113 = alloca %"class.std::vector.12", align 8
  %114 = alloca %"class.std::__cxx11::basic_string", align 8
  %115 = alloca i32, align 4
  %116 = alloca %"class.std::vector.12", align 8
  %117 = alloca %"class.std::vector.12", align 8
  %118 = alloca %"class.std::vector.12", align 8
  %119 = alloca %"class.std::__cxx11::basic_string", align 8
  %120 = alloca i8, align 1
  %121 = alloca %"class.std::vector.12", align 8
  %122 = alloca %"class.std::vector.12", align 8
  %123 = alloca %"class.std::vector.12", align 8
  %124 = alloca %"class.std::__cxx11::basic_string", align 8
  %125 = alloca i64, align 8
  %126 = alloca %"class.std::vector.12", align 8
  %127 = alloca %"class.std::vector.12", align 8
  %128 = alloca %"class.std::vector.12", align 8
  %129 = alloca %"class.std::__cxx11::basic_string", align 8
  %130 = alloca i16, align 2
  %131 = alloca %"class.std::vector.12", align 8
  %132 = alloca %"class.std::vector.12", align 8
  %133 = alloca %"class.std::vector.12", align 8
  %134 = alloca %"class.std::__cxx11::basic_string", align 8
  %135 = alloca double, align 8
  %136 = alloca %"class.std::vector.12", align 8
  %137 = alloca %"class.std::vector.12", align 8
  %138 = alloca %"class.std::vector.12", align 8
  %139 = alloca %"class.std::__cxx11::basic_string", align 8
  %140 = alloca ptr, align 8
  %141 = alloca ptr, align 8
  %142 = load i32, ptr %0, align 8, !tbaa !5
  store i32 %142, ptr @_ZN5clnet18debugger_device_idE, align 4, !tbaa !34
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %3) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %4) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #13
  %143 = getelementptr inbounds i8, ptr %40, i64 16
  %144 = getelementptr inbounds i8, ptr %29, i64 16
  %145 = getelementptr inbounds i8, ptr %0, i64 64
  %146 = getelementptr inbounds i8, ptr %0, i64 8
  %147 = getelementptr inbounds i8, ptr %12, i64 8
  %148 = getelementptr inbounds i8, ptr %1, i64 88
  br label %.backedge

.backedge:                                        ; preds = %.backedge.backedge, %2
  %.0 = phi ptr [ null, %2 ], [ %.0.be, %.backedge.backedge ]
  %149 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %3)
          to label %150 unwind label %162

150:                                              ; preds = %.backedge
  %151 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.34)
  br i1 %151, label %154, label %152

152:                                              ; preds = %150
  %153 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.35)
  br i1 %153, label %154, label %198

154:                                              ; preds = %152, %150
  %155 = load i64, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !35
  %156 = and i64 %155, 8
  %.not469 = icmp eq i64 %156, 0
  br i1 %.not469, label %164, label %157

157:                                              ; preds = %154
  %158 = and i64 %155, -9
  store i64 %158, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !35
  %159 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA35_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(35) @.str.36)
          to label %160 unwind label %162

160:                                              ; preds = %157
  %161 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %159, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %164 unwind label %162

162:                                              ; preds = %.invoke, %699, %697, %695, %693, %691, %689, %687, %685, %683, %681, %679, %677, %675, %673, %671, %669, %667, %665, %663, %661, %654, %652, %647, %645, %378, %239, %221, %215, %211, %207, %160, %157, %.backedge
  %163 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1420

164:                                              ; preds = %160, %154
  %165 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %166 unwind label %172

166:                                              ; preds = %164
  %sext.mask470 = and i32 %165, 255
  %167 = icmp eq i32 %sext.mask470, 10
  br i1 %167, label %168, label %174

168:                                              ; preds = %166
  store ptr null, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !36
  %169 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA31_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(31) @.str.37)
          to label %170 unwind label %172

170:                                              ; preds = %168
  %171 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %169, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1435 unwind label %172

172:                                              ; preds = %195, %193, %188, %186, %179, %176, %174, %170, %168, %164
  %173 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1420

174:                                              ; preds = %166
  %175 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %176 unwind label %172

176:                                              ; preds = %174
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %5, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %177 unwind label %172

177:                                              ; preds = %176
  %178 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull %5)
          to label %179 unwind label %184

179:                                              ; preds = %177
  store ptr %178, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !36
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #13
  %180 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %181 unwind label %172

181:                                              ; preds = %179
  %sext.mask471 = and i32 %180, 255
  %182 = icmp eq i32 %sext.mask471, 10
  br i1 %182, label %183, label %186

183:                                              ; preds = %181
  store i64 -1, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !37
  br label %197

184:                                              ; preds = %177
  %185 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #13
  br label %1420

186:                                              ; preds = %181
  %187 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %188 unwind label %172

188:                                              ; preds = %186
  %189 = call noundef ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4dataEv(ptr noundef nonnull align 8 dereferenceable(32) %4) #13
  %190 = call i32 @atoi(ptr nocapture noundef %189) #14
  %191 = sext i32 %190 to i64
  store i64 %191, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !37
  %192 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA38_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(38) @.str.38)
          to label %193 unwind label %172

193:                                              ; preds = %188
  %194 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %192, ptr noundef nonnull align 8 dereferenceable(8) @_ZN5clnet20breakpoint_hit_timesE)
          to label %195 unwind label %172

195:                                              ; preds = %193
  %196 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %194, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %197 unwind label %172

197:                                              ; preds = %195, %183
  call void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48) @_ZN5clnet10breakpointE) #13
  br label %1435

198:                                              ; preds = %152
  %199 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.39)
  br i1 %199, label %202, label %200

200:                                              ; preds = %198
  %201 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.40)
  br i1 %201, label %202, label %203

202:                                              ; preds = %200, %198
  store i64 -1, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !37
  call void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48) @_ZN5clnet10breakpointE) #13
  br label %1435

203:                                              ; preds = %200
  %204 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.41)
  br i1 %204, label %207, label %205

205:                                              ; preds = %203
  %206 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.42)
  br i1 %206, label %207, label %217

207:                                              ; preds = %205, %203
  %208 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %148, i64 noundef 0) #13
  %209 = load ptr, ptr %208, align 8, !tbaa !36
  store ptr %209, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !36
  store i64 -1, ptr @_ZN5clnet20breakpoint_hit_timesE, align 8, !tbaa !37
  %210 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA32_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(32) @.str.43)
          to label %211 unwind label %162

211:                                              ; preds = %207
  %212 = load ptr, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !36
  %213 = getelementptr inbounds i8, ptr %212, i64 56
  %214 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %210, ptr noundef nonnull align 8 dereferenceable(32) %213)
          to label %215 unwind label %162

215:                                              ; preds = %211
  %216 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %214, ptr noundef nonnull align 1 dereferenceable(2) @.str.11)
          to label %.invoke unwind label %162

217:                                              ; preds = %205
  %218 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.44)
  br i1 %218, label %221, label %219

219:                                              ; preds = %217
  %220 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.45)
  br i1 %220, label %221, label %235

221:                                              ; preds = %219, %217
  %222 = load i64, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !35
  %223 = xor i64 %222, 8
  store i64 %223, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !35
  %224 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA27_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(27) @.str.46)
          to label %225 unwind label %162

225:                                              ; preds = %221
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %6) #13
  %226 = load i64, ptr @_ZN5clnet20CLNET_TENSOR_GLOBALSE, align 8, !tbaa !35
  %227 = and i64 %226, 8
  %.not468 = icmp eq i64 %227, 0
  %228 = select i1 %.not468, ptr @.str.48, ptr @.str.47
  store ptr %228, ptr %6, align 8, !tbaa !36
  %229 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %224, ptr noundef nonnull align 8 dereferenceable(8) %6)
          to label %230 unwind label %233

230:                                              ; preds = %225
  %231 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %229, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %232 unwind label %233

232:                                              ; preds = %230
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #13
  br label %1435

233:                                              ; preds = %230, %225
  %234 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #13
  br label %1420

235:                                              ; preds = %219
  %236 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.49)
  br i1 %236, label %239, label %237

237:                                              ; preds = %235
  %238 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.50)
  br i1 %238, label %239, label %249

239:                                              ; preds = %237, %235
  %240 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %241 unwind label %162

241:                                              ; preds = %239
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %242 unwind label %245

242:                                              ; preds = %241
  %243 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull %7)
          to label %244 unwind label %247

244:                                              ; preds = %242
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  invoke void @_ZN5clnet15describe_tensorEPNS_6TensorEb(ptr noundef %243, i1 noundef zeroext false)
          to label %1435 unwind label %245

245:                                              ; preds = %244, %241
  %246 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1420

247:                                              ; preds = %242
  %248 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #13
  br label %1420

249:                                              ; preds = %237
  %250 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.51)
  br i1 %250, label %253, label %251

251:                                              ; preds = %249
  %252 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.52)
  br i1 %252, label %253, label %374

253:                                              ; preds = %251, %249
  %254 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %255 unwind label %270

255:                                              ; preds = %253
  %sext.mask451 = and i32 %254, 255
  %256 = icmp eq i32 %sext.mask451, 10
  br i1 %256, label %257, label %274

257:                                              ; preds = %255
  %258 = load i64, ptr @_ZN5clnet12microsecondsE, align 8, !tbaa !37
  %259 = icmp slt i64 %258, 1
  %260 = zext i1 %259 to i64
  store i64 %260, ptr @_ZN5clnet12microsecondsE, align 8, !tbaa !37
  %261 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA25_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(25) @.str.53)
          to label %262 unwind label %270

262:                                              ; preds = %257
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %8) #13
  %263 = load i64, ptr @_ZN5clnet12microsecondsE, align 8, !tbaa !37
  %264 = icmp sgt i64 %263, 0
  %265 = select i1 %264, ptr @.str.47, ptr @.str.48
  store ptr %265, ptr %8, align 8, !tbaa !36
  %266 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %261, ptr noundef nonnull align 8 dereferenceable(8) %8)
          to label %267 unwind label %272

267:                                              ; preds = %262
  %268 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %266, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %269 unwind label %272

269:                                              ; preds = %267
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #13
  br label %1435

270:                                              ; preds = %280, %278, %274, %257, %253
  %271 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1420

272:                                              ; preds = %267, %262
  %273 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #13
  br label %1420

274:                                              ; preds = %255
  %275 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %276 unwind label %270

276:                                              ; preds = %274
  %277 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull @.str.54)
  br i1 %277, label %278, label %282

278:                                              ; preds = %276
  call void @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5clearEv(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE) #13
  %279 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA36_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(36) @.str.55)
          to label %280 unwind label %270

280:                                              ; preds = %278
  %281 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %279, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1435 unwind label %270

282:                                              ; preds = %276
  %283 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull @.str.56)
  br i1 %283, label %284, label %1435

284:                                              ; preds = %282
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %9) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %10) #13
  %285 = call ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5beginEv(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE) #13
  store ptr %285, ptr %10, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %11) #13
  %286 = call ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE) #13
  store ptr %286, ptr %11, align 8
  %287 = call noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPN5clnet6TensorEmELb0EEES9_(ptr noundef nonnull align 8 dereferenceable(8) %10, ptr noundef nonnull align 8 dereferenceable(8) %11) #13
  br i1 %287, label %.lr.ph553, label %._crit_edge554

._crit_edge554:                                   ; preds = %295, %284
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %11) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #13
  %288 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  %289 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  invoke void @"_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS4_SaIS4_EEEEZNS2_15debugger_threadERNS2_14DeviceInstanceERS3_E3$_0EvT_SE_T0_"(ptr %288, ptr %289)
          to label %298 unwind label %306

.lr.ph553:                                        ; preds = %284, %295
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #13
  %290 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %10) #13
  call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(16) %12, ptr noundef nonnull align 8 dereferenceable(16) %290, i64 16, i1 false)
  %291 = load i64, ptr %147, align 8, !tbaa !39
  %.not461 = icmp eq i64 %291, 0
  br i1 %.not461, label %295, label %292

292:                                              ; preds = %.lr.ph553
  invoke void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE9push_backERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 8 dereferenceable(8) %12)
          to label %295 unwind label %293

293:                                              ; preds = %292
  %294 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %11) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #13
  br label %373

295:                                              ; preds = %292, %.lr.ph553
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #13
  %296 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEppEv(ptr noundef nonnull align 8 dereferenceable(8) %10) #13
  %297 = call noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPN5clnet6TensorEmELb0EEES9_(ptr noundef nonnull align 8 dereferenceable(8) %10, ptr noundef nonnull align 8 dereferenceable(8) %11) #13
  br i1 %297, label %.lr.ph553, label %._crit_edge554

298:                                              ; preds = %._crit_edge554
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %13) #13
  %299 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  store ptr %299, ptr %13, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %14) #13
  %300 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  store ptr %300, ptr %14, align 8
  %301 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %14) #13
  br i1 %301, label %.lr.ph557, label %._crit_edge558

._crit_edge558:                                   ; preds = %311, %298
  %.0273.lcssa = phi i64 [ 0, %298 ], [ %313, %311 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #13
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %16) #13
  %302 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  store ptr %302, ptr %16, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %17) #13
  %303 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  store ptr %303, ptr %17, align 8
  %304 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %16, ptr noundef nonnull align 8 dereferenceable(8) %17) #13
  br i1 %304, label %.lr.ph560, label %._crit_edge561

.lr.ph560:                                        ; preds = %._crit_edge558
  %305 = uitofp i64 %.0273.lcssa to float
  br label %318

306:                                              ; preds = %._crit_edge554
  %307 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %373

.lr.ph557:                                        ; preds = %298, %311
  %.0273555 = phi i64 [ %313, %311 ], [ 0, %298 ]
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %15) #13
  %308 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #13
  %309 = load ptr, ptr %308, align 8, !tbaa !36
  store ptr %309, ptr %15, align 8, !tbaa !36
  %310 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %311 unwind label %316

311:                                              ; preds = %.lr.ph557
  %312 = load i64, ptr %310, align 8, !tbaa !35
  %313 = add i64 %312, %.0273555
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #13
  %314 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #13
  %315 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %14) #13
  br i1 %315, label %.lr.ph557, label %._crit_edge558

316:                                              ; preds = %.lr.ph557
  %317 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #13
  br label %373

._crit_edge561:                                   ; preds = %353, %._crit_edge558
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %17) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %9) #13
  br label %1435

318:                                              ; preds = %.lr.ph560, %353
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %18) #13
  %319 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %16) #13
  %320 = load ptr, ptr %319, align 8, !tbaa !36
  store ptr %320, ptr %18, align 8, !tbaa !36
  %321 = getelementptr inbounds i8, ptr %320, i64 56
  %322 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 8 dereferenceable(32) %321)
          to label %323 unwind label %356

323:                                              ; preds = %318
  %324 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA3_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %322, ptr noundef nonnull align 1 dereferenceable(3) @.str.57)
          to label %325 unwind label %356

325:                                              ; preds = %323
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %19) #13
  %326 = load ptr, ptr %18, align 8, !tbaa !36
  invoke void @_ZN5clnet9type_nameB5cxx11EPNS_6TensorE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %19, ptr noundef %326)
          to label %327 unwind label %358

327:                                              ; preds = %325
  %328 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %324, ptr noundef nonnull align 8 dereferenceable(32) %19)
          to label %329 unwind label %360

329:                                              ; preds = %327
  %330 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA5_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %328, ptr noundef nonnull align 1 dereferenceable(5) @.str.58)
          to label %331 unwind label %360

331:                                              ; preds = %329
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %20) #13
  %332 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %333 unwind label %362

333:                                              ; preds = %331
  %334 = load i64, ptr %332, align 8, !tbaa !35
  %335 = udiv i64 %334, 1000
  invoke void @_ZN5clnet13millis_stringB5cxx11Em(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %20, i64 noundef %335)
          to label %336 unwind label %362

336:                                              ; preds = %333
  %337 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %330, ptr noundef nonnull align 8 dereferenceable(32) %20)
          to label %338 unwind label %364

338:                                              ; preds = %336
  %339 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %337, ptr noundef nonnull align 1 dereferenceable(2) @.str.59)
          to label %340 unwind label %364

340:                                              ; preds = %338
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %21) #13
  %341 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56) @_ZN5clnet12kernels_costE, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %342 unwind label %366

342:                                              ; preds = %340
  %343 = load i64, ptr %341, align 8, !tbaa !35
  %344 = uitofp i64 %343 to float
  %345 = fmul float %344, 1.000000e+02
  %346 = fdiv float %345, %305
  %347 = fptosi float %346 to i32
  store i32 %347, ptr %21, align 4, !tbaa !34
  %348 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIiEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %339, ptr noundef nonnull align 4 dereferenceable(4) %21)
          to label %349 unwind label %366

349:                                              ; preds = %342
  %350 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %348, ptr noundef nonnull align 1 dereferenceable(2) @.str.60)
          to label %351 unwind label %366

351:                                              ; preds = %349
  %352 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %350, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %353 unwind label %366

353:                                              ; preds = %351
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %21) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %18) #13
  %354 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %16) #13
  %355 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %16, ptr noundef nonnull align 8 dereferenceable(8) %17) #13
  br i1 %355, label %318, label %._crit_edge561

356:                                              ; preds = %323, %318
  %357 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %372

358:                                              ; preds = %325
  %359 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %371

360:                                              ; preds = %329, %327
  %361 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %370

362:                                              ; preds = %333, %331
  %363 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %369

364:                                              ; preds = %338, %336
  %365 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %368

366:                                              ; preds = %351, %349, %342, %340
  %367 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %21) #13
  br label %368

368:                                              ; preds = %366, %364
  %.pn452 = phi { ptr, i32 } [ %367, %366 ], [ %365, %364 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #13
  br label %369

369:                                              ; preds = %368, %362
  %.pn452.pn = phi { ptr, i32 } [ %.pn452, %368 ], [ %363, %362 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #13
  br label %370

370:                                              ; preds = %369, %360
  %.pn452.pn.pn = phi { ptr, i32 } [ %.pn452.pn, %369 ], [ %361, %360 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #13
  br label %371

371:                                              ; preds = %370, %358
  %.pn452.pn.pn.pn = phi { ptr, i32 } [ %.pn452.pn.pn, %370 ], [ %359, %358 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #13
  br label %372

372:                                              ; preds = %371, %356
  %.pn452.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn452.pn.pn.pn, %371 ], [ %357, %356 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %18) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %17) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #13
  br label %373

373:                                              ; preds = %306, %372, %316, %293
  %.pn462 = phi { ptr, i32 } [ %294, %293 ], [ %307, %306 ], [ %317, %316 ], [ %.pn452.pn.pn.pn.pn, %372 ]
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %9) #13
  br label %1420

374:                                              ; preds = %251
  %375 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.61)
  br i1 %375, label %378, label %376

376:                                              ; preds = %374
  %377 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.62)
  br i1 %377, label %378, label %391

378:                                              ; preds = %376, %374
  %379 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA24_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(24) @.str.63)
          to label %380 unwind label %162

380:                                              ; preds = %378
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %22) #13
  invoke void @_ZNK2cl12CommandQueue7getInfoILi4240EEENS_6detail12param_traitsINS2_21cl_command_queue_infoEXT_EE10param_typeEPi(ptr dead_on_unwind nonnull writable sret(%"class.cl::Context") align 8 %22, ptr noundef nonnull align 8 dereferenceable(8) %145, ptr noundef null)
          to label %381 unwind label %387

381:                                              ; preds = %380
  invoke void @_ZN5clnet14reload_kernelsERKN2cl6DeviceERKNS0_7ContextERNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(9) %146, ptr noundef nonnull align 8 dereferenceable(8) %22, ptr noundef nonnull align 8 dereferenceable(296) %0)
          to label %382 unwind label %389

382:                                              ; preds = %381
  %383 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA29_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(29) @.str.64)
          to label %384 unwind label %389

384:                                              ; preds = %382
  %385 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %383, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %386 unwind label %389

386:                                              ; preds = %384
  call void @_ZN2cl6detail7WrapperIP11_cl_contextED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %22) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %22) #13
  br label %1435

387:                                              ; preds = %380
  %388 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1420

389:                                              ; preds = %384, %382, %381
  %390 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZN2cl6detail7WrapperIP11_cl_contextED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %22) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %22) #13
  br label %1420

391:                                              ; preds = %376
  %392 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.65)
  br i1 %392, label %395, label %393

393:                                              ; preds = %391
  %394 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.66)
  br i1 %394, label %395, label %527

395:                                              ; preds = %393, %391
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %23) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %24) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #13
  %396 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %23)
          to label %397 unwind label %405

397:                                              ; preds = %395
  %398 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %24)
          to label %399 unwind label %405

399:                                              ; preds = %397
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %25) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  %400 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull @.str.67, i64 noundef 0) #13
  %.not431 = icmp eq i64 %400, -1
  br i1 %.not431, label %417, label %401

401:                                              ; preds = %399
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %26) #13
  %402 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  store ptr %402, ptr %26, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %27) #13
  %403 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  store ptr %403, ptr %27, align 8
  %404 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %26, ptr noundef nonnull align 8 dereferenceable(8) %27) #13
  br i1 %404, label %.lr.ph545, label %._crit_edge546

._crit_edge546:                                   ; preds = %.thread, %401
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %26) #13
  br label %443

405:                                              ; preds = %397, %395
  %406 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %526

.lr.ph545:                                        ; preds = %401, %.thread
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %28) #13
  %407 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %26) #13
  %408 = load ptr, ptr %407, align 8, !tbaa !36
  store ptr %408, ptr %28, align 8, !tbaa !36
  %409 = icmp eq ptr %408, null
  br i1 %409, label %.thread, label %410

410:                                              ; preds = %.lr.ph545
  %411 = call ptr @__dynamic_cast(ptr nonnull %408, ptr nonnull @_ZTIN5clnet6TensorE, ptr nonnull @_ZTIN5clnet4type9ParameterE, i64 0) #13
  %.not445 = icmp eq ptr %411, null
  br i1 %.not445, label %.thread, label %412

412:                                              ; preds = %410
  invoke void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE9push_backERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 8 dereferenceable(8) %28)
          to label %.thread unwind label %413

413:                                              ; preds = %412
  %414 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %28) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %26) #13
  br label %525

.thread:                                          ; preds = %.lr.ph545, %412, %410
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %28) #13
  %415 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %26) #13
  %416 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %26, ptr noundef nonnull align 8 dereferenceable(8) %27) #13
  br i1 %416, label %.lr.ph545, label %._crit_edge546

417:                                              ; preds = %399
  call void @llvm.lifetime.start.p0(i64 392, ptr nonnull %29) #13
  invoke void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(128) %29)
          to label %418 unwind label %433

418:                                              ; preds = %417
  %419 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %144, ptr noundef nonnull align 8 dereferenceable(32) %24)
          to label %.preheader521 unwind label %.loopexit.split-lp

.preheader521:                                    ; preds = %418, %432
  %420 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) %29, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %421 unwind label %.loopexit522

421:                                              ; preds = %.preheader521
  %422 = load ptr, ptr %420, align 8, !tbaa !41
  %423 = getelementptr i8, ptr %422, i64 -24
  %424 = load i64, ptr %423, align 8
  %425 = getelementptr inbounds i8, ptr %420, i64 %424
  %426 = invoke noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEEcvbEv(ptr noundef nonnull align 8 dereferenceable(264) %425)
          to label %427 unwind label %.loopexit522

427:                                              ; preds = %421
  br i1 %426, label %428, label %440

428:                                              ; preds = %427
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %30) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %429 unwind label %435

429:                                              ; preds = %428
  %430 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull %31)
          to label %431 unwind label %437

431:                                              ; preds = %429
  store ptr %430, ptr %30, align 8, !tbaa !36
  invoke void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 8 dereferenceable(8) %30)
          to label %432 unwind label %437

432:                                              ; preds = %431
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %30) #13
  br label %.preheader521, !llvm.loop !43

433:                                              ; preds = %417
  %434 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %442

.loopexit522:                                     ; preds = %.preheader521, %421
  %lpad.loopexit = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %441

.loopexit.split-lp:                               ; preds = %418
  %lpad.loopexit.split-lp = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %441

435:                                              ; preds = %428
  %436 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %439

437:                                              ; preds = %431, %429
  %438 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #13
  br label %439

439:                                              ; preds = %437, %435
  %.pn432 = phi { ptr, i32 } [ %438, %437 ], [ %436, %435 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %30) #13
  br label %441

440:                                              ; preds = %427
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %29) #13
  call void @llvm.lifetime.end.p0(i64 392, ptr nonnull %29) #13
  br label %443

441:                                              ; preds = %.loopexit522, %.loopexit.split-lp, %439
  %.pn432.pn = phi { ptr, i32 } [ %.pn432, %439 ], [ %lpad.loopexit, %.loopexit522 ], [ %lpad.loopexit.split-lp, %.loopexit.split-lp ]
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %29) #13
  br label %442

442:                                              ; preds = %441, %433
  %.pn432.pn.pn = phi { ptr, i32 } [ %.pn432.pn, %441 ], [ %434, %433 ]
  call void @llvm.lifetime.end.p0(i64 392, ptr nonnull %29) #13
  br label %525

443:                                              ; preds = %440, %._crit_edge546
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %24) #13
  %444 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.66)
  br i1 %444, label %.preheader, label %485

.preheader:                                       ; preds = %443
  %445 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  %.not564 = icmp eq i64 %445, 0
  br i1 %.not564, label %.loopexit, label %.lr.ph551.preheader

.lr.ph551.preheader:                              ; preds = %.preheader
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %32) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %33) #13
  %446 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef 0) #13
  %447 = load ptr, ptr %446, align 8, !tbaa !36
  %448 = getelementptr inbounds i8, ptr %447, i64 56
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull align 8 dereferenceable(32) %448)
          to label %449 unwind label %.loopexit.split-lp584

449:                                              ; preds = %.lr.ph551.preheader
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %32, ptr noundef nonnull align 8 dereferenceable(32) %33, ptr noundef nonnull @.str.68)
          to label %450 unwind label %.loopexit.split-lp589

450:                                              ; preds = %449
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #13
  %451 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef 0) #13
  %452 = load ptr, ptr %451, align 8, !tbaa !36
  invoke void @_ZN5clnet18save_tensor_as_csvEPNS_6TensorERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_14DeviceInstanceEb(ptr noundef %452, ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull %0, i1 noundef zeroext true)
          to label %453 unwind label %.loopexit.split-lp594

453:                                              ; preds = %450
  %454 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef 0) #13
  %455 = load ptr, ptr %454, align 8, !tbaa !36
  %456 = getelementptr inbounds i8, ptr %455, i64 56
  %457 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull align 8 dereferenceable(32) %456)
          to label %458 unwind label %.loopexit.split-lp594

458:                                              ; preds = %453
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #13
  %459 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  %460 = icmp ugt i64 %459, 1
  br i1 %460, label %.lr.ph551, label %.loopexit

461:                                              ; preds = %522, %520, %518, %.loopexit
  %462 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %525

.lr.ph551:                                        ; preds = %458, %480
  %.0277550 = phi i64 [ %481, %480 ], [ 1, %458 ]
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %32) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %33) #13
  %463 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %.0277550) #13
  %464 = load ptr, ptr %463, align 8, !tbaa !36
  %465 = getelementptr inbounds i8, ptr %464, i64 56
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull align 8 dereferenceable(32) %465)
          to label %466 unwind label %.loopexit583

466:                                              ; preds = %.lr.ph551
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %32, ptr noundef nonnull align 8 dereferenceable(32) %33, ptr noundef nonnull @.str.68)
          to label %467 unwind label %.loopexit588

467:                                              ; preds = %466
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #13
  %468 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %.0277550) #13
  %469 = load ptr, ptr %468, align 8, !tbaa !36
  invoke void @_ZN5clnet18save_tensor_as_csvEPNS_6TensorERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_14DeviceInstanceEb(ptr noundef %469, ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull %0, i1 noundef zeroext true)
          to label %470 unwind label %.loopexit593

470:                                              ; preds = %467
  %471 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull @.str.69)
          to label %475 unwind label %.loopexit593

.loopexit583:                                     ; preds = %.lr.ph551
  %lpad.loopexit585 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %473

.loopexit.split-lp584:                            ; preds = %.lr.ph551.preheader
  %lpad.loopexit.split-lp586 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %473

.loopexit588:                                     ; preds = %466
  %lpad.loopexit590 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %472

.loopexit.split-lp589:                            ; preds = %449
  %lpad.loopexit.split-lp591 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %472

472:                                              ; preds = %.loopexit.split-lp589, %.loopexit588
  %lpad.phi592 = phi { ptr, i32 } [ %lpad.loopexit590, %.loopexit588 ], [ %lpad.loopexit.split-lp591, %.loopexit.split-lp589 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #13
  br label %473

473:                                              ; preds = %.loopexit583, %.loopexit.split-lp584, %472
  %.pn440 = phi { ptr, i32 } [ %lpad.phi592, %472 ], [ %lpad.loopexit585, %.loopexit583 ], [ %lpad.loopexit.split-lp586, %.loopexit.split-lp584 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #13
  br label %484

.loopexit593:                                     ; preds = %467, %470, %475
  %lpad.loopexit595 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %474

.loopexit.split-lp594:                            ; preds = %450, %453
  %lpad.loopexit.split-lp596 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %474

474:                                              ; preds = %.loopexit.split-lp594, %.loopexit593
  %lpad.phi597 = phi { ptr, i32 } [ %lpad.loopexit595, %.loopexit593 ], [ %lpad.loopexit.split-lp596, %.loopexit.split-lp594 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #13
  br label %484

475:                                              ; preds = %470
  %476 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %.0277550) #13
  %477 = load ptr, ptr %476, align 8, !tbaa !36
  %478 = getelementptr inbounds i8, ptr %477, i64 56
  %479 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull align 8 dereferenceable(32) %478)
          to label %480 unwind label %.loopexit593

480:                                              ; preds = %475
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #13
  %481 = add nuw i64 %.0277550, 1
  %482 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  %483 = icmp ult i64 %481, %482
  br i1 %483, label %.lr.ph551, label %.loopexit, !llvm.loop !45

484:                                              ; preds = %474, %473
  %.pn443 = phi { ptr, i32 } [ %lpad.phi597, %474 ], [ %.pn440, %473 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #13
  br label %525

485:                                              ; preds = %443
  call void @llvm.lifetime.start.p0(i64 512, ptr nonnull %34) #13
  invoke void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(248) %34, ptr noundef nonnull align 8 dereferenceable(32) %23, i32 noundef 4)
          to label %.preheader520 unwind label %497

.preheader520:                                    ; preds = %485
  %486 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  %.not563 = icmp eq i64 %486, 0
  br i1 %.not563, label %._crit_edge549, label %.lr.ph548.preheader

.lr.ph548.preheader:                              ; preds = %.preheader520
  %487 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef 0) #13
  %488 = load ptr, ptr %487, align 8, !tbaa !36
  invoke void @_ZN5clnet11save_tensorEPNS_6TensorERSoPNS_14DeviceInstanceE(ptr noundef %488, ptr noundef nonnull align 8 dereferenceable(8) %34, ptr noundef nonnull %0)
          to label %489 unwind label %.loopexit.split-lp578

489:                                              ; preds = %.lr.ph548.preheader
  %490 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef 0) #13
  %491 = load ptr, ptr %490, align 8, !tbaa !36
  %492 = getelementptr inbounds i8, ptr %491, i64 56
  %493 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull align 8 dereferenceable(32) %492)
          to label %494 unwind label %.loopexit.split-lp578

494:                                              ; preds = %489
  %495 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  %496 = icmp ugt i64 %495, 1
  br i1 %496, label %.lr.ph548, label %._crit_edge549

._crit_edge549:                                   ; preds = %508, %494, %.preheader520
  invoke void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(248) %34)
          to label %512 unwind label %513

497:                                              ; preds = %485
  %498 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %516

.lr.ph548:                                        ; preds = %494, %508
  %.0278547 = phi i64 [ %509, %508 ], [ 1, %494 ]
  %499 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %.0278547) #13
  %500 = load ptr, ptr %499, align 8, !tbaa !36
  invoke void @_ZN5clnet11save_tensorEPNS_6TensorERSoPNS_14DeviceInstanceE(ptr noundef %500, ptr noundef nonnull align 8 dereferenceable(8) %34, ptr noundef nonnull %0)
          to label %501 unwind label %.loopexit577

501:                                              ; preds = %.lr.ph548
  %502 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull @.str.69)
          to label %503 unwind label %.loopexit577

.loopexit577:                                     ; preds = %.lr.ph548, %501, %503
  %lpad.loopexit579 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %515

.loopexit.split-lp578:                            ; preds = %.lr.ph548.preheader, %489
  %lpad.loopexit.split-lp580 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %515

503:                                              ; preds = %501
  %504 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %.0278547) #13
  %505 = load ptr, ptr %504, align 8, !tbaa !36
  %506 = getelementptr inbounds i8, ptr %505, i64 56
  %507 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull align 8 dereferenceable(32) %506)
          to label %508 unwind label %.loopexit577

508:                                              ; preds = %503
  %509 = add nuw i64 %.0278547, 1
  %510 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  %511 = icmp ult i64 %509, %510
  br i1 %511, label %.lr.ph548, label %._crit_edge549, !llvm.loop !47

512:                                              ; preds = %._crit_edge549
  call void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(248) %34) #13
  call void @llvm.lifetime.end.p0(i64 512, ptr nonnull %34) #13
  br label %.loopexit

513:                                              ; preds = %._crit_edge549
  %514 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %515

515:                                              ; preds = %.loopexit577, %.loopexit.split-lp578, %513
  %.pn437 = phi { ptr, i32 } [ %514, %513 ], [ %lpad.loopexit579, %.loopexit577 ], [ %lpad.loopexit.split-lp580, %.loopexit.split-lp578 ]
  call void @_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(248) %34) #13
  br label %516

516:                                              ; preds = %515, %497
  %.pn437.pn = phi { ptr, i32 } [ %.pn437, %515 ], [ %498, %497 ]
  call void @llvm.lifetime.end.p0(i64 512, ptr nonnull %34) #13
  br label %525

.loopexit:                                        ; preds = %480, %458, %.preheader, %512
  %517 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA21_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(21) @.str.70)
          to label %518 unwind label %461

518:                                              ; preds = %.loopexit
  %519 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %517, ptr noundef nonnull align 8 dereferenceable(32) %24)
          to label %520 unwind label %461

520:                                              ; preds = %518
  %521 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA8_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %519, ptr noundef nonnull align 1 dereferenceable(8) @.str.71)
          to label %522 unwind label %461

522:                                              ; preds = %520
  %523 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %521, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %524 unwind label %461

524:                                              ; preds = %522
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %25) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %24) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #13
  br label %1435

525:                                              ; preds = %516, %484, %461, %442, %413
  %.pn446 = phi { ptr, i32 } [ %414, %413 ], [ %.pn443, %484 ], [ %462, %461 ], [ %.pn437.pn, %516 ], [ %.pn432.pn.pn, %442 ]
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %25) #13
  br label %526

526:                                              ; preds = %525, %405
  %.pn446.pn = phi { ptr, i32 } [ %.pn446, %525 ], [ %406, %405 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %24) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #13
  br label %1420

527:                                              ; preds = %393
  %528 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.72)
  br i1 %528, label %531, label %529

529:                                              ; preds = %527
  %530 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.73)
  br i1 %530, label %531, label %643

531:                                              ; preds = %529, %527
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %35) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %36) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #13
  %532 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %35)
          to label %533 unwind label %541

533:                                              ; preds = %531
  %534 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %36)
          to label %535 unwind label %541

535:                                              ; preds = %533
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %37) #13
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37) #13
  %536 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull @.str.67, i64 noundef 0) #13
  %.not415 = icmp eq i64 %536, -1
  br i1 %.not415, label %554, label %537

537:                                              ; preds = %535
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %38) #13
  %538 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  store ptr %538, ptr %38, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %39) #13
  %539 = call ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5clnet6Tensor3ALLE) #13
  store ptr %539, ptr %39, align 8
  %540 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %38, ptr noundef nonnull align 8 dereferenceable(8) %39) #13
  br i1 %540, label %.lr.ph, label %._crit_edge

._crit_edge:                                      ; preds = %.thread485, %537
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %39) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %38) #13
  br label %571

541:                                              ; preds = %533, %531
  %542 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %642

.lr.ph:                                           ; preds = %537, %.thread485
  %543 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %38) #13
  %544 = load ptr, ptr %543, align 8, !tbaa !36
  %545 = icmp eq ptr %544, null
  br i1 %545, label %.thread485, label %546

546:                                              ; preds = %.lr.ph
  %547 = call ptr @__dynamic_cast(ptr nonnull %544, ptr nonnull @_ZTIN5clnet6TensorE, ptr nonnull @_ZTIN5clnet4type9ParameterE, i64 0) #13
  %.not427 = icmp eq ptr %547, null
  br i1 %.not427, label %.thread485, label %548

548:                                              ; preds = %546
  %549 = getelementptr inbounds i8, ptr %544, i64 56
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE9push_backERKS5_(ptr noundef nonnull align 8 dereferenceable(24) %37, ptr noundef nonnull align 8 dereferenceable(32) %549)
          to label %.thread485 unwind label %550

550:                                              ; preds = %548
  %551 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %39) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %38) #13
  br label %641

.thread485:                                       ; preds = %.lr.ph, %548, %546
  %552 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %38) #13
  %553 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN5clnet6TensorESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %38, ptr noundef nonnull align 8 dereferenceable(8) %39) #13
  br i1 %553, label %.lr.ph, label %._crit_edge

554:                                              ; preds = %535
  call void @llvm.lifetime.start.p0(i64 392, ptr nonnull %40) #13
  invoke void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(128) %40)
          to label %555 unwind label %566

555:                                              ; preds = %554
  %556 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %143, ptr noundef nonnull align 8 dereferenceable(32) %36)
          to label %.preheader524 unwind label %.loopexit.split-lp526

.preheader524:                                    ; preds = %555, %565
  %557 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) %40, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %558 unwind label %.loopexit525

558:                                              ; preds = %.preheader524
  %559 = load ptr, ptr %557, align 8, !tbaa !41
  %560 = getelementptr i8, ptr %559, i64 -24
  %561 = load i64, ptr %560, align 8
  %562 = getelementptr inbounds i8, ptr %557, i64 %561
  %563 = invoke noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEEcvbEv(ptr noundef nonnull align 8 dereferenceable(264) %562)
          to label %564 unwind label %.loopexit525

564:                                              ; preds = %558
  br i1 %563, label %565, label %569

565:                                              ; preds = %564
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE9push_backERKS5_(ptr noundef nonnull align 8 dereferenceable(24) %37, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %.preheader524 unwind label %.loopexit525, !llvm.loop !48

566:                                              ; preds = %554
  %567 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %570

.loopexit525:                                     ; preds = %.preheader524, %558, %565
  %lpad.loopexit527 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %568

.loopexit.split-lp526:                            ; preds = %555
  %lpad.loopexit.split-lp528 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %568

568:                                              ; preds = %.loopexit.split-lp526, %.loopexit525
  %lpad.phi529 = phi { ptr, i32 } [ %lpad.loopexit527, %.loopexit525 ], [ %lpad.loopexit.split-lp528, %.loopexit.split-lp526 ]
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %40) #13
  br label %570

569:                                              ; preds = %564
  call void @_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(128) %40) #13
  call void @llvm.lifetime.end.p0(i64 392, ptr nonnull %40) #13
  br label %571

570:                                              ; preds = %568, %566
  %.pn416 = phi { ptr, i32 } [ %lpad.phi529, %568 ], [ %567, %566 ]
  call void @llvm.lifetime.end.p0(i64 392, ptr nonnull %40) #13
  br label %641

571:                                              ; preds = %569, %._crit_edge
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %36) #13
  %572 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.73)
  br i1 %572, label %573, label %602

573:                                              ; preds = %571
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %41) #13
  %574 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %37) #13
  store ptr %574, ptr %41, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %42) #13
  %575 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %37) #13
  store ptr %575, ptr %42, align 8
  %576 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEEbRKNS_17__normal_iteratorIT_T0_EESG_(ptr noundef nonnull align 8 dereferenceable(8) %41, ptr noundef nonnull align 8 dereferenceable(8) %42) #13
  br i1 %576, label %.lr.ph542, label %._crit_edge543

._crit_edge543:                                   ; preds = %598, %573
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %42) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %41) #13
  br label %632

577:                                              ; preds = %638, %636, %634, %632
  %578 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %641

.lr.ph542:                                        ; preds = %573, %598
  %579 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %41) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %43) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %44) #13
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %44, ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull align 8 dereferenceable(32) %579)
          to label %580 unwind label %588

580:                                              ; preds = %.lr.ph542
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %43, ptr noundef nonnull align 8 dereferenceable(32) %44, ptr noundef nonnull @.str.68)
          to label %581 unwind label %590

581:                                              ; preds = %580
  %582 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %579, ptr noundef nonnull align 8 dereferenceable(32) %43) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #13
  %583 = invoke noundef ptr @_ZN5clnet20load_tensor_from_csvERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS_6TensorEPNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(32) %579, ptr noundef null, ptr noundef nonnull %0)
          to label %584 unwind label %593

584:                                              ; preds = %581
  %585 = call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %36) #13
  br i1 %585, label %595, label %586

586:                                              ; preds = %584
  %587 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull @.str.69)
          to label %595 unwind label %593

588:                                              ; preds = %.lr.ph542
  %589 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %592

590:                                              ; preds = %580
  %591 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #13
  br label %592

592:                                              ; preds = %590, %588
  %.pn423 = phi { ptr, i32 } [ %591, %590 ], [ %589, %588 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #13
  br label %601

593:                                              ; preds = %595, %586, %581
  %594 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %601

595:                                              ; preds = %586, %584
  %596 = getelementptr inbounds i8, ptr %583, i64 56
  %597 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull align 8 dereferenceable(32) %596)
          to label %598 unwind label %593

598:                                              ; preds = %595
  %599 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %41) #13
  %600 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEEbRKNS_17__normal_iteratorIT_T0_EESG_(ptr noundef nonnull align 8 dereferenceable(8) %41, ptr noundef nonnull align 8 dereferenceable(8) %42) #13
  br i1 %600, label %.lr.ph542, label %._crit_edge543

601:                                              ; preds = %593, %592
  %.pn425 = phi { ptr, i32 } [ %594, %593 ], [ %.pn423, %592 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %42) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %41) #13
  br label %641

602:                                              ; preds = %571
  call void @llvm.lifetime.start.p0(i64 520, ptr nonnull %45) #13
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1ERKNSt7__cxx1112basic_stringIcS1_SaIcEEESt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256) %45, ptr noundef nonnull align 8 dereferenceable(32) %35, i32 noundef 4)
          to label %603 unwind label %613

603:                                              ; preds = %602
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %46) #13
  invoke void @_ZN5clnet12load_tensorsERSiPNS_14DeviceInstanceE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.17") align 8 %46, ptr noundef nonnull align 8 dereferenceable(16) %45, ptr noundef nonnull %0)
          to label %604 unwind label %615

604:                                              ; preds = %603
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(256) %45)
          to label %.preheader523 unwind label %617

.preheader523:                                    ; preds = %604
  %605 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %46) #13
  %.not562 = icmp eq i64 %605, 0
  br i1 %.not562, label %._crit_edge540, label %.lr.ph539.preheader

.lr.ph539.preheader:                              ; preds = %.preheader523
  %606 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %46, i64 noundef 0) #13
  %607 = load ptr, ptr %606, align 8, !tbaa !36
  %608 = getelementptr inbounds i8, ptr %607, i64 56
  %609 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull align 8 dereferenceable(32) %608)
          to label %610 unwind label %.loopexit.split-lp573

610:                                              ; preds = %.lr.ph539.preheader
  %611 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %46) #13
  %612 = icmp ugt i64 %611, 1
  br i1 %612, label %.lr.ph539.peel.next, label %._crit_edge540

._crit_edge540:                                   ; preds = %625, %610, %.preheader523
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %46) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %46) #13
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %45) #13
  call void @llvm.lifetime.end.p0(i64 520, ptr nonnull %45) #13
  br label %632

613:                                              ; preds = %602
  %614 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %631

615:                                              ; preds = %603
  %616 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %630

617:                                              ; preds = %604
  %618 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %629

.lr.ph539.peel.next:                              ; preds = %610, %625
  %.0281538 = phi i64 [ %626, %625 ], [ 1, %610 ]
  %619 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull @.str.69)
          to label %620 unwind label %.loopexit572

.loopexit572:                                     ; preds = %.lr.ph539.peel.next, %620
  %lpad.loopexit574 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %629

.loopexit.split-lp573:                            ; preds = %.lr.ph539.preheader
  %lpad.loopexit.split-lp575 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %629

620:                                              ; preds = %.lr.ph539.peel.next
  %621 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %46, i64 noundef %.0281538) #13
  %622 = load ptr, ptr %621, align 8, !tbaa !36
  %623 = getelementptr inbounds i8, ptr %622, i64 56
  %624 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull align 8 dereferenceable(32) %623)
          to label %625 unwind label %.loopexit572

625:                                              ; preds = %620
  %626 = add nuw i64 %.0281538, 1
  %627 = call noundef i64 @_ZNKSt6vectorIPN5clnet6TensorESaIS2_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %46) #13
  %628 = icmp ult i64 %626, %627
  br i1 %628, label %.lr.ph539.peel.next, label %._crit_edge540, !llvm.loop !49

629:                                              ; preds = %.loopexit572, %.loopexit.split-lp573, %617
  %.pn419 = phi { ptr, i32 } [ %618, %617 ], [ %lpad.loopexit574, %.loopexit572 ], [ %lpad.loopexit.split-lp575, %.loopexit.split-lp573 ]
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %46) #13
  br label %630

630:                                              ; preds = %629, %615
  %.pn419.pn = phi { ptr, i32 } [ %.pn419, %629 ], [ %616, %615 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %46) #13
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %45) #13
  br label %631

631:                                              ; preds = %630, %613
  %.pn419.pn.pn = phi { ptr, i32 } [ %.pn419.pn, %630 ], [ %614, %613 ]
  call void @llvm.lifetime.end.p0(i64 520, ptr nonnull %45) #13
  br label %641

632:                                              ; preds = %._crit_edge540, %._crit_edge543
  %633 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA21_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(21) @.str.70)
          to label %634 unwind label %577

634:                                              ; preds = %632
  %635 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %633, ptr noundef nonnull align 8 dereferenceable(32) %36)
          to label %636 unwind label %577

636:                                              ; preds = %634
  %637 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA9_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %635, ptr noundef nonnull align 1 dereferenceable(9) @.str.74)
          to label %638 unwind label %577

638:                                              ; preds = %636
  %639 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %637, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %640 unwind label %577

640:                                              ; preds = %638
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %37) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #13
  br label %1435

641:                                              ; preds = %631, %601, %577, %570, %550
  %.pn428 = phi { ptr, i32 } [ %551, %550 ], [ %.pn425, %601 ], [ %578, %577 ], [ %.pn419.pn.pn, %631 ], [ %.pn416, %570 ]
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %37) #13
  br label %642

642:                                              ; preds = %641, %541
  %.pn428.pn = phi { ptr, i32 } [ %.pn428, %641 ], [ %542, %541 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #13
  br label %1420

643:                                              ; preds = %529
  %644 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.75)
  br i1 %644, label %645, label %650

645:                                              ; preds = %643
  %646 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA39_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(39) @.str.76)
          to label %647 unwind label %162

647:                                              ; preds = %645
  %648 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %646, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %649 unwind label %162

649:                                              ; preds = %647
  store ptr null, ptr @_ZN5clnet8debuggerE, align 8, !tbaa !36
  store ptr null, ptr @_ZN5clnet11_breakpointE, align 8, !tbaa !36
  call void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48) @_ZN5clnet10breakpointE) #13
  br label %1435

650:                                              ; preds = %643
  %651 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.77)
  br i1 %651, label %652, label %657

652:                                              ; preds = %650
  %653 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA27_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(27) @.str.78)
          to label %654 unwind label %162

654:                                              ; preds = %652
  %655 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %653, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %656 unwind label %162

656:                                              ; preds = %654
  call void @exit(i32 noundef 1) #15
  unreachable

657:                                              ; preds = %650
  %658 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.79)
  br i1 %658, label %661, label %659

659:                                              ; preds = %657
  %660 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.80)
  br i1 %660, label %661, label %703

661:                                              ; preds = %659, %657
  %662 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA33_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(33) @.str.81)
          to label %663 unwind label %162

663:                                              ; preds = %661
  %664 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA141_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(141) @.str.82)
          to label %665 unwind label %162

665:                                              ; preds = %663
  %666 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA107_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(107) @.str.83)
          to label %667 unwind label %162

667:                                              ; preds = %665
  %668 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA143_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(143) @.str.84)
          to label %669 unwind label %162

669:                                              ; preds = %667
  %670 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA122_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(122) @.str.85)
          to label %671 unwind label %162

671:                                              ; preds = %669
  %672 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA149_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(149) @.str.86)
          to label %673 unwind label %162

673:                                              ; preds = %671
  %674 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA103_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(103) @.str.87)
          to label %675 unwind label %162

675:                                              ; preds = %673
  %676 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(76) @.str.88)
          to label %677 unwind label %162

677:                                              ; preds = %675
  %678 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA64_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(64) @.str.89)
          to label %679 unwind label %162

679:                                              ; preds = %677
  %680 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA101_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(101) @.str.90)
          to label %681 unwind label %162

681:                                              ; preds = %679
  %682 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA140_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(140) @.str.91)
          to label %683 unwind label %162

683:                                              ; preds = %681
  %684 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA92_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(92) @.str.92)
          to label %685 unwind label %162

685:                                              ; preds = %683
  %686 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA96_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(96) @.str.93)
          to label %687 unwind label %162

687:                                              ; preds = %685
  %688 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(76) @.str.94)
          to label %689 unwind label %162

689:                                              ; preds = %687
  %690 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA67_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(67) @.str.95)
          to label %691 unwind label %162

691:                                              ; preds = %689
  %692 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA101_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(101) @.str.96)
          to label %693 unwind label %162

693:                                              ; preds = %691
  %694 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA119_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(119) @.str.97)
          to label %695 unwind label %162

695:                                              ; preds = %693
  %696 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA103_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(103) @.str.98)
          to label %697 unwind label %162

697:                                              ; preds = %695
  %698 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA121_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(121) @.str.99)
          to label %699 unwind label %162

699:                                              ; preds = %697
  %700 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(76) @.str.100)
          to label %.invoke unwind label %162

.invoke:                                          ; preds = %699, %215
  %701 = phi ptr [ %216, %215 ], [ @_ZN5clnet6loggerE, %699 ]
  %702 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %701, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1435 unwind label %162

703:                                              ; preds = %659
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %47) #13
  call void @_ZNSt6vectorIxSaIxEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %47) #13
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %48) #13
  call void @_ZNSt6vectorIxSaIxEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #13
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %49) #13
  call void @_ZNSt6vectorIxSaIxEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %50) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #13
  %704 = call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  br i1 %704, label %1414, label %705

705:                                              ; preds = %703
  %706 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef 0)
  %707 = load i8, ptr %706, align 1, !tbaa !50
  %708 = icmp eq i8 %707, 94
  br i1 %708, label %709, label %721

709:                                              ; preds = %705
  %710 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef 1)
  %711 = load i8, ptr %710, align 1, !tbaa !50
  %712 = icmp eq i8 %711, 94
  %713 = select i1 %712, i32 2, i32 1
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %51) #13
  %714 = zext nneg i32 %713 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %51, ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef %714, i64 noundef -1)
          to label %715 unwind label %719

715:                                              ; preds = %709
  %716 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull align 8 dereferenceable(32) %51) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #13
  br label %721

717:                                              ; preds = %1092
  %718 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1419

719:                                              ; preds = %709
  %720 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #13
  br label %1419

721:                                              ; preds = %705, %715
  %.0282 = phi i32 [ %713, %715 ], [ 0, %705 ]
  %722 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef 0)
  %723 = load i8, ptr %722, align 1, !tbaa !50
  %.not = icmp eq i8 %723, 91
  br i1 %.not, label %1092, label %724

724:                                              ; preds = %721
  %725 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.11, i64 noundef 0) #13
  %.not304 = icmp eq i64 %725, -1
  br i1 %.not304, label %1064, label %726

726:                                              ; preds = %724
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %52) #13
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %52, ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef 0, i64 noundef %725)
          to label %727 unwind label %741

727:                                              ; preds = %726
  %728 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull align 8 dereferenceable(32) %52) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %52) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %53, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %729 unwind label %743

729:                                              ; preds = %727
  %730 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull %53)
          to label %731 unwind label %745

731:                                              ; preds = %729
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %54) #13
  %732 = add nuw i64 %725, 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %54, ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef %732, i64 noundef -1)
          to label %733 unwind label %747

733:                                              ; preds = %731
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %55) #13
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %55) #13
  %734 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull @.str.101, i64 noundef 0) #13
  %735 = icmp eq i64 %734, 0
  br i1 %735, label %736, label %751

736:                                              ; preds = %733
  %737 = getelementptr inbounds i8, ptr %730, i64 88
  %738 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(24) %55, ptr noundef nonnull align 8 dereferenceable(24) %737)
          to label %739 unwind label %749

739:                                              ; preds = %736
  %740 = add i64 %725, 7
  br label %1033

741:                                              ; preds = %726
  %742 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %52) #13
  br label %1419

743:                                              ; preds = %1086, %1084, %1069, %727
  %744 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1419

745:                                              ; preds = %729
  %746 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #13
  br label %1419

747:                                              ; preds = %731
  %748 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1063

749:                                              ; preds = %754, %736
  %750 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1062

751:                                              ; preds = %733
  %752 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull @.str.102, i64 noundef 0) #13
  %753 = icmp eq i64 %752, 0
  br i1 %753, label %754, label %759

754:                                              ; preds = %751
  %755 = getelementptr inbounds i8, ptr %730, i64 32
  %756 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(24) %55, ptr noundef nonnull align 8 dereferenceable(24) %755)
          to label %757 unwind label %749

757:                                              ; preds = %754
  %758 = add i64 %725, 8
  br label %1033

759:                                              ; preds = %751
  %760 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull @.str.103)
  br i1 %760, label %761, label %840

761:                                              ; preds = %759
  %762 = icmp eq ptr %730, null
  br i1 %762, label %.thread487, label %763

763:                                              ; preds = %761
  %764 = call ptr @__dynamic_cast(ptr nonnull %730, ptr nonnull @_ZTIN5clnet6TensorE, ptr nonnull @_ZTIN5clnet4type32StochasticGradientDescentUpdaterE, i64 0) #13
  %765 = getelementptr inbounds i8, ptr %764, i64 152
  %766 = icmp eq ptr %764, null
  br i1 %766, label %.thread487, label %776

.thread487:                                       ; preds = %761, %763
  %767 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %56) #13
  %768 = getelementptr inbounds i8, ptr %730, i64 56
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %56, ptr noundef nonnull align 8 dereferenceable(32) %768, ptr noundef nonnull @.str.104)
          to label %769 unwind label %.thread488

769:                                              ; preds = %.thread487
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %767, ptr noundef nonnull align 8 dereferenceable(32) %56)
          to label %771 unwind label %.thread492

.thread492:                                       ; preds = %769
  %770 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #13
  br label %775

771:                                              ; preds = %769
  invoke void @__cxa_throw(ptr nonnull %767, ptr nonnull @_ZTISt13runtime_error, ptr nonnull @_ZNSt13runtime_errorD1Ev) #16
          to label %1469 unwind label %773

.thread488:                                       ; preds = %.thread487
  %772 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #13
  br label %775

773:                                              ; preds = %771
  %774 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #13
  br label %1062

775:                                              ; preds = %.thread492, %.thread488
  %.pn339491 = phi { ptr, i32 } [ %772, %.thread488 ], [ %770, %.thread492 ]
  call void @__cxa_free_exception(ptr %767) #13
  br label %1062

776:                                              ; preds = %763
  %777 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %778 unwind label %824

778:                                              ; preds = %776
  %779 = getelementptr inbounds i8, ptr %730, i64 56
  %780 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %777, ptr noundef nonnull align 8 dereferenceable(32) %779)
          to label %781 unwind label %824

781:                                              ; preds = %778
  %782 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA18_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %780, ptr noundef nonnull align 1 dereferenceable(18) @.str.106)
          to label %783 unwind label %824

783:                                              ; preds = %781
  %784 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %782, ptr noundef nonnull align 4 dereferenceable(4) %765)
          to label %785 unwind label %824

785:                                              ; preds = %783
  %786 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %784, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %787 unwind label %824

787:                                              ; preds = %785
  %788 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %789 unwind label %826

789:                                              ; preds = %787
  %sext.mask332 = and i32 %788, 255
  %.not331 = icmp eq i32 %sext.mask332, 10
  br i1 %.not331, label %1061, label %790

790:                                              ; preds = %789
  %791 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %792 unwind label %826

792:                                              ; preds = %790
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %57) #13
  %793 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %57)
          to label %794 unwind label %828

794:                                              ; preds = %792
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %58) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %795 unwind label %830

795:                                              ; preds = %794
  %796 = load float, ptr %57, align 4, !tbaa !51
  invoke void @_ZN5clnet17unitary_operationIfEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind nonnull writable sret(%"class.std::function") align 8 %58, ptr noundef nonnull %59, float noundef %796)
          to label %797 unwind label %832

797:                                              ; preds = %795
  invoke void @_ZNKSt8functionIFvRfEEclES0_(ptr noundef nonnull align 8 dereferenceable(32) %58, ptr noundef nonnull align 4 dereferenceable(4) %765)
          to label %798 unwind label %834

798:                                              ; preds = %797
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %58) #13
  %799 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %800 unwind label %828

800:                                              ; preds = %798
  %801 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %799, ptr noundef nonnull align 8 dereferenceable(32) %779)
          to label %802 unwind label %828

802:                                              ; preds = %800
  %803 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA16_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %801, ptr noundef nonnull align 1 dereferenceable(16) @.str.107)
          to label %804 unwind label %828

804:                                              ; preds = %802
  %805 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %803, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %806 unwind label %828

806:                                              ; preds = %804
  %807 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %805, ptr noundef nonnull align 1 dereferenceable(2) @.str.108)
          to label %808 unwind label %828

808:                                              ; preds = %806
  %809 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %807, ptr noundef nonnull align 4 dereferenceable(4) %57)
          to label %810 unwind label %828

810:                                              ; preds = %808
  %811 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %809, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %812 unwind label %828

812:                                              ; preds = %810
  %813 = call noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull @.str.109)
  br i1 %813, label %814, label %838

814:                                              ; preds = %812
  %815 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %816 unwind label %828

816:                                              ; preds = %814
  %817 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %815, ptr noundef nonnull align 8 dereferenceable(32) %779)
          to label %818 unwind label %828

818:                                              ; preds = %816
  %819 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA18_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %817, ptr noundef nonnull align 1 dereferenceable(18) @.str.106)
          to label %820 unwind label %828

820:                                              ; preds = %818
  %821 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %819, ptr noundef nonnull align 4 dereferenceable(4) %765)
          to label %822 unwind label %828

822:                                              ; preds = %820
  %823 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %821, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %838 unwind label %828

824:                                              ; preds = %785, %783, %781, %778, %776
  %825 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1062

826:                                              ; preds = %790, %787
  %827 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1062

828:                                              ; preds = %822, %820, %818, %816, %814, %810, %808, %806, %804, %802, %800, %798, %792
  %829 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %839

830:                                              ; preds = %794
  %831 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %837

832:                                              ; preds = %795
  %833 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %836

834:                                              ; preds = %797
  %835 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #13
  br label %836

836:                                              ; preds = %834, %832
  %.pn333 = phi { ptr, i32 } [ %835, %834 ], [ %833, %832 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #13
  br label %837

837:                                              ; preds = %836, %830
  %.pn333.pn = phi { ptr, i32 } [ %.pn333, %836 ], [ %831, %830 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %58) #13
  br label %839

838:                                              ; preds = %822, %812
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %57) #13
  br label %1061

839:                                              ; preds = %837, %828
  %.pn336 = phi { ptr, i32 } [ %829, %828 ], [ %.pn333.pn, %837 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %57) #13
  br label %1062

840:                                              ; preds = %759
  %841 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull @.str.110)
  br i1 %841, label %842, label %921

842:                                              ; preds = %840
  %843 = icmp eq ptr %730, null
  br i1 %843, label %.thread494, label %844

844:                                              ; preds = %842
  %845 = call ptr @__dynamic_cast(ptr nonnull %730, ptr nonnull @_ZTIN5clnet6TensorE, ptr nonnull @_ZTIN5clnet4type32StochasticGradientDescentUpdaterE, i64 0) #13
  %846 = getelementptr inbounds i8, ptr %845, i64 156
  %847 = icmp eq ptr %845, null
  br i1 %847, label %.thread494, label %857

.thread494:                                       ; preds = %842, %844
  %848 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %60) #13
  %849 = getelementptr inbounds i8, ptr %730, i64 56
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %60, ptr noundef nonnull align 8 dereferenceable(32) %849, ptr noundef nonnull @.str.104)
          to label %850 unwind label %.thread495

850:                                              ; preds = %.thread494
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %848, ptr noundef nonnull align 8 dereferenceable(32) %60)
          to label %852 unwind label %.thread499

.thread499:                                       ; preds = %850
  %851 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %60) #13
  br label %856

852:                                              ; preds = %850
  invoke void @__cxa_throw(ptr nonnull %848, ptr nonnull @_ZTISt13runtime_error, ptr nonnull @_ZNSt13runtime_errorD1Ev) #16
          to label %1469 unwind label %854

.thread495:                                       ; preds = %.thread494
  %853 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %60) #13
  br label %856

854:                                              ; preds = %852
  %855 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %60) #13
  br label %1062

856:                                              ; preds = %.thread499, %.thread495
  %.pn328498 = phi { ptr, i32 } [ %853, %.thread495 ], [ %851, %.thread499 ]
  call void @__cxa_free_exception(ptr %848) #13
  br label %1062

857:                                              ; preds = %844
  %858 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %859 unwind label %905

859:                                              ; preds = %857
  %860 = getelementptr inbounds i8, ptr %730, i64 56
  %861 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %858, ptr noundef nonnull align 8 dereferenceable(32) %860)
          to label %862 unwind label %905

862:                                              ; preds = %859
  %863 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA17_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %861, ptr noundef nonnull align 1 dereferenceable(17) @.str.111)
          to label %864 unwind label %905

864:                                              ; preds = %862
  %865 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %863, ptr noundef nonnull align 4 dereferenceable(4) %846)
          to label %866 unwind label %905

866:                                              ; preds = %864
  %867 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %865, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %868 unwind label %905

868:                                              ; preds = %866
  %869 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %870 unwind label %907

870:                                              ; preds = %868
  %sext.mask321 = and i32 %869, 255
  %.not320 = icmp eq i32 %sext.mask321, 10
  br i1 %.not320, label %1061, label %871

871:                                              ; preds = %870
  %872 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %873 unwind label %907

873:                                              ; preds = %871
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %61) #13
  %874 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %61)
          to label %875 unwind label %909

875:                                              ; preds = %873
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %62) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %876 unwind label %911

876:                                              ; preds = %875
  %877 = load float, ptr %61, align 4, !tbaa !51
  invoke void @_ZN5clnet17unitary_operationIfEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind nonnull writable sret(%"class.std::function") align 8 %62, ptr noundef nonnull %63, float noundef %877)
          to label %878 unwind label %913

878:                                              ; preds = %876
  invoke void @_ZNKSt8functionIFvRfEEclES0_(ptr noundef nonnull align 8 dereferenceable(32) %62, ptr noundef nonnull align 4 dereferenceable(4) %846)
          to label %879 unwind label %915

879:                                              ; preds = %878
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #13
  %880 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %881 unwind label %909

881:                                              ; preds = %879
  %882 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %880, ptr noundef nonnull align 8 dereferenceable(32) %860)
          to label %883 unwind label %909

883:                                              ; preds = %881
  %884 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %882, ptr noundef nonnull align 1 dereferenceable(15) @.str.112)
          to label %885 unwind label %909

885:                                              ; preds = %883
  %886 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %884, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %887 unwind label %909

887:                                              ; preds = %885
  %888 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %886, ptr noundef nonnull align 1 dereferenceable(2) @.str.108)
          to label %889 unwind label %909

889:                                              ; preds = %887
  %890 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %888, ptr noundef nonnull align 4 dereferenceable(4) %61)
          to label %891 unwind label %909

891:                                              ; preds = %889
  %892 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %890, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %893 unwind label %909

893:                                              ; preds = %891
  %894 = call noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull @.str.109)
  br i1 %894, label %895, label %919

895:                                              ; preds = %893
  %896 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %897 unwind label %909

897:                                              ; preds = %895
  %898 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %896, ptr noundef nonnull align 8 dereferenceable(32) %860)
          to label %899 unwind label %909

899:                                              ; preds = %897
  %900 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA17_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %898, ptr noundef nonnull align 1 dereferenceable(17) @.str.111)
          to label %901 unwind label %909

901:                                              ; preds = %899
  %902 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %900, ptr noundef nonnull align 4 dereferenceable(4) %846)
          to label %903 unwind label %909

903:                                              ; preds = %901
  %904 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %902, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %919 unwind label %909

905:                                              ; preds = %866, %864, %862, %859, %857
  %906 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1062

907:                                              ; preds = %871, %868
  %908 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1062

909:                                              ; preds = %903, %901, %899, %897, %895, %891, %889, %887, %885, %883, %881, %879, %873
  %910 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %920

911:                                              ; preds = %875
  %912 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %918

913:                                              ; preds = %876
  %914 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %917

915:                                              ; preds = %878
  %916 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #13
  br label %917

917:                                              ; preds = %915, %913
  %.pn322 = phi { ptr, i32 } [ %916, %915 ], [ %914, %913 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #13
  br label %918

918:                                              ; preds = %917, %911
  %.pn322.pn = phi { ptr, i32 } [ %.pn322, %917 ], [ %912, %911 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #13
  br label %920

919:                                              ; preds = %903, %893
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %61) #13
  br label %1061

920:                                              ; preds = %918, %909
  %.pn325 = phi { ptr, i32 } [ %910, %909 ], [ %.pn322.pn, %918 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %61) #13
  br label %1062

921:                                              ; preds = %840
  %922 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull @.str.113)
  br i1 %922, label %923, label %1002

923:                                              ; preds = %921
  %924 = icmp eq ptr %730, null
  br i1 %924, label %.thread501, label %925

925:                                              ; preds = %923
  %926 = call ptr @__dynamic_cast(ptr nonnull %730, ptr nonnull @_ZTIN5clnet6TensorE, ptr nonnull @_ZTIN5clnet4type18IterativeOptimizerE, i64 0) #13
  %927 = getelementptr inbounds i8, ptr %926, i64 152
  %928 = icmp eq ptr %926, null
  br i1 %928, label %.thread501, label %938

.thread501:                                       ; preds = %923, %925
  %929 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %64) #13
  %930 = getelementptr inbounds i8, ptr %730, i64 56
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %64, ptr noundef nonnull align 8 dereferenceable(32) %930, ptr noundef nonnull @.str.104)
          to label %931 unwind label %.thread502

931:                                              ; preds = %.thread501
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %929, ptr noundef nonnull align 8 dereferenceable(32) %64)
          to label %933 unwind label %.thread506

.thread506:                                       ; preds = %931
  %932 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %64) #13
  br label %937

933:                                              ; preds = %931
  invoke void @__cxa_throw(ptr nonnull %929, ptr nonnull @_ZTISt13runtime_error, ptr nonnull @_ZNSt13runtime_errorD1Ev) #16
          to label %1469 unwind label %935

.thread502:                                       ; preds = %.thread501
  %934 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %64) #13
  br label %937

935:                                              ; preds = %933
  %936 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %64) #13
  br label %1062

937:                                              ; preds = %.thread506, %.thread502
  %.pn317505 = phi { ptr, i32 } [ %934, %.thread502 ], [ %932, %.thread506 ]
  call void @__cxa_free_exception(ptr %929) #13
  br label %1062

938:                                              ; preds = %925
  %939 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %940 unwind label %986

940:                                              ; preds = %938
  %941 = getelementptr inbounds i8, ptr %730, i64 56
  %942 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %939, ptr noundef nonnull align 8 dereferenceable(32) %941)
          to label %943 unwind label %986

943:                                              ; preds = %940
  %944 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %942, ptr noundef nonnull align 1 dereferenceable(15) @.str.114)
          to label %945 unwind label %986

945:                                              ; preds = %943
  %946 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %944, ptr noundef nonnull align 8 dereferenceable(8) %927)
          to label %947 unwind label %986

947:                                              ; preds = %945
  %948 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %946, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %949 unwind label %986

949:                                              ; preds = %947
  %950 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %951 unwind label %988

951:                                              ; preds = %949
  %sext.mask = and i32 %950, 255
  %.not310 = icmp eq i32 %sext.mask, 10
  br i1 %.not310, label %1061, label %952

952:                                              ; preds = %951
  %953 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %954 unwind label %988

954:                                              ; preds = %952
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %65) #13
  %955 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERx(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(8) %65)
          to label %956 unwind label %990

956:                                              ; preds = %954
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %66) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %67, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %957 unwind label %992

957:                                              ; preds = %956
  %958 = load i64, ptr %65, align 8, !tbaa !37
  invoke void @_ZN5clnet17unitary_operationIxEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind nonnull writable sret(%"class.std::function.112") align 8 %66, ptr noundef nonnull %67, i64 noundef %958)
          to label %959 unwind label %994

959:                                              ; preds = %957
  invoke void @_ZNKSt8functionIFvRxEEclES0_(ptr noundef nonnull align 8 dereferenceable(32) %66, ptr noundef nonnull align 8 dereferenceable(8) %927)
          to label %960 unwind label %996

960:                                              ; preds = %959
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %66) #13
  %961 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %962 unwind label %990

962:                                              ; preds = %960
  %963 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %961, ptr noundef nonnull align 8 dereferenceable(32) %941)
          to label %964 unwind label %990

964:                                              ; preds = %962
  %965 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA13_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %963, ptr noundef nonnull align 1 dereferenceable(13) @.str.115)
          to label %966 unwind label %990

966:                                              ; preds = %964
  %967 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %965, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %968 unwind label %990

968:                                              ; preds = %966
  %969 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA2_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %967, ptr noundef nonnull align 1 dereferenceable(2) @.str.108)
          to label %970 unwind label %990

970:                                              ; preds = %968
  %971 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %969, ptr noundef nonnull align 8 dereferenceable(8) %65)
          to label %972 unwind label %990

972:                                              ; preds = %970
  %973 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %971, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %974 unwind label %990

974:                                              ; preds = %972
  %975 = call noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull @.str.109)
  br i1 %975, label %976, label %1000

976:                                              ; preds = %974
  %977 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA12_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(12) @.str.105)
          to label %978 unwind label %990

978:                                              ; preds = %976
  %979 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %977, ptr noundef nonnull align 8 dereferenceable(32) %941)
          to label %980 unwind label %990

980:                                              ; preds = %978
  %981 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %979, ptr noundef nonnull align 1 dereferenceable(15) @.str.114)
          to label %982 unwind label %990

982:                                              ; preds = %980
  %983 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIxEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %981, ptr noundef nonnull align 8 dereferenceable(8) %927)
          to label %984 unwind label %990

984:                                              ; preds = %982
  %985 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %983, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1000 unwind label %990

986:                                              ; preds = %947, %945, %943, %940, %938
  %987 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1062

988:                                              ; preds = %952, %949
  %989 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1062

990:                                              ; preds = %984, %982, %980, %978, %976, %972, %970, %968, %966, %964, %962, %960, %954
  %991 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1001

992:                                              ; preds = %956
  %993 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %999

994:                                              ; preds = %957
  %995 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %998

996:                                              ; preds = %959
  %997 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #13
  br label %998

998:                                              ; preds = %996, %994
  %.pn311 = phi { ptr, i32 } [ %997, %996 ], [ %995, %994 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #13
  br label %999

999:                                              ; preds = %998, %992
  %.pn311.pn = phi { ptr, i32 } [ %.pn311, %998 ], [ %993, %992 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %66) #13
  br label %1001

1000:                                             ; preds = %984, %974
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %65) #13
  br label %1061

1001:                                             ; preds = %999, %990
  %.pn314 = phi { ptr, i32 } [ %991, %990 ], [ %.pn311.pn, %999 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %65) #13
  br label %1062

1002:                                             ; preds = %921
  %1003 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull @.str.116)
  br i1 %1003, label %1004, label %1033

1004:                                             ; preds = %1002
  %1005 = icmp eq ptr %730, null
  br i1 %1005, label %.thread508, label %1006

1006:                                             ; preds = %1004
  %1007 = call ptr @__dynamic_cast(ptr nonnull %730, ptr nonnull @_ZTIN5clnet6TensorE, ptr nonnull @_ZTIN5clnet4back4LossE, i64 0) #13
  %1008 = icmp eq ptr %1007, null
  br i1 %1008, label %.thread508, label %1018

.thread508:                                       ; preds = %1004, %1006
  %1009 = call ptr @__cxa_allocate_exception(i64 16) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %68) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %69) #13
  invoke void @_ZN5clnet9type_nameB5cxx11EPNS_6TensorE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %69, ptr noundef %730)
          to label %1010 unwind label %.thread509

1010:                                             ; preds = %.thread508
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %68, ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull @.str.117)
          to label %1011 unwind label %.thread513

1011:                                             ; preds = %1010
  invoke void @_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(16) %1009, ptr noundef nonnull align 8 dereferenceable(32) %68)
          to label %1012 unwind label %1015

1012:                                             ; preds = %1011
  invoke void @__cxa_throw(ptr nonnull %1009, ptr nonnull @_ZTISt13runtime_error, ptr nonnull @_ZNSt13runtime_errorD1Ev) #16
          to label %1469 unwind label %1015

.thread509:                                       ; preds = %.thread508
  %1013 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #13
  br label %1017

.thread513:                                       ; preds = %1010
  %1014 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #13
  br label %1017

1015:                                             ; preds = %1011, %1012
  %.0274 = phi i1 [ false, %1012 ], [ true, %1011 ]
  %1016 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #13
  br i1 %.0274, label %1017, label %1062

1017:                                             ; preds = %.thread513, %.thread509, %1015
  %.pn.pn512 = phi { ptr, i32 } [ %1013, %.thread509 ], [ %1016, %1015 ], [ %1014, %.thread513 ]
  call void @__cxa_free_exception(ptr %1009) #13
  br label %1062

1018:                                             ; preds = %1006
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %70) #13
  %1019 = load ptr, ptr %1007, align 8, !tbaa !41
  %1020 = getelementptr inbounds i8, ptr %1019, i64 56
  %1021 = load ptr, ptr %1020, align 8
  %1022 = invoke noundef float %1021(ptr noundef nonnull align 8 dereferenceable(176) %1007, ptr noundef nonnull align 8 dereferenceable(296) %0)
          to label %1023 unwind label %1031

1023:                                             ; preds = %1018
  store float %1022, ptr %70, align 4, !tbaa !51
  invoke void @_ZN5clnet15describe_tensorEPNS_6TensorEb(ptr noundef nonnull %730, i1 noundef zeroext true)
          to label %1024 unwind label %1031

1024:                                             ; preds = %1023
  %1025 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA14_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(14) @.str.118)
          to label %1026 unwind label %1031

1026:                                             ; preds = %1024
  %1027 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1025, ptr noundef nonnull align 4 dereferenceable(4) %70)
          to label %1028 unwind label %1031

1028:                                             ; preds = %1026
  %1029 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1027, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1030 unwind label %1031

1030:                                             ; preds = %1028
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %70) #13
  br label %1061

1031:                                             ; preds = %1028, %1026, %1024, %1023, %1018
  %1032 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %70) #13
  br label %1062

1033:                                             ; preds = %757, %1002, %739
  %.0288 = phi i64 [ %740, %739 ], [ %758, %757 ], [ %725, %1002 ]
  %1034 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.4, i64 noundef %.0288) #13
  %1035 = add i64 %1034, 1
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %71) #13
  %1036 = sub i64 %1035, %.0288
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %71, ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef %.0288, i64 noundef %1036)
          to label %1037 unwind label %1054

1037:                                             ; preds = %1033
  %1038 = invoke noundef i32 @_ZNSt7__cxx114stoiERKNS_12basic_stringIcSt11char_traitsIcESaIcEEEPmi(ptr noundef nonnull align 8 dereferenceable(32) %71, ptr noundef null, i32 noundef 10)
          to label %1039 unwind label %1056

1039:                                             ; preds = %1037
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %71) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %71) #13
  %1040 = sext i32 %1038 to i64
  %1041 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN5clnet6TensorESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %55, i64 noundef %1040) #13
  %1042 = load ptr, ptr %1041, align 8, !tbaa !36
  %1043 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  %1044 = icmp ugt i64 %1043, %1035
  br i1 %1044, label %1045, label %1061

1045:                                             ; preds = %1039
  %1046 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef %1035)
  %1047 = load i8, ptr %1046, align 1, !tbaa !50
  %1048 = icmp eq i8 %1047, 91
  br i1 %1048, label %1049, label %1061

1049:                                             ; preds = %1045
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %72) #13
  %1050 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  %1051 = sub i64 %1050, %1035
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %72, ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef %1035, i64 noundef %1051)
          to label %1052 unwind label %1059

1052:                                             ; preds = %1049
  %1053 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull align 8 dereferenceable(32) %72) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %72) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %72) #13
  br label %1061

1054:                                             ; preds = %1033
  %1055 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1058

1056:                                             ; preds = %1037
  %1057 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %71) #13
  br label %1058

1058:                                             ; preds = %1056, %1054
  %.pn342 = phi { ptr, i32 } [ %1057, %1056 ], [ %1055, %1054 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %71) #13
  br label %1062

1059:                                             ; preds = %1049
  %1060 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %72) #13
  br label %1062

1061:                                             ; preds = %1039, %1045, %1052, %951, %1000, %870, %919, %789, %838, %1030
  %cond1 = phi i1 [ false, %1030 ], [ false, %838 ], [ false, %789 ], [ false, %919 ], [ false, %870 ], [ false, %1000 ], [ false, %951 ], [ true, %1052 ], [ true, %1045 ], [ true, %1039 ]
  %.0283 = phi i32 [ 2, %1030 ], [ 2, %838 ], [ 2, %789 ], [ 2, %919 ], [ 2, %870 ], [ 2, %1000 ], [ 2, %951 ], [ 0, %1052 ], [ 0, %1045 ], [ 0, %1039 ]
  %.1 = phi ptr [ %730, %1030 ], [ %730, %838 ], [ %730, %789 ], [ %730, %919 ], [ %730, %870 ], [ %730, %1000 ], [ %730, %951 ], [ %1042, %1052 ], [ %1042, %1045 ], [ %1042, %1039 ]
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %55) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %55) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %54) #13
  br i1 %cond1, label %.thread516, label %1414

1062:                                             ; preds = %935, %854, %773, %1058, %1059, %1031, %1017, %1015, %986, %937, %1001, %988, %905, %856, %920, %907, %824, %775, %839, %826, %749
  %.pn344.pn = phi { ptr, i32 } [ %750, %749 ], [ %.pn339491, %775 ], [ %774, %773 ], [ %825, %824 ], [ %.pn336, %839 ], [ %827, %826 ], [ %.pn328498, %856 ], [ %855, %854 ], [ %906, %905 ], [ %.pn325, %920 ], [ %908, %907 ], [ %.pn317505, %937 ], [ %936, %935 ], [ %987, %986 ], [ %.pn314, %1001 ], [ %989, %988 ], [ %.pn.pn512, %1017 ], [ %1016, %1015 ], [ %1032, %1031 ], [ %1060, %1059 ], [ %.pn342, %1058 ]
  %.3 = phi ptr [ %730, %749 ], [ %730, %775 ], [ %730, %773 ], [ %730, %824 ], [ %730, %839 ], [ %730, %826 ], [ %730, %856 ], [ %730, %854 ], [ %730, %905 ], [ %730, %920 ], [ %730, %907 ], [ %730, %937 ], [ %730, %935 ], [ %730, %986 ], [ %730, %1001 ], [ %730, %988 ], [ %730, %1017 ], [ %730, %1015 ], [ %730, %1031 ], [ %1042, %1059 ], [ %730, %1058 ]
  call void @_ZNSt6vectorIPN5clnet6TensorESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %55) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %55) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #13
  br label %1063

1063:                                             ; preds = %1062, %747
  %.pn344.pn.pn = phi { ptr, i32 } [ %.pn344.pn, %1062 ], [ %748, %747 ]
  %.4 = phi ptr [ %.3, %1062 ], [ %730, %747 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %54) #13
  br label %1419

1064:                                             ; preds = %724
  %1065 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.19, i64 noundef 0) #13
  %.not305 = icmp eq i64 %1065, -1
  br i1 %.not305, label %1066, label %1068

1066:                                             ; preds = %1064
  %1067 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.59, i64 noundef 0) #13
  %.not306 = icmp eq i64 %1067, -1
  br i1 %.not306, label %1084, label %1068

1068:                                             ; preds = %1066, %1064
  %.1289 = phi i64 [ %1065, %1064 ], [ %1067, %1066 ]
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %73) #13
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %73, ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef 0, i64 noundef %.1289)
          to label %1069 unwind label %1078

1069:                                             ; preds = %1068
  %1070 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull align 8 dereferenceable(32) %73) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1071 unwind label %743

1071:                                             ; preds = %1069
  %1072 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull %74)
          to label %1073 unwind label %1080

1073:                                             ; preds = %1071
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %75) #13
  %1074 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  %1075 = sub i64 %1074, %.1289
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %75, ptr noundef nonnull align 8 dereferenceable(32) %3, i64 noundef %.1289, i64 noundef %1075)
          to label %1076 unwind label %1082

1076:                                             ; preds = %1073
  %1077 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull align 8 dereferenceable(32) %75) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #13
  br label %.thread516

1078:                                             ; preds = %1068
  %1079 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #13
  br label %1419

1080:                                             ; preds = %1071
  %1081 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #13
  br label %1419

1082:                                             ; preds = %1073
  %1083 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #13
  br label %1419

1084:                                             ; preds = %1066
  %1085 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull align 8 dereferenceable(32) %3)
          to label %1086 unwind label %743

1086:                                             ; preds = %1084
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1087 unwind label %743

1087:                                             ; preds = %1086
  %1088 = invoke noundef ptr @_ZN5clnet13locate_tensorENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull %76)
          to label %1089 unwind label %1090

1089:                                             ; preds = %1087
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #13
  br label %.thread516

1090:                                             ; preds = %1087
  %1091 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #13
  br label %1419

1092:                                             ; preds = %721
  %1093 = icmp eq ptr %.0, null
  %1094 = load ptr, ptr @_ZN5clnet8_currentE, align 8
  %spec.select = select i1 %1093, ptr %1094, ptr %.0
  %1095 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull align 8 dereferenceable(32) %3)
          to label %.thread516 unwind label %717

.thread516:                                       ; preds = %1061, %1089, %1076, %1092
  %.9 = phi ptr [ %spec.select, %1092 ], [ %1088, %1089 ], [ %1072, %1076 ], [ %.1, %1061 ]
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %77) #13
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %78) #13
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %78) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.119, ptr noundef nonnull align 1 dereferenceable(1) %78)
          to label %1096 unwind label %1107

1096:                                             ; preds = %.thread516
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %78) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %78) #13
  %1097 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5rfindEPKcm(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull @.str.59, i64 noundef -1)
  %.not349 = icmp eq i64 %1097, -1
  br i1 %.not349, label %1113, label %1098

1098:                                             ; preds = %1096
  %1099 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4backEv(ptr noundef nonnull align 8 dereferenceable(32) %50) #13
  %1100 = load i8, ptr %1099, align 1, !tbaa !50
  %.not350 = icmp eq i8 %1100, 93
  br i1 %.not350, label %1113, label %1101

1101:                                             ; preds = %1098
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %79) #13
  %1102 = add nuw i64 %1097, 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %79, ptr noundef nonnull align 8 dereferenceable(32) %50, i64 noundef %1102, i64 noundef -1)
          to label %1103 unwind label %1109

1103:                                             ; preds = %1101
  %1104 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull align 8 dereferenceable(32) %79) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %79) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %79) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %80) #13
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %80, ptr noundef nonnull align 8 dereferenceable(32) %50, i64 noundef 0, i64 noundef %1097)
          to label %1105 unwind label %1111

1105:                                             ; preds = %1103
  %1106 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull align 8 dereferenceable(32) %80) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #13
  br label %1113

1107:                                             ; preds = %.thread516
  %1108 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %78) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %78) #13
  br label %1418

1109:                                             ; preds = %1101
  %1110 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %79) #13
  br label %1417

1111:                                             ; preds = %1103
  %1112 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #13
  br label %1417

1113:                                             ; preds = %1105, %1098, %1096
  %1114 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %1115 unwind label %1131

1115:                                             ; preds = %1113
  %sext.mask352 = and i32 %1114, 255
  %.not351 = icmp eq i32 %sext.mask352, 10
  br i1 %.not351, label %.sink.split, label %1116

1116:                                             ; preds = %1115
  %1117 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1118 unwind label %1131

1118:                                             ; preds = %1116
  %1119 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %4, i64 noundef 0)
  %1120 = load i8, ptr %1119, align 1, !tbaa !50
  %1121 = icmp eq i8 %1120, 91
  br i1 %1121, label %1122, label %1137

1122:                                             ; preds = %1118
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1123 unwind label %1131

1123:                                             ; preds = %1122
  invoke void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef nonnull %81, ptr noundef nonnull %49, ptr noundef null, ptr noundef null, ptr noundef null)
          to label %1124 unwind label %1133

1124:                                             ; preds = %1123
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #13
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %82, ptr noundef nonnull align 8 dereferenceable(32) %50)
          to label %1125 unwind label %1131

1125:                                             ; preds = %1124
  invoke void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef nonnull %82, ptr noundef nonnull %47, ptr noundef nonnull %48, ptr noundef nonnull %49, ptr noundef null)
          to label %1126 unwind label %1135

1126:                                             ; preds = %1125
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #13
  %1127 = invoke noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin)
          to label %1128 unwind label %1131

1128:                                             ; preds = %1126
  %sext.mask354 = and i32 %1127, 255
  %.not353 = icmp eq i32 %sext.mask354, 10
  br i1 %.not353, label %.sink.split, label %1129

1129:                                             ; preds = %1128
  %1130 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1137 unwind label %1131

1131:                                             ; preds = %1139, %1129, %1126, %1124, %1122, %1116, %1113
  %1132 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1417

1133:                                             ; preds = %1123
  %1134 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #13
  br label %1417

1135:                                             ; preds = %1125
  %1136 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #13
  br label %1417

.sink.split:                                      ; preds = %1115, %1128
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %4) #13
  br label %1137

1137:                                             ; preds = %.sink.split, %1118, %1129
  %1138 = call noundef zeroext i1 @_ZNKSt6vectorIxSaIxEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(24) %49) #13
  br i1 %1138, label %1139, label %1145

1139:                                             ; preds = %1137
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef nonnull align 8 dereferenceable(32) %50)
          to label %1140 unwind label %1131

1140:                                             ; preds = %1139
  %1141 = getelementptr inbounds i8, ptr %.9, i64 8
  invoke void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef nonnull %83, ptr noundef nonnull %47, ptr noundef nonnull %48, ptr noundef nonnull %1141, ptr noundef nonnull %49)
          to label %1142 unwind label %1143

1142:                                             ; preds = %1140
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #13
  br label %1145

1143:                                             ; preds = %1140
  %1144 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #13
  br label %1417

1145:                                             ; preds = %1142, %1137
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %84) #13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %85) #13
  call void @_ZNSt7__cxx119to_stringEi(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %85, i32 noundef %.0282) #13
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %84, ptr noundef nonnull align 8 dereferenceable(32) %85, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1146 unwind label %1155

1146:                                             ; preds = %1145
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %85) #13
  %1147 = call noundef zeroext i1 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(32) %4) #13
  %1148 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.119)
  br i1 %1147, label %1149, label %1260

1149:                                             ; preds = %1146
  br i1 %1148, label %1150, label %1170

1150:                                             ; preds = %1149
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %86, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1151 unwind label %1157

1151:                                             ; preds = %1150
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %87, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1152 unwind label %1159

1152:                                             ; preds = %1151
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %88, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1153 unwind label %1161

1153:                                             ; preds = %1152
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %89, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1154 unwind label %1163

1154:                                             ; preds = %1153
  invoke void @_ZN5clnet19operate_tensor_dataIfEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %86, ptr noundef nonnull %87, ptr noundef nonnull %88, ptr noundef nonnull %89, float noundef 0.000000e+00)
          to label %.sink.split609 unwind label %1165

1155:                                             ; preds = %1145
  %1156 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %85) #13
  br label %1416

1157:                                             ; preds = %1411, %1409, %1244, %1226, %1208, %1190, %1172, %1150
  %1158 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1415

1159:                                             ; preds = %1151
  %1160 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1169

1161:                                             ; preds = %1152
  %1162 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1168

1163:                                             ; preds = %1153
  %1164 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1167

1165:                                             ; preds = %1154
  %1166 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #13
  br label %1167

1167:                                             ; preds = %1165, %1163
  %.pn405 = phi { ptr, i32 } [ %1166, %1165 ], [ %1164, %1163 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %88) #13
  br label %1168

1168:                                             ; preds = %1167, %1161
  %.pn405.pn = phi { ptr, i32 } [ %.pn405, %1167 ], [ %1162, %1161 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %87) #13
  br label %1169

1169:                                             ; preds = %1168, %1159
  %.pn405.pn.pn = phi { ptr, i32 } [ %.pn405.pn, %1168 ], [ %1160, %1159 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %86) #13
  br label %1415

1170:                                             ; preds = %1149
  %1171 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.120)
  br i1 %1171, label %1172, label %1188

1172:                                             ; preds = %1170
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %90, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1173 unwind label %1157

1173:                                             ; preds = %1172
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %91, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1174 unwind label %1177

1174:                                             ; preds = %1173
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %92, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1175 unwind label %1179

1175:                                             ; preds = %1174
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %93, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1176 unwind label %1181

1176:                                             ; preds = %1175
  invoke void @_ZN5clnet19operate_tensor_dataIiEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %90, ptr noundef nonnull %91, ptr noundef nonnull %92, ptr noundef nonnull %93, i32 noundef 0)
          to label %.sink.split609 unwind label %1183

1177:                                             ; preds = %1173
  %1178 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1187

1179:                                             ; preds = %1174
  %1180 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1186

1181:                                             ; preds = %1175
  %1182 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1185

1183:                                             ; preds = %1176
  %1184 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %93) #13
  br label %1185

1185:                                             ; preds = %1183, %1181
  %.pn401 = phi { ptr, i32 } [ %1184, %1183 ], [ %1182, %1181 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #13
  br label %1186

1186:                                             ; preds = %1185, %1179
  %.pn401.pn = phi { ptr, i32 } [ %.pn401, %1185 ], [ %1180, %1179 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %91) #13
  br label %1187

1187:                                             ; preds = %1186, %1177
  %.pn401.pn.pn = phi { ptr, i32 } [ %.pn401.pn, %1186 ], [ %1178, %1177 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %90) #13
  br label %1415

1188:                                             ; preds = %1170
  %1189 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.121)
  br i1 %1189, label %1190, label %1206

1190:                                             ; preds = %1188
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %94, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1191 unwind label %1157

1191:                                             ; preds = %1190
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %95, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1192 unwind label %1195

1192:                                             ; preds = %1191
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %96, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1193 unwind label %1197

1193:                                             ; preds = %1192
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %97, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1194 unwind label %1199

1194:                                             ; preds = %1193
  invoke void @_ZN5clnet19operate_tensor_dataIcEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %94, ptr noundef nonnull %95, ptr noundef nonnull %96, ptr noundef nonnull %97, i8 noundef signext 0)
          to label %.sink.split609 unwind label %1201

1195:                                             ; preds = %1191
  %1196 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1205

1197:                                             ; preds = %1192
  %1198 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1204

1199:                                             ; preds = %1193
  %1200 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1203

1201:                                             ; preds = %1194
  %1202 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %97) #13
  br label %1203

1203:                                             ; preds = %1201, %1199
  %.pn397 = phi { ptr, i32 } [ %1202, %1201 ], [ %1200, %1199 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %96) #13
  br label %1204

1204:                                             ; preds = %1203, %1197
  %.pn397.pn = phi { ptr, i32 } [ %.pn397, %1203 ], [ %1198, %1197 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %95) #13
  br label %1205

1205:                                             ; preds = %1204, %1195
  %.pn397.pn.pn = phi { ptr, i32 } [ %.pn397.pn, %1204 ], [ %1196, %1195 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %94) #13
  br label %1415

1206:                                             ; preds = %1188
  %1207 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.122)
  br i1 %1207, label %1208, label %1224

1208:                                             ; preds = %1206
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %98, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1209 unwind label %1157

1209:                                             ; preds = %1208
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %99, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1210 unwind label %1213

1210:                                             ; preds = %1209
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %100, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1211 unwind label %1215

1211:                                             ; preds = %1210
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %101, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1212 unwind label %1217

1212:                                             ; preds = %1211
  invoke void @_ZN5clnet19operate_tensor_dataIxEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %98, ptr noundef nonnull %99, ptr noundef nonnull %100, ptr noundef nonnull %101, i64 noundef 0)
          to label %.sink.split609 unwind label %1219

1213:                                             ; preds = %1209
  %1214 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1223

1215:                                             ; preds = %1210
  %1216 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1222

1217:                                             ; preds = %1211
  %1218 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1221

1219:                                             ; preds = %1212
  %1220 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #13
  br label %1221

1221:                                             ; preds = %1219, %1217
  %.pn393 = phi { ptr, i32 } [ %1220, %1219 ], [ %1218, %1217 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %100) #13
  br label %1222

1222:                                             ; preds = %1221, %1215
  %.pn393.pn = phi { ptr, i32 } [ %.pn393, %1221 ], [ %1216, %1215 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #13
  br label %1223

1223:                                             ; preds = %1222, %1213
  %.pn393.pn.pn = phi { ptr, i32 } [ %.pn393.pn, %1222 ], [ %1214, %1213 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %98) #13
  br label %1415

1224:                                             ; preds = %1206
  %1225 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.123)
  br i1 %1225, label %1226, label %1242

1226:                                             ; preds = %1224
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %102, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1227 unwind label %1157

1227:                                             ; preds = %1226
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %103, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1228 unwind label %1231

1228:                                             ; preds = %1227
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %104, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1229 unwind label %1233

1229:                                             ; preds = %1228
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %105, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1230 unwind label %1235

1230:                                             ; preds = %1229
  invoke void @_ZN5clnet19operate_tensor_dataIsEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %102, ptr noundef nonnull %103, ptr noundef nonnull %104, ptr noundef nonnull %105, i16 noundef signext 0)
          to label %.sink.split609 unwind label %1237

1231:                                             ; preds = %1227
  %1232 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1241

1233:                                             ; preds = %1228
  %1234 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1240

1235:                                             ; preds = %1229
  %1236 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1239

1237:                                             ; preds = %1230
  %1238 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %105) #13
  br label %1239

1239:                                             ; preds = %1237, %1235
  %.pn389 = phi { ptr, i32 } [ %1238, %1237 ], [ %1236, %1235 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #13
  br label %1240

1240:                                             ; preds = %1239, %1233
  %.pn389.pn = phi { ptr, i32 } [ %.pn389, %1239 ], [ %1234, %1233 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #13
  br label %1241

1241:                                             ; preds = %1240, %1231
  %.pn389.pn.pn = phi { ptr, i32 } [ %.pn389.pn, %1240 ], [ %1232, %1231 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #13
  br label %1415

1242:                                             ; preds = %1224
  %1243 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.124)
  br i1 %1243, label %1244, label %1413

1244:                                             ; preds = %1242
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %106, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1245 unwind label %1157

1245:                                             ; preds = %1244
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %107, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1246 unwind label %1249

1246:                                             ; preds = %1245
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %108, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1247 unwind label %1251

1247:                                             ; preds = %1246
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %109, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1248 unwind label %1253

1248:                                             ; preds = %1247
  invoke void @_ZN5clnet19operate_tensor_dataIdEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %106, ptr noundef nonnull %107, ptr noundef nonnull %108, ptr noundef nonnull %109, double noundef 0.000000e+00)
          to label %.sink.split609 unwind label %1255

1249:                                             ; preds = %1245
  %1250 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1259

1251:                                             ; preds = %1246
  %1252 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1258

1253:                                             ; preds = %1247
  %1254 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1257

1255:                                             ; preds = %1248
  %1256 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %109) #13
  br label %1257

1257:                                             ; preds = %1255, %1253
  %.pn385 = phi { ptr, i32 } [ %1256, %1255 ], [ %1254, %1253 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108) #13
  br label %1258

1258:                                             ; preds = %1257, %1251
  %.pn385.pn = phi { ptr, i32 } [ %.pn385, %1257 ], [ %1252, %1251 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %107) #13
  br label %1259

1259:                                             ; preds = %1258, %1249
  %.pn385.pn.pn = phi { ptr, i32 } [ %.pn385.pn, %1258 ], [ %1250, %1249 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #13
  br label %1415

1260:                                             ; preds = %1146
  br i1 %1148, label %1261, label %1284

1261:                                             ; preds = %1260
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %110) #13
  %1262 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERf(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %110)
          to label %1263 unwind label %1270

1263:                                             ; preds = %1261
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %111, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1264 unwind label %1270

1264:                                             ; preds = %1263
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %112, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1265 unwind label %1272

1265:                                             ; preds = %1264
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %113, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1266 unwind label %1274

1266:                                             ; preds = %1265
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %114, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1267 unwind label %1276

1267:                                             ; preds = %1266
  %1268 = load float, ptr %110, align 4, !tbaa !51
  invoke void @_ZN5clnet19operate_tensor_dataIfEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %111, ptr noundef nonnull %112, ptr noundef nonnull %113, ptr noundef nonnull %114, float noundef %1268)
          to label %1269 unwind label %1278

1269:                                             ; preds = %1267
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %113) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %112) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %111) #13
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %110) #13
  br label %1409

1270:                                             ; preds = %1263, %1261
  %1271 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1283

1272:                                             ; preds = %1264
  %1273 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1282

1274:                                             ; preds = %1265
  %1275 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1281

1276:                                             ; preds = %1266
  %1277 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1280

1278:                                             ; preds = %1267
  %1279 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #13
  br label %1280

1280:                                             ; preds = %1278, %1276
  %.pn380 = phi { ptr, i32 } [ %1279, %1278 ], [ %1277, %1276 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %113) #13
  br label %1281

1281:                                             ; preds = %1280, %1274
  %.pn380.pn = phi { ptr, i32 } [ %.pn380, %1280 ], [ %1275, %1274 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %112) #13
  br label %1282

1282:                                             ; preds = %1281, %1272
  %.pn380.pn.pn = phi { ptr, i32 } [ %.pn380.pn, %1281 ], [ %1273, %1272 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %111) #13
  br label %1283

1283:                                             ; preds = %1282, %1270
  %.pn380.pn.pn.pn = phi { ptr, i32 } [ %.pn380.pn.pn, %1282 ], [ %1271, %1270 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %110) #13
  br label %1415

1284:                                             ; preds = %1260
  %1285 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.120)
  br i1 %1285, label %1286, label %1309

1286:                                             ; preds = %1284
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %115) #13
  %1287 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERi(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 4 dereferenceable(4) %115)
          to label %1288 unwind label %1295

1288:                                             ; preds = %1286
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %116, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1289 unwind label %1295

1289:                                             ; preds = %1288
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %117, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1290 unwind label %1297

1290:                                             ; preds = %1289
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %118, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1291 unwind label %1299

1291:                                             ; preds = %1290
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1292 unwind label %1301

1292:                                             ; preds = %1291
  %1293 = load i32, ptr %115, align 4, !tbaa !34
  invoke void @_ZN5clnet19operate_tensor_dataIiEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %116, ptr noundef nonnull %117, ptr noundef nonnull %118, ptr noundef nonnull %119, i32 noundef %1293)
          to label %1294 unwind label %1303

1294:                                             ; preds = %1292
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %118) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %117) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %116) #13
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %115) #13
  br label %1409

1295:                                             ; preds = %1288, %1286
  %1296 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1308

1297:                                             ; preds = %1289
  %1298 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1307

1299:                                             ; preds = %1290
  %1300 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1306

1301:                                             ; preds = %1291
  %1302 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1305

1303:                                             ; preds = %1292
  %1304 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #13
  br label %1305

1305:                                             ; preds = %1303, %1301
  %.pn375 = phi { ptr, i32 } [ %1304, %1303 ], [ %1302, %1301 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %118) #13
  br label %1306

1306:                                             ; preds = %1305, %1299
  %.pn375.pn = phi { ptr, i32 } [ %.pn375, %1305 ], [ %1300, %1299 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %117) #13
  br label %1307

1307:                                             ; preds = %1306, %1297
  %.pn375.pn.pn = phi { ptr, i32 } [ %.pn375.pn, %1306 ], [ %1298, %1297 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %116) #13
  br label %1308

1308:                                             ; preds = %1307, %1295
  %.pn375.pn.pn.pn = phi { ptr, i32 } [ %.pn375.pn.pn, %1307 ], [ %1296, %1295 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %115) #13
  br label %1415

1309:                                             ; preds = %1284
  %1310 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.121)
  br i1 %1310, label %1311, label %1334

1311:                                             ; preds = %1309
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %120) #13
  %1312 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_RS3_(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 1 dereferenceable(1) %120)
          to label %1313 unwind label %1320

1313:                                             ; preds = %1311
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %121, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1314 unwind label %1320

1314:                                             ; preds = %1313
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %122, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1315 unwind label %1322

1315:                                             ; preds = %1314
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %123, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1316 unwind label %1324

1316:                                             ; preds = %1315
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %124, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1317 unwind label %1326

1317:                                             ; preds = %1316
  %1318 = load i8, ptr %120, align 1, !tbaa !50
  invoke void @_ZN5clnet19operate_tensor_dataIcEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %121, ptr noundef nonnull %122, ptr noundef nonnull %123, ptr noundef nonnull %124, i8 noundef signext %1318)
          to label %1319 unwind label %1328

1319:                                             ; preds = %1317
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %124) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %123) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %122) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %121) #13
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %120) #13
  br label %1409

1320:                                             ; preds = %1313, %1311
  %1321 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1333

1322:                                             ; preds = %1314
  %1323 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1332

1324:                                             ; preds = %1315
  %1325 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1331

1326:                                             ; preds = %1316
  %1327 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1330

1328:                                             ; preds = %1317
  %1329 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %124) #13
  br label %1330

1330:                                             ; preds = %1328, %1326
  %.pn370 = phi { ptr, i32 } [ %1329, %1328 ], [ %1327, %1326 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %123) #13
  br label %1331

1331:                                             ; preds = %1330, %1324
  %.pn370.pn = phi { ptr, i32 } [ %.pn370, %1330 ], [ %1325, %1324 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %122) #13
  br label %1332

1332:                                             ; preds = %1331, %1322
  %.pn370.pn.pn = phi { ptr, i32 } [ %.pn370.pn, %1331 ], [ %1323, %1322 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %121) #13
  br label %1333

1333:                                             ; preds = %1332, %1320
  %.pn370.pn.pn.pn = phi { ptr, i32 } [ %.pn370.pn.pn, %1332 ], [ %1321, %1320 ]
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %120) #13
  br label %1415

1334:                                             ; preds = %1309
  %1335 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.122)
  br i1 %1335, label %1336, label %1359

1336:                                             ; preds = %1334
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %125) #13
  %1337 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERx(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(8) %125)
          to label %1338 unwind label %1345

1338:                                             ; preds = %1336
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %126, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1339 unwind label %1345

1339:                                             ; preds = %1338
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %127, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1340 unwind label %1347

1340:                                             ; preds = %1339
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %128, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1341 unwind label %1349

1341:                                             ; preds = %1340
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %129, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1342 unwind label %1351

1342:                                             ; preds = %1341
  %1343 = load i64, ptr %125, align 8, !tbaa !37
  invoke void @_ZN5clnet19operate_tensor_dataIxEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %126, ptr noundef nonnull %127, ptr noundef nonnull %128, ptr noundef nonnull %129, i64 noundef %1343)
          to label %1344 unwind label %1353

1344:                                             ; preds = %1342
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %129) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %128) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %127) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %126) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %125) #13
  br label %1409

1345:                                             ; preds = %1338, %1336
  %1346 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1358

1347:                                             ; preds = %1339
  %1348 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1357

1349:                                             ; preds = %1340
  %1350 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1356

1351:                                             ; preds = %1341
  %1352 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1355

1353:                                             ; preds = %1342
  %1354 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %129) #13
  br label %1355

1355:                                             ; preds = %1353, %1351
  %.pn365 = phi { ptr, i32 } [ %1354, %1353 ], [ %1352, %1351 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %128) #13
  br label %1356

1356:                                             ; preds = %1355, %1349
  %.pn365.pn = phi { ptr, i32 } [ %.pn365, %1355 ], [ %1350, %1349 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %127) #13
  br label %1357

1357:                                             ; preds = %1356, %1347
  %.pn365.pn.pn = phi { ptr, i32 } [ %.pn365.pn, %1356 ], [ %1348, %1347 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %126) #13
  br label %1358

1358:                                             ; preds = %1357, %1345
  %.pn365.pn.pn.pn = phi { ptr, i32 } [ %.pn365.pn.pn, %1357 ], [ %1346, %1345 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %125) #13
  br label %1415

1359:                                             ; preds = %1334
  %1360 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.123)
  br i1 %1360, label %1361, label %1384

1361:                                             ; preds = %1359
  call void @llvm.lifetime.start.p0(i64 2, ptr nonnull %130) #13
  %1362 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERs(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 2 dereferenceable(2) %130)
          to label %1363 unwind label %1370

1363:                                             ; preds = %1361
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %131, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1364 unwind label %1370

1364:                                             ; preds = %1363
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %132, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1365 unwind label %1372

1365:                                             ; preds = %1364
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %133, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1366 unwind label %1374

1366:                                             ; preds = %1365
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %134, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1367 unwind label %1376

1367:                                             ; preds = %1366
  %1368 = load i16, ptr %130, align 2, !tbaa !52
  invoke void @_ZN5clnet19operate_tensor_dataIsEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %131, ptr noundef nonnull %132, ptr noundef nonnull %133, ptr noundef nonnull %134, i16 noundef signext %1368)
          to label %1369 unwind label %1378

1369:                                             ; preds = %1367
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %134) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %133) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %132) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %131) #13
  call void @llvm.lifetime.end.p0(i64 2, ptr nonnull %130) #13
  br label %1409

1370:                                             ; preds = %1363, %1361
  %1371 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1383

1372:                                             ; preds = %1364
  %1373 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1382

1374:                                             ; preds = %1365
  %1375 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1381

1376:                                             ; preds = %1366
  %1377 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1380

1378:                                             ; preds = %1367
  %1379 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %134) #13
  br label %1380

1380:                                             ; preds = %1378, %1376
  %.pn360 = phi { ptr, i32 } [ %1379, %1378 ], [ %1377, %1376 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %133) #13
  br label %1381

1381:                                             ; preds = %1380, %1374
  %.pn360.pn = phi { ptr, i32 } [ %.pn360, %1380 ], [ %1375, %1374 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %132) #13
  br label %1382

1382:                                             ; preds = %1381, %1372
  %.pn360.pn.pn = phi { ptr, i32 } [ %.pn360.pn, %1381 ], [ %1373, %1372 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %131) #13
  br label %1383

1383:                                             ; preds = %1382, %1370
  %.pn360.pn.pn.pn = phi { ptr, i32 } [ %.pn360.pn.pn, %1382 ], [ %1371, %1370 ]
  call void @llvm.lifetime.end.p0(i64 2, ptr nonnull %130) #13
  br label %1415

1384:                                             ; preds = %1359
  %1385 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull @.str.124)
  br i1 %1385, label %1386, label %1409

1386:                                             ; preds = %1384
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %135) #13
  %1387 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERd(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(8) %135)
          to label %1388 unwind label %1395

1388:                                             ; preds = %1386
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %136, ptr noundef nonnull align 8 dereferenceable(24) %47)
          to label %1389 unwind label %1395

1389:                                             ; preds = %1388
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %137, ptr noundef nonnull align 8 dereferenceable(24) %48)
          to label %1390 unwind label %1397

1390:                                             ; preds = %1389
  invoke void @_ZNSt6vectorIxSaIxEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %138, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1391 unwind label %1399

1391:                                             ; preds = %1390
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %139, ptr noundef nonnull align 8 dereferenceable(32) %84)
          to label %1392 unwind label %1401

1392:                                             ; preds = %1391
  %1393 = load double, ptr %135, align 8, !tbaa !54
  invoke void @_ZN5clnet19operate_tensor_dataIdEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef %.9, ptr noundef nonnull align 8 dereferenceable(296) %0, ptr noundef nonnull %136, ptr noundef nonnull %137, ptr noundef nonnull %138, ptr noundef nonnull %139, double noundef %1393)
          to label %1394 unwind label %1403

1394:                                             ; preds = %1392
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %139) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %138) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %137) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %136) #13
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %135) #13
  br label %1409

1395:                                             ; preds = %1388, %1386
  %1396 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1408

1397:                                             ; preds = %1389
  %1398 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1407

1399:                                             ; preds = %1390
  %1400 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1406

1401:                                             ; preds = %1391
  %1402 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  br label %1405

1403:                                             ; preds = %1392
  %1404 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt16invalid_argument
          catch ptr @_ZTISt13runtime_error
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %139) #13
  br label %1405

1405:                                             ; preds = %1403, %1401
  %.pn355 = phi { ptr, i32 } [ %1404, %1403 ], [ %1402, %1401 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %138) #13
  br label %1406

1406:                                             ; preds = %1405, %1399
  %.pn355.pn = phi { ptr, i32 } [ %.pn355, %1405 ], [ %1400, %1399 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %137) #13
  br label %1407

1407:                                             ; preds = %1406, %1397
  %.pn355.pn.pn = phi { ptr, i32 } [ %.pn355.pn, %1406 ], [ %1398, %1397 ]
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %136) #13
  br label %1408

1408:                                             ; preds = %1407, %1395
  %.pn355.pn.pn.pn = phi { ptr, i32 } [ %.pn355.pn.pn, %1407 ], [ %1396, %1395 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %135) #13
  br label %1415

1409:                                             ; preds = %1294, %1344, %1384, %1394, %1369, %1319, %1269
  %1410 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA9_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(9) @.str.125)
          to label %1411 unwind label %1157

1411:                                             ; preds = %1409
  %1412 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1410, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1413 unwind label %1157

.sink.split609:                                   ; preds = %1248, %1230, %1212, %1194, %1176, %1154
  %.sink612 = phi ptr [ %89, %1154 ], [ %93, %1176 ], [ %97, %1194 ], [ %101, %1212 ], [ %105, %1230 ], [ %109, %1248 ]
  %.sink611 = phi ptr [ %88, %1154 ], [ %92, %1176 ], [ %96, %1194 ], [ %100, %1212 ], [ %104, %1230 ], [ %108, %1248 ]
  %.sink610 = phi ptr [ %87, %1154 ], [ %91, %1176 ], [ %95, %1194 ], [ %99, %1212 ], [ %103, %1230 ], [ %107, %1248 ]
  %.sink = phi ptr [ %86, %1154 ], [ %90, %1176 ], [ %94, %1194 ], [ %98, %1212 ], [ %102, %1230 ], [ %106, %1248 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %.sink612) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %.sink611) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %.sink610) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %.sink) #13
  br label %1413

1413:                                             ; preds = %.sink.split609, %1411, %1242
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %84) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %77) #13
  br label %1414

1414:                                             ; preds = %1061, %703, %1413
  %.2285 = phi i32 [ 0, %1413 ], [ 3, %703 ], [ %.0283, %1061 ]
  %.10 = phi ptr [ %.9, %1413 ], [ %.0, %703 ], [ %.1, %1061 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %49) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %48) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %47) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %47) #13
  switch i32 %.2285, label %1469 [
    i32 0, label %1435
    i32 3, label %1465
    i32 2, label %.backedge.backedge
  ]

.backedge.backedge:                               ; preds = %1414, %1435
  %.0.be = phi ptr [ %.13, %1435 ], [ %.10, %1414 ]
  br label %.backedge, !llvm.loop !56

1415:                                             ; preds = %1408, %1383, %1358, %1333, %1308, %1283, %1259, %1241, %1223, %1205, %1187, %1169, %1157
  %.pn405.pn.pn.pn = phi { ptr, i32 } [ %.pn405.pn.pn, %1169 ], [ %1158, %1157 ], [ %.pn401.pn.pn, %1187 ], [ %.pn397.pn.pn, %1205 ], [ %.pn393.pn.pn, %1223 ], [ %.pn389.pn.pn, %1241 ], [ %.pn385.pn.pn, %1259 ], [ %.pn380.pn.pn.pn, %1283 ], [ %.pn375.pn.pn.pn, %1308 ], [ %.pn370.pn.pn.pn, %1333 ], [ %.pn365.pn.pn.pn, %1358 ], [ %.pn360.pn.pn.pn, %1383 ], [ %.pn355.pn.pn.pn, %1408 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #13
  br label %1416

1416:                                             ; preds = %1415, %1155
  %.pn405.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn405.pn.pn.pn, %1415 ], [ %1156, %1155 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %84) #13
  br label %1417

1417:                                             ; preds = %1131, %1133, %1135, %1143, %1416, %1111, %1109
  %.pn405.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %1112, %1111 ], [ %1110, %1109 ], [ %.pn405.pn.pn.pn.pn, %1416 ], [ %1144, %1143 ], [ %1132, %1131 ], [ %1136, %1135 ], [ %1134, %1133 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #13
  br label %1418

1418:                                             ; preds = %1417, %1107
  %.pn405.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn405.pn.pn.pn.pn.pn.pn, %1417 ], [ %1108, %1107 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %77) #13
  br label %1419

1419:                                             ; preds = %741, %743, %745, %1063, %1078, %1080, %1082, %1090, %1418, %719, %717
  %.pn405.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn405.pn.pn.pn.pn.pn.pn.pn, %1418 ], [ %718, %717 ], [ %720, %719 ], [ %.pn344.pn.pn, %1063 ], [ %746, %745 ], [ %744, %743 ], [ %742, %741 ], [ %1083, %1082 ], [ %1081, %1080 ], [ %1079, %1078 ], [ %1091, %1090 ]
  %.11 = phi ptr [ %.9, %1418 ], [ %spec.select, %717 ], [ %.0, %719 ], [ %.4, %1063 ], [ %.0, %745 ], [ %.0, %743 ], [ %.0, %741 ], [ %1072, %1082 ], [ %.0, %1080 ], [ %.0, %1078 ], [ %.0, %1090 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %49) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %48) #13
  call void @_ZNSt6vectorIxSaIxEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %47) #13
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %47) #13
  br label %1420

1420:                                             ; preds = %387, %389, %270, %272, %373, %245, %247, %172, %184, %1419, %642, %526, %233, %162
  %.pn472.pn = phi { ptr, i32 } [ %163, %162 ], [ %234, %233 ], [ %.pn446.pn, %526 ], [ %.pn428.pn, %642 ], [ %.pn405.pn.pn.pn.pn.pn.pn.pn.pn, %1419 ], [ %173, %172 ], [ %185, %184 ], [ %246, %245 ], [ %248, %247 ], [ %273, %272 ], [ %271, %270 ], [ %.pn462, %373 ], [ %390, %389 ], [ %388, %387 ]
  %.12 = phi ptr [ %.0, %162 ], [ %.0, %233 ], [ %.0, %526 ], [ %.0, %642 ], [ %.11, %1419 ], [ %.0, %172 ], [ %.0, %184 ], [ %.0, %245 ], [ %.0, %247 ], [ %.0, %272 ], [ %.0, %270 ], [ %.0, %373 ], [ %.0, %389 ], [ %.0, %387 ]
  %.103 = extractvalue { ptr, i32 } %.pn472.pn, 0
  %.103267 = extractvalue { ptr, i32 } %.pn472.pn, 1
  %1421 = call i32 @llvm.eh.typeid.for.p0(ptr nonnull @_ZTISt16invalid_argument) #13
  %1422 = icmp eq i32 %.103267, %1421
  br i1 %1422, label %1423, label %1436

1423:                                             ; preds = %1420
  %1424 = call ptr @__cxa_begin_catch(ptr %.103) #13
  %1425 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA32_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(32) @.str.127)
          to label %1426 unwind label %1458

1426:                                             ; preds = %1423
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %141) #13
  %1427 = load ptr, ptr %1424, align 8, !tbaa !41
  %1428 = getelementptr inbounds i8, ptr %1427, i64 16
  %1429 = load ptr, ptr %1428, align 8
  %1430 = call noundef ptr %1429(ptr noundef nonnull align 8 dereferenceable(16) %1424) #13
  store ptr %1430, ptr %141, align 8, !tbaa !36
  %1431 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1425, ptr noundef nonnull align 8 dereferenceable(8) %141)
          to label %1432 unwind label %1460

1432:                                             ; preds = %1426
  %1433 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1431, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1434 unwind label %1460

1434:                                             ; preds = %1432
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %141) #13
  invoke void @__cxa_end_catch()
          to label %1435 unwind label %1462

1435:                                             ; preds = %.invoke, %1450, %1434, %269, %282, %._crit_edge561, %280, %244, %197, %170, %386, %640, %1414, %649, %524, %232, %202
  %.13 = phi ptr [ %.0, %202 ], [ %.0, %232 ], [ %.0, %386 ], [ %.0, %524 ], [ %.0, %640 ], [ %.0, %649 ], [ %.10, %1414 ], [ %.0, %170 ], [ %.0, %197 ], [ %.0, %244 ], [ %.0, %280 ], [ %.0, %._crit_edge561 ], [ %.0, %282 ], [ %.0, %269 ], [ %.12, %1434 ], [ %.12, %1450 ], [ %.0, %.invoke ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5clearEv(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  br label %.backedge.backedge

1436:                                             ; preds = %1420
  %1437 = call i32 @llvm.eh.typeid.for.p0(ptr nonnull @_ZTISt13runtime_error) #13
  %1438 = icmp eq i32 %.103267, %1437
  br i1 %1438, label %1439, label %.loopexit530

1439:                                             ; preds = %1436
  %1440 = call ptr @__cxa_begin_catch(ptr %.103) #13
  %1441 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA19_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) @_ZN5clnet6loggerE, ptr noundef nonnull align 1 dereferenceable(19) @.str.126)
          to label %1442 unwind label %1451

1442:                                             ; preds = %1439
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %140) #13
  %1443 = load ptr, ptr %1440, align 8, !tbaa !41
  %1444 = getelementptr inbounds i8, ptr %1443, i64 16
  %1445 = load ptr, ptr %1444, align 8
  %1446 = call noundef ptr %1445(ptr noundef nonnull align 8 dereferenceable(16) %1440) #13
  store ptr %1446, ptr %140, align 8, !tbaa !36
  %1447 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168) %1441, ptr noundef nonnull align 8 dereferenceable(8) %140)
          to label %1448 unwind label %1453

1448:                                             ; preds = %1442
  %1449 = invoke noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsEPFRSoS1_E(ptr noundef nonnull align 8 dereferenceable(168) %1447, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1450 unwind label %1453

1450:                                             ; preds = %1448
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %140) #13
  invoke void @__cxa_end_catch()
          to label %1435 unwind label %1455

1451:                                             ; preds = %1439
  %1452 = landingpad { ptr, i32 }
          cleanup
  br label %1457

1453:                                             ; preds = %1448, %1442
  %1454 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %140) #13
  br label %1457

1455:                                             ; preds = %1450
  %1456 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit530

1457:                                             ; preds = %1453, %1451
  %.pn475 = phi { ptr, i32 } [ %1454, %1453 ], [ %1452, %1451 ]
  invoke void @__cxa_end_catch()
          to label %.loopexit530 unwind label %1466

1458:                                             ; preds = %1423
  %1459 = landingpad { ptr, i32 }
          cleanup
  br label %1464

1460:                                             ; preds = %1432, %1426
  %1461 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %141) #13
  br label %1464

1462:                                             ; preds = %1434
  %1463 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit530

1464:                                             ; preds = %1460, %1458
  %.pn479 = phi { ptr, i32 } [ %1461, %1460 ], [ %1459, %1458 ]
  invoke void @__cxa_end_catch()
          to label %.loopexit530 unwind label %1466

1465:                                             ; preds = %1414
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %4) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #13
  ret void

.loopexit530:                                     ; preds = %1436, %1462, %1464, %1455, %1457
  %.merged = phi { ptr, i32 } [ %1456, %1455 ], [ %.pn475, %1457 ], [ %1463, %1462 ], [ %.pn479, %1464 ], [ %.pn472.pn, %1436 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %4) #13
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #13
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #13
  resume { ptr, i32 } %.merged

1466:                                             ; preds = %1464, %1457
  %1467 = landingpad { ptr, i32 }
          catch ptr null
  %1468 = extractvalue { ptr, i32 } %1467, 0
  call void @__clang_call_terminate(ptr %1468) #15
  unreachable

1469:                                             ; preds = %1414, %1012, %933, %852, %771
  unreachable
}

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA35_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(35)) local_unnamed_addr #2 align 2

declare noundef i32 @_ZNSi4peekEv(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA31_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(31)) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nofree nounwind willreturn memory(read) uwtable
declare i32 @atoi(ptr nocapture noundef nonnull) local_unnamed_addr #7

; Function Attrs: mustprogress nounwind uwtable
declare noundef ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4dataEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA38_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(38)) local_unnamed_addr #2 align 2

; Function Attrs: nounwind
declare void @_ZNSt18condition_variable10notify_allEv(ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #6

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA32_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA27_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(27)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIPKcEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA25_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(25)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5clearEv(ptr noundef nonnull align 8 dereferenceable(56)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA36_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(36)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE5beginEv(ptr noundef nonnull align 8 dereferenceable(56)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEE3endEv(ptr noundef nonnull align 8 dereferenceable(56)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNSt8__detailneERKNS_19_Node_iterator_baseISt4pairIKPN5clnet6TensorEmELb0EEES9_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(16) ptr @_ZNKSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #8

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt8__detail14_Node_iteratorISt4pairIKPN5clnet6TensorEmELb0ELb0EEppEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPPN5clnet6TensorESt6vectorIS4_SaIS4_EEEEZNS2_15debugger_threadERNS2_14DeviceInstanceERS3_E3$_0EvT_SE_T0_"(ptr, ptr) local_unnamed_addr #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt13unordered_mapIPN5clnet6TensorEmSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_mEEEixERS8_(ptr noundef nonnull align 8 dereferenceable(56), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA3_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(3)) local_unnamed_addr #2 align 2

declare void @_ZN5clnet13millis_stringB5cxx11Em(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8, i64 noundef) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIiEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNK2cl12CommandQueue7getInfoILi4240EEENS_6detail12param_traitsINS2_21cl_command_queue_infoEXT_EE10param_typeEPi(ptr dead_on_unwind noalias writable sret(%"class.cl::Context") align 8, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #2 align 2

declare void @_ZN5clnet14reload_kernelsERKN2cl6DeviceERKNS0_7ContextERNS_14DeviceInstanceE(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(296)) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA29_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(29)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4findEPKcm(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nofree nounwind willreturn memory(read)
declare ptr @__dynamic_cast(ptr, ptr, ptr, i64) local_unnamed_addr #9

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_SA_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA21_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(21)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA8_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(8)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv(ptr noundef nonnull align 8 dereferenceable(256)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA39_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(39)) local_unnamed_addr #2 align 2

; Function Attrs: noreturn nounwind
declare void @exit(i32 noundef) local_unnamed_addr #10

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA33_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(33)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA141_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(141)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA107_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(107)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA143_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(143)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA122_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(122)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA149_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(149)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA103_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(103)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA76_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(76)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA64_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(64)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA101_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(101)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA140_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(140)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA92_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(92)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA96_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(96)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA67_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(67)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA119_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(119)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA121_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(121)) local_unnamed_addr #2 align 2

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EERKS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA18_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(18)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIfEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet17unitary_operationIfEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind noalias writable sret(%"class.std::function") align 8, ptr noundef, float noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNKSt8functionIFvRfEEclES0_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA16_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(16)) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZStneIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA15_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(15)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERx(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet17unitary_operationIxEESt8functionIFvRT_EENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES2_(ptr dead_on_unwind noalias writable sret(%"class.std::function.112") align 8, ptr noundef, i64 noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNKSt8functionIFvRxEEclES0_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5rfindEPKcm(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4backEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet16parse_dimensionsIxEEvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorIT_SaIS8_EESB_PKSA_SB_(ptr noundef, ptr noundef, ptr noundef, ptr noundef, ptr noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIfEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, float noundef) local_unnamed_addr #2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIiEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIcEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i8 noundef signext) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIxEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i64 noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIsEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, i16 noundef signext) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5clnet19operate_tensor_dataIdEEvPNS_6TensorERNS_14DeviceInstanceESt6vectorIxSaIxEES7_S7_NSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEET_(ptr noundef, ptr noundef nonnull align 8 dereferenceable(296), ptr noundef, ptr noundef, ptr noundef, ptr noundef, double noundef) local_unnamed_addr #2

declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERs(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 2 dereferenceable(2)) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZNSirsERd(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #2 align 2

; Function Attrs: nofree nosync nounwind memory(none)
declare i32 @llvm.eh.typeid.for.p0(ptr) #11

declare ptr @__cxa_begin_catch(ptr) local_unnamed_addr

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(168) ptr @_ZN5clnet6LoggerlsIA19_cEERS0_RKT_(ptr noundef nonnull align 8 dereferenceable(168), ptr noundef nonnull align 1 dereferenceable(19)) local_unnamed_addr #2 align 2

declare void @__cxa_end_catch() local_unnamed_addr

; Function Attrs: noinline noreturn nounwind uwtable
declare hidden void @__clang_call_terminate(ptr noundef) local_unnamed_addr #12

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

attributes #0 = { 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 #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
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 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 = { 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 #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 = { 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 #7 = { inlinehint mustprogress nofree nounwind willreturn memory(read) 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 #8 = { mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite) }
attributes #9 = { mustprogress nofree nounwind willreturn memory(read) }
attributes #10 = { noreturn 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 #11 = { nofree nosync nounwind memory(none) }
attributes #12 = { noinline noreturn nounwind uwtable "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 #13 = { nounwind }
attributes #14 = { nounwind willreturn memory(read) }
attributes #15 = { noreturn nounwind }
attributes #16 = { noreturn }

!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, !7, i64 0}
!6 = !{!"_ZTSN5clnet14DeviceInstanceE", !7, i64 0, !10, i64 8, !14, i64 24, !14, i64 28, !16, i64 32, !7, i64 56, !7, i64 60, !20, i64 64, !22, i64 72, !28, i64 128, !30, i64 184, !32, i64 240}
!7 = !{!"int", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C++ TBAA"}
!10 = !{!"_ZTSN2cl6DeviceE", !11, i64 0}
!11 = !{!"_ZTSN2cl6detail7WrapperIP13_cl_device_idEE", !12, i64 0, !13, i64 8}
!12 = !{!"any pointer", !8, i64 0}
!13 = !{!"bool", !8, i64 0}
!14 = !{!"_ZTSSt6atomicIiE", !15, i64 0}
!15 = !{!"_ZTSSt13__atomic_baseIiE", !7, i64 0}
!16 = !{!"_ZTSSt6vectorIN2cl5EventESaIS1_EE", !17, i64 0}
!17 = !{!"_ZTSSt12_Vector_baseIN2cl5EventESaIS1_EE", !18, i64 0}
!18 = !{!"_ZTSNSt12_Vector_baseIN2cl5EventESaIS1_EE12_Vector_implE", !19, i64 0}
!19 = !{!"_ZTSNSt12_Vector_baseIN2cl5EventESaIS1_EE17_Vector_impl_dataE", !12, i64 0, !12, i64 8, !12, i64 16}
!20 = !{!"_ZTSN2cl12CommandQueueE", !21, i64 0}
!21 = !{!"_ZTSN2cl6detail7WrapperIP17_cl_command_queueEE", !12, i64 0}
!22 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorEN2cl6BufferESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !23, i64 0}
!23 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_N2cl6BufferEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !12, i64 0, !24, i64 8, !25, i64 16, !24, i64 24, !26, i64 32, !12, i64 48}
!24 = !{!"long", !8, i64 0}
!25 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !12, i64 0}
!26 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !27, i64 0, !24, i64 8}
!27 = !{!"float", !8, i64 0}
!28 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorEN2cl5EventESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S4_EEE", !29, i64 0}
!29 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_N2cl5EventEESaIS7_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS9_18_Mod_range_hashingENS9_20_Default_ranged_hashENS9_20_Prime_rehash_policyENS9_17_Hashtable_traitsILb0ELb0ELb1EEEE", !12, i64 0, !24, i64 8, !25, i64 16, !24, i64 24, !26, i64 32, !12, i64 48}
!30 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorEPfSt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S3_EEE", !31, i64 0}
!31 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_PfESaIS6_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENS8_18_Mod_range_hashingENS8_20_Default_ranged_hashENS8_20_Prime_rehash_policyENS8_17_Hashtable_traitsILb0ELb0ELb1EEEE", !12, i64 0, !24, i64 8, !25, i64 16, !24, i64 24, !26, i64 32, !12, i64 48}
!32 = !{!"_ZTSSt13unordered_mapIPN5clnet6TensorESt6vectorIN2cl6KernelESaIS5_EESt4hashIS2_ESt8equal_toIS2_ESaISt4pairIKS2_S7_EEE", !33, i64 0}
!33 = !{!"_ZTSSt10_HashtableIPN5clnet6TensorESt4pairIKS2_St6vectorIN2cl6KernelESaIS7_EEESaISA_ENSt8__detail10_Select1stESt8equal_toIS2_ESt4hashIS2_ENSC_18_Mod_range_hashingENSC_20_Default_ranged_hashENSC_20_Prime_rehash_policyENSC_17_Hashtable_traitsILb0ELb0ELb1EEEE", !12, i64 0, !24, i64 8, !25, i64 16, !24, i64 24, !26, i64 32, !12, i64 48}
!34 = !{!7, !7, i64 0}
!35 = !{!24, !24, i64 0}
!36 = !{!12, !12, i64 0}
!37 = !{!38, !38, i64 0}
!38 = !{!"long long", !8, i64 0}
!39 = !{!40, !24, i64 8}
!40 = !{!"_ZTSSt4pairIKPN5clnet6TensorEmE", !12, i64 0, !24, i64 8}
!41 = !{!42, !42, i64 0}
!42 = !{!"vtable pointer", !9, i64 0}
!43 = distinct !{!43, !44}
!44 = !{!"llvm.loop.mustprogress"}
!45 = distinct !{!45, !44, !46}
!46 = !{!"llvm.loop.peeled.count", i32 1}
!47 = distinct !{!47, !44, !46}
!48 = distinct !{!48, !44}
!49 = distinct !{!49, !44, !46}
!50 = !{!8, !8, i64 0}
!51 = !{!27, !27, i64 0}
!52 = !{!53, !53, i64 0}
!53 = !{!"short", !8, i64 0}
!54 = !{!55, !55, i64 0}
!55 = !{!"double", !8, i64 0}
!56 = distinct !{!56, !44}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopFullUnrollPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,ReassociatePass,SCCPPass,SROAPass,SimplifyCFGPass