; LLVM IR from ardiloot/NonlinearTMM :: NonlinearTMM/src/eigen-3.4.0/unsupported/test (cxx11_tensor_image_patch)

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

%"class.std::vector" = 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.std::basic_ostream" = type { ptr, %"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.Eigen::TensorImagePatchOp" = type { ptr, i64, i64, i64, i64, i64, i64, i64, i64, i8, i64, i64, i64, i64, i32, float }
%"class.Eigen::Tensor" = type { %"class.Eigen::TensorStorage" }
%"class.Eigen::TensorStorage" = type { ptr, %"struct.Eigen::DSizes" }
%"struct.Eigen::DSizes" = type { %"struct.std::array" }
%"struct.std::array" = type { [4 x i64] }
%"class.Eigen::Tensor.16" = type { %"class.Eigen::TensorStorage.19" }
%"class.Eigen::TensorStorage.19" = type { ptr, %"struct.Eigen::DSizes.20" }
%"struct.Eigen::DSizes.20" = type { %"struct.std::array.21" }
%"struct.std::array.21" = type { [5 x i64] }
%"class.Eigen::Tensor.23" = type { %"class.Eigen::TensorStorage.26" }
%"class.Eigen::TensorStorage.26" = type { ptr, %"struct.Eigen::DSizes.20" }
%"class.Eigen::TensorImagePatchOp.47" = type { %"class.Eigen::TensorLayoutSwapOp", i64, i64, i64, i64, i64, i64, i64, i64, i8, i64, i64, i64, i64, i32, float }
%"class.Eigen::TensorLayoutSwapOp" = type { ptr }

@_ZN5EigenL12g_test_stackB5cxx11E = external hidden global %"class.std::vector", align 8
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.28 = external hidden unnamed_addr constant [130 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.62 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.64 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.118 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.119 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.120 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.121 = external hidden unnamed_addr constant [49 x i8], align 1
@.str.122 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.123 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.124 = external hidden unnamed_addr constant [59 x i8], align 1
@.str.125 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.126 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.127 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.128 = external hidden unnamed_addr constant [58 x i8], align 1
@.str.129 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.130 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.131 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.132 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.133 = external hidden unnamed_addr constant [47 x i8], align 1
@.str.134 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.135 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.136 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.137 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.138 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.139 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.140 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.141 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.142 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.143 = external hidden unnamed_addr constant [47 x i8], align 1
@.str.144 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.145 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.146 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.147 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.148 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.149 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.150 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.151 = external hidden unnamed_addr constant [47 x i8], align 1
@.str.152 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.153 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.154 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.155 = external hidden unnamed_addr constant [54 x i8], align 1

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

declare i32 @__gxx_personality_v0(...)

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

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #1

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

; 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)) #1

declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) #3

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext, ptr noundef, ptr noundef, i32 noundef, ptr noundef) #1

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1)) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1)) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind noalias writable sret(%"class.Eigen::TensorImagePatchOp") align 8, ptr noundef nonnull align 1 dereferenceable(1), i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i32 noundef, float noundef) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(120)) #1 align 2

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef) #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef) #5 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), i1 noundef zeroext) #2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40), i64 noundef, i64 noundef, i32 noundef, i32 noundef) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef, i64 noundef, i32 noundef, i32 noundef, i32 noundef) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef, i64 noundef, i32 noundef, i32 noundef, i32 noundef) #1 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN5Eigen6TensorIfLi5ELi1ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN5Eigen6TensorIfLi5ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN5Eigen6TensorIfLi4ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #5 align 2

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

; Function Attrs: mustprogress uwtable
define dso_local void @_Z21test_imagenet_patchesv() #2 personality ptr @__gxx_personality_v0 {
  %1 = alloca %"class.Eigen::Tensor", align 8
  %2 = alloca ptr, align 8
  %3 = alloca i32, align 4
  %4 = alloca %"class.Eigen::Tensor.16", align 8
  %5 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %6 = alloca i64, align 8
  %7 = alloca i32, align 4
  %8 = alloca i64, align 8
  %9 = alloca i32, align 4
  %10 = alloca i64, align 8
  %11 = alloca i32, align 4
  %12 = alloca i64, align 8
  %13 = alloca i32, align 4
  %14 = alloca i64, align 8
  %15 = alloca i32, align 4
  %16 = alloca %"class.Eigen::Tensor.23", align 8
  %17 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %18 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %19 = alloca i64, align 8
  %20 = alloca i32, align 4
  %21 = alloca i64, align 8
  %22 = alloca i32, align 4
  %23 = alloca i64, align 8
  %24 = alloca i32, align 4
  %25 = alloca i64, align 8
  %26 = alloca i32, align 4
  %27 = alloca i64, align 8
  %28 = alloca i32, align 4
  %29 = alloca i32, align 4
  %30 = alloca i32, align 4
  %31 = alloca i32, align 4
  %32 = alloca i32, align 4
  %33 = alloca i32, align 4
  %34 = alloca i32, align 4
  %35 = alloca i32, align 4
  %36 = alloca i32, align 4
  %37 = alloca float, align 4
  %38 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %39 = alloca i64, align 8
  %40 = alloca i32, align 4
  %41 = alloca i64, align 8
  %42 = alloca i32, align 4
  %43 = alloca i64, align 8
  %44 = alloca i32, align 4
  %45 = alloca i64, align 8
  %46 = alloca i32, align 4
  %47 = alloca i64, align 8
  %48 = alloca i32, align 4
  %49 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %50 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %51 = alloca i64, align 8
  %52 = alloca i32, align 4
  %53 = alloca i64, align 8
  %54 = alloca i32, align 4
  %55 = alloca i64, align 8
  %56 = alloca i32, align 4
  %57 = alloca i64, align 8
  %58 = alloca i32, align 4
  %59 = alloca i64, align 8
  %60 = alloca i32, align 4
  %61 = alloca i32, align 4
  %62 = alloca i32, align 4
  %63 = alloca i32, align 4
  %64 = alloca i32, align 4
  %65 = alloca i32, align 4
  %66 = alloca i32, align 4
  %67 = alloca i32, align 4
  %68 = alloca float, align 4
  %69 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %70 = alloca i64, align 8
  %71 = alloca i32, align 4
  %72 = alloca i64, align 8
  %73 = alloca i32, align 4
  %74 = alloca i64, align 8
  %75 = alloca i32, align 4
  %76 = alloca i64, align 8
  %77 = alloca i32, align 4
  %78 = alloca i64, align 8
  %79 = alloca i32, align 4
  %80 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %81 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %82 = alloca i64, align 8
  %83 = alloca i32, align 4
  %84 = alloca i64, align 8
  %85 = alloca i32, align 4
  %86 = alloca i64, align 8
  %87 = alloca i32, align 4
  %88 = alloca i64, align 8
  %89 = alloca i32, align 4
  %90 = alloca i64, align 8
  %91 = alloca i32, align 4
  %92 = alloca i32, align 4
  %93 = alloca i32, align 4
  %94 = alloca i32, align 4
  %95 = alloca i32, align 4
  %96 = alloca i32, align 4
  %97 = alloca i32, align 4
  %98 = alloca i32, align 4
  %99 = alloca float, align 4
  %100 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %101 = alloca i64, align 8
  %102 = alloca i32, align 4
  %103 = alloca i64, align 8
  %104 = alloca i32, align 4
  %105 = alloca i64, align 8
  %106 = alloca i32, align 4
  %107 = alloca i64, align 8
  %108 = alloca i32, align 4
  %109 = alloca i64, align 8
  %110 = alloca i32, align 4
  %111 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %112 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %113 = alloca i64, align 8
  %114 = alloca i32, align 4
  %115 = alloca i64, align 8
  %116 = alloca i32, align 4
  %117 = alloca i64, align 8
  %118 = alloca i32, align 4
  %119 = alloca i64, align 8
  %120 = alloca i32, align 4
  %121 = alloca i64, align 8
  %122 = alloca i32, align 4
  %123 = alloca i32, align 4
  %124 = alloca i32, align 4
  %125 = alloca i32, align 4
  %126 = alloca i32, align 4
  %127 = alloca i32, align 4
  %128 = alloca i32, align 4
  %129 = alloca i32, align 4
  %130 = alloca float, align 4
  call void @llvm.lifetime.start.p0(i64 40, ptr %1) #6
  call void @_ZN5Eigen6TensorIfLi4ELi0ElEC2IJiiiEEElDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 3, i32 noundef 128, i32 noundef 128, i32 noundef 16)
  %131 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %132 unwind label %214

132:                                              ; preds = %0
  call void @llvm.lifetime.start.p0(i64 48, ptr %4) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr %5) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %5, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 11, i64 noundef 11, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %133 unwind label %218

133:                                              ; preds = %132
  invoke void @_ZN5Eigen6TensorIfLi5ELi0ElEC2INS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERKNS_10TensorBaseIT_Li0EEE(ptr noundef nonnull align 8 dereferenceable(48) %4, ptr noundef nonnull align 1 dereferenceable(1) %5)
          to label %134 unwind label %218

134:                                              ; preds = %133
  call void @llvm.lifetime.end.p0(i64 120, ptr %5) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %6) #6
  %135 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 0)
          to label %136 unwind label %222

136:                                              ; preds = %134
  store i64 %135, ptr %6, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %7) #6
  store i32 3, ptr %7, align 4, !tbaa !9
  %137 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull align 4 dereferenceable(4) %7, i1 noundef zeroext true)
          to label %138 unwind label %226

138:                                              ; preds = %136
  %139 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %140 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %139) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %137, ptr noundef %140, ptr noundef @.str.28, i32 noundef 615, ptr noundef @.str.118)
          to label %141 unwind label %226

141:                                              ; preds = %138
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %8) #6
  %142 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 1)
          to label %143 unwind label %231

143:                                              ; preds = %141
  store i64 %142, ptr %8, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %9) #6
  store i32 11, ptr %9, align 4, !tbaa !9
  %144 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef nonnull align 4 dereferenceable(4) %9, i1 noundef zeroext true)
          to label %145 unwind label %235

145:                                              ; preds = %143
  %146 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %147 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %146) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %144, ptr noundef %147, ptr noundef @.str.28, i32 noundef 616, ptr noundef @.str.119)
          to label %148 unwind label %235

148:                                              ; preds = %145
  call void @llvm.lifetime.end.p0(i64 4, ptr %9) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %8) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %10) #6
  %149 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 2)
          to label %150 unwind label %240

150:                                              ; preds = %148
  store i64 %149, ptr %10, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #6
  store i32 11, ptr %11, align 4, !tbaa !9
  %151 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %10, ptr noundef nonnull align 4 dereferenceable(4) %11, i1 noundef zeroext true)
          to label %152 unwind label %244

152:                                              ; preds = %150
  %153 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %154 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %153) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %151, ptr noundef %154, ptr noundef @.str.28, i32 noundef 617, ptr noundef @.str.120)
          to label %155 unwind label %244

155:                                              ; preds = %152
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %10) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %12) #6
  %156 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 3)
          to label %157 unwind label %249

157:                                              ; preds = %155
  store i64 %156, ptr %12, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #6
  store i32 16384, ptr %13, align 4, !tbaa !9
  %158 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %12, ptr noundef nonnull align 4 dereferenceable(4) %13, i1 noundef zeroext true)
          to label %159 unwind label %253

159:                                              ; preds = %157
  %160 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %161 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %160) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %158, ptr noundef %161, ptr noundef @.str.28, i32 noundef 618, ptr noundef @.str.121)
          to label %162 unwind label %253

162:                                              ; preds = %159
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %14) #6
  %163 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 4)
          to label %164 unwind label %258

164:                                              ; preds = %162
  store i64 %163, ptr %14, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #6
  store i32 16, ptr %15, align 4, !tbaa !9
  %165 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %14, ptr noundef nonnull align 4 dereferenceable(4) %15, i1 noundef zeroext true)
          to label %166 unwind label %262

166:                                              ; preds = %164
  %167 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %168 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %167) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %165, ptr noundef %168, ptr noundef @.str.28, i32 noundef 619, ptr noundef @.str.122)
          to label %169 unwind label %262

169:                                              ; preds = %166
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %16) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr %17) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %18) #6
  %170 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %171 unwind label %267

171:                                              ; preds = %169
  %172 = getelementptr inbounds %"class.Eigen::TensorLayoutSwapOp", ptr %18, i32 0, i32 0
  store ptr %170, ptr %172, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %17, ptr noundef nonnull align 1 dereferenceable(1) %18, i64 noundef 11, i64 noundef 11, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %173 unwind label %267

173:                                              ; preds = %171
  invoke void @_ZN5Eigen6TensorIfLi5ELi1ElEC2INS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERKNS_10TensorBaseIT_Li0EEE(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 1 dereferenceable(1) %17)
          to label %174 unwind label %267

174:                                              ; preds = %173
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %17) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #6
  %175 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 0)
          to label %176 unwind label %271

176:                                              ; preds = %174
  store i64 %175, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %20) #6
  store i32 16, ptr %20, align 4, !tbaa !9
  %177 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef nonnull align 4 dereferenceable(4) %20, i1 noundef zeroext true)
          to label %178 unwind label %275

178:                                              ; preds = %176
  %179 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %180 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %179) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %177, ptr noundef %180, ptr noundef @.str.28, i32 noundef 623, ptr noundef @.str.123)
          to label %181 unwind label %275

181:                                              ; preds = %178
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %21) #6
  %182 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 1)
          to label %183 unwind label %280

183:                                              ; preds = %181
  store i64 %182, ptr %21, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #6
  store i32 16384, ptr %22, align 4, !tbaa !9
  %184 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %21, ptr noundef nonnull align 4 dereferenceable(4) %22, i1 noundef zeroext true)
          to label %185 unwind label %284

185:                                              ; preds = %183
  %186 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %187 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %186) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %184, ptr noundef %187, ptr noundef @.str.28, i32 noundef 624, ptr noundef @.str.124)
          to label %188 unwind label %284

188:                                              ; preds = %185
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %23) #6
  %189 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 2)
          to label %190 unwind label %289

190:                                              ; preds = %188
  store i64 %189, ptr %23, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #6
  store i32 11, ptr %24, align 4, !tbaa !9
  %191 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 4 dereferenceable(4) %24, i1 noundef zeroext true)
          to label %192 unwind label %293

192:                                              ; preds = %190
  %193 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %194 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %193) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %191, ptr noundef %194, ptr noundef @.str.28, i32 noundef 625, ptr noundef @.str.125)
          to label %195 unwind label %293

195:                                              ; preds = %192
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %25) #6
  %196 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 3)
          to label %197 unwind label %298

197:                                              ; preds = %195
  store i64 %196, ptr %25, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #6
  store i32 11, ptr %26, align 4, !tbaa !9
  %198 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %25, ptr noundef nonnull align 4 dereferenceable(4) %26, i1 noundef zeroext true)
          to label %199 unwind label %302

199:                                              ; preds = %197
  %200 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %201 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %200) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %198, ptr noundef %201, ptr noundef @.str.28, i32 noundef 626, ptr noundef @.str.126)
          to label %202 unwind label %302

202:                                              ; preds = %199
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %25) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %27) #6
  %203 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 4)
          to label %204 unwind label %307

204:                                              ; preds = %202
  store i64 %203, ptr %27, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %28) #6
  store i32 3, ptr %28, align 4, !tbaa !9
  %205 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 4 dereferenceable(4) %28, i1 noundef zeroext true)
          to label %206 unwind label %311

206:                                              ; preds = %204
  %207 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %208 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %207) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %205, ptr noundef %208, ptr noundef @.str.28, i32 noundef 627, ptr noundef @.str.127)
          to label %209 unwind label %311

209:                                              ; preds = %206
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #6
  store i32 0, ptr %29, align 4, !tbaa !9
  br label %210

210:                                              ; preds = %530, %209
  %211 = load i32, ptr %29, align 4, !tbaa !9
  %212 = icmp slt i32 %211, 16
  br i1 %212, label %316, label %213

213:                                              ; preds = %210
  store i32 2, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  br label %533

214:                                              ; preds = %0
  %215 = landingpad { ptr, i32 }
          cleanup
  %216 = extractvalue { ptr, i32 } %215, 0
  store ptr %216, ptr %2, align 8
  %217 = extractvalue { ptr, i32 } %215, 1
  store i32 %217, ptr %3, align 4
  br label %1748

218:                                              ; preds = %133, %132
  %219 = landingpad { ptr, i32 }
          cleanup
  %220 = extractvalue { ptr, i32 } %219, 0
  store ptr %220, ptr %2, align 8
  %221 = extractvalue { ptr, i32 } %219, 1
  store i32 %221, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 120, ptr %5) #6
  br label %1747

222:                                              ; preds = %134
  %223 = landingpad { ptr, i32 }
          cleanup
  %224 = extractvalue { ptr, i32 } %223, 0
  store ptr %224, ptr %2, align 8
  %225 = extractvalue { ptr, i32 } %223, 1
  store i32 %225, ptr %3, align 4
  br label %230

226:                                              ; preds = %138, %136
  %227 = landingpad { ptr, i32 }
          cleanup
  %228 = extractvalue { ptr, i32 } %227, 0
  store ptr %228, ptr %2, align 8
  %229 = extractvalue { ptr, i32 } %227, 1
  store i32 %229, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #6
  br label %230

230:                                              ; preds = %226, %222
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #6
  br label %1746

231:                                              ; preds = %141
  %232 = landingpad { ptr, i32 }
          cleanup
  %233 = extractvalue { ptr, i32 } %232, 0
  store ptr %233, ptr %2, align 8
  %234 = extractvalue { ptr, i32 } %232, 1
  store i32 %234, ptr %3, align 4
  br label %239

235:                                              ; preds = %145, %143
  %236 = landingpad { ptr, i32 }
          cleanup
  %237 = extractvalue { ptr, i32 } %236, 0
  store ptr %237, ptr %2, align 8
  %238 = extractvalue { ptr, i32 } %236, 1
  store i32 %238, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %9) #6
  br label %239

239:                                              ; preds = %235, %231
  call void @llvm.lifetime.end.p0(i64 8, ptr %8) #6
  br label %1746

240:                                              ; preds = %148
  %241 = landingpad { ptr, i32 }
          cleanup
  %242 = extractvalue { ptr, i32 } %241, 0
  store ptr %242, ptr %2, align 8
  %243 = extractvalue { ptr, i32 } %241, 1
  store i32 %243, ptr %3, align 4
  br label %248

244:                                              ; preds = %152, %150
  %245 = landingpad { ptr, i32 }
          cleanup
  %246 = extractvalue { ptr, i32 } %245, 0
  store ptr %246, ptr %2, align 8
  %247 = extractvalue { ptr, i32 } %245, 1
  store i32 %247, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #6
  br label %248

248:                                              ; preds = %244, %240
  call void @llvm.lifetime.end.p0(i64 8, ptr %10) #6
  br label %1746

249:                                              ; preds = %155
  %250 = landingpad { ptr, i32 }
          cleanup
  %251 = extractvalue { ptr, i32 } %250, 0
  store ptr %251, ptr %2, align 8
  %252 = extractvalue { ptr, i32 } %250, 1
  store i32 %252, ptr %3, align 4
  br label %257

253:                                              ; preds = %159, %157
  %254 = landingpad { ptr, i32 }
          cleanup
  %255 = extractvalue { ptr, i32 } %254, 0
  store ptr %255, ptr %2, align 8
  %256 = extractvalue { ptr, i32 } %254, 1
  store i32 %256, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  br label %257

257:                                              ; preds = %253, %249
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #6
  br label %1746

258:                                              ; preds = %162
  %259 = landingpad { ptr, i32 }
          cleanup
  %260 = extractvalue { ptr, i32 } %259, 0
  store ptr %260, ptr %2, align 8
  %261 = extractvalue { ptr, i32 } %259, 1
  store i32 %261, ptr %3, align 4
  br label %266

262:                                              ; preds = %166, %164
  %263 = landingpad { ptr, i32 }
          cleanup
  %264 = extractvalue { ptr, i32 } %263, 0
  store ptr %264, ptr %2, align 8
  %265 = extractvalue { ptr, i32 } %263, 1
  store i32 %265, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  br label %266

266:                                              ; preds = %262, %258
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #6
  br label %1746

267:                                              ; preds = %173, %171, %169
  %268 = landingpad { ptr, i32 }
          cleanup
  %269 = extractvalue { ptr, i32 } %268, 0
  store ptr %269, ptr %2, align 8
  %270 = extractvalue { ptr, i32 } %268, 1
  store i32 %270, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %17) #6
  br label %1745

271:                                              ; preds = %174
  %272 = landingpad { ptr, i32 }
          cleanup
  %273 = extractvalue { ptr, i32 } %272, 0
  store ptr %273, ptr %2, align 8
  %274 = extractvalue { ptr, i32 } %272, 1
  store i32 %274, ptr %3, align 4
  br label %279

275:                                              ; preds = %178, %176
  %276 = landingpad { ptr, i32 }
          cleanup
  %277 = extractvalue { ptr, i32 } %276, 0
  store ptr %277, ptr %2, align 8
  %278 = extractvalue { ptr, i32 } %276, 1
  store i32 %278, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #6
  br label %279

279:                                              ; preds = %275, %271
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #6
  br label %1744

280:                                              ; preds = %181
  %281 = landingpad { ptr, i32 }
          cleanup
  %282 = extractvalue { ptr, i32 } %281, 0
  store ptr %282, ptr %2, align 8
  %283 = extractvalue { ptr, i32 } %281, 1
  store i32 %283, ptr %3, align 4
  br label %288

284:                                              ; preds = %185, %183
  %285 = landingpad { ptr, i32 }
          cleanup
  %286 = extractvalue { ptr, i32 } %285, 0
  store ptr %286, ptr %2, align 8
  %287 = extractvalue { ptr, i32 } %285, 1
  store i32 %287, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #6
  br label %288

288:                                              ; preds = %284, %280
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #6
  br label %1744

289:                                              ; preds = %188
  %290 = landingpad { ptr, i32 }
          cleanup
  %291 = extractvalue { ptr, i32 } %290, 0
  store ptr %291, ptr %2, align 8
  %292 = extractvalue { ptr, i32 } %290, 1
  store i32 %292, ptr %3, align 4
  br label %297

293:                                              ; preds = %192, %190
  %294 = landingpad { ptr, i32 }
          cleanup
  %295 = extractvalue { ptr, i32 } %294, 0
  store ptr %295, ptr %2, align 8
  %296 = extractvalue { ptr, i32 } %294, 1
  store i32 %296, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  br label %297

297:                                              ; preds = %293, %289
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #6
  br label %1744

298:                                              ; preds = %195
  %299 = landingpad { ptr, i32 }
          cleanup
  %300 = extractvalue { ptr, i32 } %299, 0
  store ptr %300, ptr %2, align 8
  %301 = extractvalue { ptr, i32 } %299, 1
  store i32 %301, ptr %3, align 4
  br label %306

302:                                              ; preds = %199, %197
  %303 = landingpad { ptr, i32 }
          cleanup
  %304 = extractvalue { ptr, i32 } %303, 0
  store ptr %304, ptr %2, align 8
  %305 = extractvalue { ptr, i32 } %303, 1
  store i32 %305, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #6
  br label %306

306:                                              ; preds = %302, %298
  call void @llvm.lifetime.end.p0(i64 8, ptr %25) #6
  br label %1744

307:                                              ; preds = %202
  %308 = landingpad { ptr, i32 }
          cleanup
  %309 = extractvalue { ptr, i32 } %308, 0
  store ptr %309, ptr %2, align 8
  %310 = extractvalue { ptr, i32 } %308, 1
  store i32 %310, ptr %3, align 4
  br label %315

311:                                              ; preds = %206, %204
  %312 = landingpad { ptr, i32 }
          cleanup
  %313 = extractvalue { ptr, i32 } %312, 0
  store ptr %313, ptr %2, align 8
  %314 = extractvalue { ptr, i32 } %312, 1
  store i32 %314, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #6
  br label %315

315:                                              ; preds = %311, %307
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #6
  br label %1744

316:                                              ; preds = %210
  call void @llvm.lifetime.start.p0(i64 4, ptr %31) #6
  store i32 0, ptr %31, align 4, !tbaa !9
  br label %317

317:                                              ; preds = %526, %316
  %318 = load i32, ptr %31, align 4, !tbaa !9
  %319 = icmp slt i32 %318, 128
  br i1 %319, label %321, label %320

320:                                              ; preds = %317
  store i32 5, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #6
  br label %529

321:                                              ; preds = %317
  call void @llvm.lifetime.start.p0(i64 4, ptr %32) #6
  store i32 0, ptr %32, align 4, !tbaa !9
  br label %322

322:                                              ; preds = %522, %321
  %323 = load i32, ptr %32, align 4, !tbaa !9
  %324 = icmp slt i32 %323, 128
  br i1 %324, label %326, label %325

325:                                              ; preds = %322
  store i32 8, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #6
  br label %525

326:                                              ; preds = %322
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #6
  %327 = load i32, ptr %31, align 4, !tbaa !9
  %328 = load i32, ptr %32, align 4, !tbaa !9
  %329 = mul nsw i32 128, %328
  %330 = add nsw i32 %327, %329
  store i32 %330, ptr %33, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #6
  store i32 0, ptr %34, align 4, !tbaa !9
  br label %331

331:                                              ; preds = %518, %326
  %332 = load i32, ptr %34, align 4, !tbaa !9
  %333 = icmp slt i32 %332, 11
  br i1 %333, label %335, label %334

334:                                              ; preds = %331
  store i32 11, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  br label %521

335:                                              ; preds = %331
  call void @llvm.lifetime.start.p0(i64 4, ptr %35) #6
  store i32 0, ptr %35, align 4, !tbaa !9
  br label %336

336:                                              ; preds = %514, %335
  %337 = load i32, ptr %35, align 4, !tbaa !9
  %338 = icmp slt i32 %337, 11
  br i1 %338, label %340, label %339

339:                                              ; preds = %336
  store i32 14, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #6
  br label %517

340:                                              ; preds = %336
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #6
  store i32 0, ptr %36, align 4, !tbaa !9
  br label %341

341:                                              ; preds = %510, %340
  %342 = load i32, ptr %36, align 4, !tbaa !9
  %343 = icmp slt i32 %342, 3
  br i1 %343, label %345, label %344

344:                                              ; preds = %341
  store i32 17, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  br label %513

345:                                              ; preds = %341
  call void @llvm.lifetime.start.p0(i64 4, ptr %37) #6
  store float 0.000000e+00, ptr %37, align 4, !tbaa !11
  %346 = load i32, ptr %35, align 4, !tbaa !9
  %347 = sub nsw i32 %346, 5
  %348 = load i32, ptr %31, align 4, !tbaa !9
  %349 = add nsw i32 %347, %348
  %350 = icmp sge i32 %349, 0
  br i1 %350, label %351, label %389

351:                                              ; preds = %345
  %352 = load i32, ptr %34, align 4, !tbaa !9
  %353 = sub nsw i32 %352, 5
  %354 = load i32, ptr %32, align 4, !tbaa !9
  %355 = add nsw i32 %353, %354
  %356 = icmp sge i32 %355, 0
  br i1 %356, label %357, label %389

357:                                              ; preds = %351
  %358 = load i32, ptr %35, align 4, !tbaa !9
  %359 = sub nsw i32 %358, 5
  %360 = load i32, ptr %31, align 4, !tbaa !9
  %361 = add nsw i32 %359, %360
  %362 = icmp slt i32 %361, 128
  br i1 %362, label %363, label %389

363:                                              ; preds = %357
  %364 = load i32, ptr %34, align 4, !tbaa !9
  %365 = sub nsw i32 %364, 5
  %366 = load i32, ptr %32, align 4, !tbaa !9
  %367 = add nsw i32 %365, %366
  %368 = icmp slt i32 %367, 128
  br i1 %368, label %369, label %389

369:                                              ; preds = %363
  %370 = load i32, ptr %36, align 4, !tbaa !9
  %371 = sext i32 %370 to i64
  %372 = load i32, ptr %35, align 4, !tbaa !9
  %373 = sub nsw i32 %372, 5
  %374 = load i32, ptr %31, align 4, !tbaa !9
  %375 = add nsw i32 %373, %374
  %376 = sext i32 %375 to i64
  %377 = load i32, ptr %34, align 4, !tbaa !9
  %378 = sub nsw i32 %377, 5
  %379 = load i32, ptr %32, align 4, !tbaa !9
  %380 = add nsw i32 %378, %379
  %381 = load i32, ptr %29, align 4, !tbaa !9
  %382 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %371, i64 noundef %376, i32 noundef %380, i32 noundef %381)
          to label %383 unwind label %385

383:                                              ; preds = %369
  %384 = load float, ptr %382, align 4, !tbaa !11
  store float %384, ptr %37, align 4, !tbaa !11
  br label %389

385:                                              ; preds = %506, %504, %495, %492, %489, %487, %484, %482, %479, %477, %474, %472, %469, %467, %464, %462, %449, %446, %444, %435, %432, %429, %427, %424, %422, %419, %417, %414, %412, %409, %407, %404, %402, %389, %369
  %386 = landingpad { ptr, i32 }
          cleanup
  %387 = extractvalue { ptr, i32 } %386, 0
  store ptr %387, ptr %2, align 8
  %388 = extractvalue { ptr, i32 } %386, 1
  store i32 %388, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  br label %1744

389:                                              ; preds = %383, %363, %357, %351, %345
  %390 = load i32, ptr %36, align 4, !tbaa !9
  %391 = sext i32 %390 to i64
  %392 = load i32, ptr %35, align 4, !tbaa !9
  %393 = sext i32 %392 to i64
  %394 = load i32, ptr %34, align 4, !tbaa !9
  %395 = load i32, ptr %33, align 4, !tbaa !9
  %396 = load i32, ptr %29, align 4, !tbaa !9
  %397 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %391, i64 noundef %393, i32 noundef %394, i32 noundef %395, i32 noundef %396)
          to label %398 unwind label %385

398:                                              ; preds = %389
  %399 = load float, ptr %397, align 4, !tbaa !11
  %400 = load float, ptr %37, align 4, !tbaa !11
  %401 = fcmp une float %399, %400
  br i1 %401, label %402, label %435

402:                                              ; preds = %398
  %403 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %404 unwind label %385

404:                                              ; preds = %402
  %405 = load i32, ptr %31, align 4, !tbaa !9
  %406 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %403, i32 noundef %405)
          to label %407 unwind label %385

407:                                              ; preds = %404
  %408 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %406, ptr noundef @.str.61)
          to label %409 unwind label %385

409:                                              ; preds = %407
  %410 = load i32, ptr %32, align 4, !tbaa !9
  %411 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %408, i32 noundef %410)
          to label %412 unwind label %385

412:                                              ; preds = %409
  %413 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %411, ptr noundef @.str.62)
          to label %414 unwind label %385

414:                                              ; preds = %412
  %415 = load i32, ptr %35, align 4, !tbaa !9
  %416 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %413, i32 noundef %415)
          to label %417 unwind label %385

417:                                              ; preds = %414
  %418 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %416, ptr noundef @.str.63)
          to label %419 unwind label %385

419:                                              ; preds = %417
  %420 = load i32, ptr %34, align 4, !tbaa !9
  %421 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %418, i32 noundef %420)
          to label %422 unwind label %385

422:                                              ; preds = %419
  %423 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %421, ptr noundef @.str.64)
          to label %424 unwind label %385

424:                                              ; preds = %422
  %425 = load i32, ptr %36, align 4, !tbaa !9
  %426 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %423, i32 noundef %425)
          to label %427 unwind label %385

427:                                              ; preds = %424
  %428 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %426, ptr noundef @.str.65)
          to label %429 unwind label %385

429:                                              ; preds = %427
  %430 = load i32, ptr %29, align 4, !tbaa !9
  %431 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %428, i32 noundef %430)
          to label %432 unwind label %385

432:                                              ; preds = %429
  %433 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %431, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %434 unwind label %385

434:                                              ; preds = %432
  br label %435

435:                                              ; preds = %434, %398
  %436 = load i32, ptr %36, align 4, !tbaa !9
  %437 = sext i32 %436 to i64
  %438 = load i32, ptr %35, align 4, !tbaa !9
  %439 = sext i32 %438 to i64
  %440 = load i32, ptr %34, align 4, !tbaa !9
  %441 = load i32, ptr %33, align 4, !tbaa !9
  %442 = load i32, ptr %29, align 4, !tbaa !9
  %443 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %437, i64 noundef %439, i32 noundef %440, i32 noundef %441, i32 noundef %442)
          to label %444 unwind label %385

444:                                              ; preds = %435
  %445 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %443, ptr noundef nonnull align 4 dereferenceable(4) %37, i1 noundef zeroext true)
          to label %446 unwind label %385

446:                                              ; preds = %444
  %447 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %448 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %447) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %445, ptr noundef %448, ptr noundef @.str.28, i32 noundef 644, ptr noundef @.str.128)
          to label %449 unwind label %385

449:                                              ; preds = %446
  %450 = load i32, ptr %29, align 4, !tbaa !9
  %451 = sext i32 %450 to i64
  %452 = load i32, ptr %33, align 4, !tbaa !9
  %453 = sext i32 %452 to i64
  %454 = load i32, ptr %34, align 4, !tbaa !9
  %455 = load i32, ptr %35, align 4, !tbaa !9
  %456 = load i32, ptr %36, align 4, !tbaa !9
  %457 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %451, i64 noundef %453, i32 noundef %454, i32 noundef %455, i32 noundef %456)
          to label %458 unwind label %385

458:                                              ; preds = %449
  %459 = load float, ptr %457, align 4, !tbaa !11
  %460 = load float, ptr %37, align 4, !tbaa !11
  %461 = fcmp une float %459, %460
  br i1 %461, label %462, label %495

462:                                              ; preds = %458
  %463 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %464 unwind label %385

464:                                              ; preds = %462
  %465 = load i32, ptr %31, align 4, !tbaa !9
  %466 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %463, i32 noundef %465)
          to label %467 unwind label %385

467:                                              ; preds = %464
  %468 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %466, ptr noundef @.str.61)
          to label %469 unwind label %385

469:                                              ; preds = %467
  %470 = load i32, ptr %32, align 4, !tbaa !9
  %471 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %468, i32 noundef %470)
          to label %472 unwind label %385

472:                                              ; preds = %469
  %473 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %471, ptr noundef @.str.62)
          to label %474 unwind label %385

474:                                              ; preds = %472
  %475 = load i32, ptr %35, align 4, !tbaa !9
  %476 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %473, i32 noundef %475)
          to label %477 unwind label %385

477:                                              ; preds = %474
  %478 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %476, ptr noundef @.str.63)
          to label %479 unwind label %385

479:                                              ; preds = %477
  %480 = load i32, ptr %34, align 4, !tbaa !9
  %481 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %478, i32 noundef %480)
          to label %482 unwind label %385

482:                                              ; preds = %479
  %483 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %481, ptr noundef @.str.64)
          to label %484 unwind label %385

484:                                              ; preds = %482
  %485 = load i32, ptr %36, align 4, !tbaa !9
  %486 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %483, i32 noundef %485)
          to label %487 unwind label %385

487:                                              ; preds = %484
  %488 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %486, ptr noundef @.str.65)
          to label %489 unwind label %385

489:                                              ; preds = %487
  %490 = load i32, ptr %29, align 4, !tbaa !9
  %491 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %488, i32 noundef %490)
          to label %492 unwind label %385

492:                                              ; preds = %489
  %493 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %491, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %494 unwind label %385

494:                                              ; preds = %492
  br label %495

495:                                              ; preds = %494, %458
  %496 = load i32, ptr %29, align 4, !tbaa !9
  %497 = sext i32 %496 to i64
  %498 = load i32, ptr %33, align 4, !tbaa !9
  %499 = sext i32 %498 to i64
  %500 = load i32, ptr %34, align 4, !tbaa !9
  %501 = load i32, ptr %35, align 4, !tbaa !9
  %502 = load i32, ptr %36, align 4, !tbaa !9
  %503 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %497, i64 noundef %499, i32 noundef %500, i32 noundef %501, i32 noundef %502)
          to label %504 unwind label %385

504:                                              ; preds = %495
  %505 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %503, ptr noundef nonnull align 4 dereferenceable(4) %37, i1 noundef zeroext true)
          to label %506 unwind label %385

506:                                              ; preds = %504
  %507 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %508 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %507) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %505, ptr noundef %508, ptr noundef @.str.28, i32 noundef 653, ptr noundef @.str.129)
          to label %509 unwind label %385

509:                                              ; preds = %506
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #6
  br label %510

510:                                              ; preds = %509
  %511 = load i32, ptr %36, align 4, !tbaa !9
  %512 = add nsw i32 %511, 1
  store i32 %512, ptr %36, align 4, !tbaa !9
  br label %341, !llvm.loop !13

513:                                              ; preds = %344
  br label %514

514:                                              ; preds = %513
  %515 = load i32, ptr %35, align 4, !tbaa !9
  %516 = add nsw i32 %515, 1
  store i32 %516, ptr %35, align 4, !tbaa !9
  br label %336, !llvm.loop !15

517:                                              ; preds = %339
  br label %518

518:                                              ; preds = %517
  %519 = load i32, ptr %34, align 4, !tbaa !9
  %520 = add nsw i32 %519, 1
  store i32 %520, ptr %34, align 4, !tbaa !9
  br label %331, !llvm.loop !16

521:                                              ; preds = %334
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #6
  br label %522

522:                                              ; preds = %521
  %523 = load i32, ptr %32, align 4, !tbaa !9
  %524 = add nsw i32 %523, 1
  store i32 %524, ptr %32, align 4, !tbaa !9
  br label %322, !llvm.loop !17

525:                                              ; preds = %325
  br label %526

526:                                              ; preds = %525
  %527 = load i32, ptr %31, align 4, !tbaa !9
  %528 = add nsw i32 %527, 1
  store i32 %528, ptr %31, align 4, !tbaa !9
  br label %317, !llvm.loop !18

529:                                              ; preds = %320
  br label %530

530:                                              ; preds = %529
  %531 = load i32, ptr %29, align 4, !tbaa !9
  %532 = add nsw i32 %531, 1
  store i32 %532, ptr %29, align 4, !tbaa !9
  br label %210, !llvm.loop !19

533:                                              ; preds = %213
  invoke void @_ZN5Eigen6TensorIfLi4ELi0ElE6resizeIJiiiEEEvlDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 16, i32 noundef 64, i32 noundef 64, i32 noundef 32)
          to label %534 unwind label %620

534:                                              ; preds = %533
  %535 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %536 unwind label %620

536:                                              ; preds = %534
  call void @llvm.lifetime.start.p0(i64 120, ptr %38) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %38, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 9, i64 noundef 9, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %537 unwind label %624

537:                                              ; preds = %536
  %538 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %4, ptr noundef nonnull align 8 dereferenceable(120) %38)
          to label %539 unwind label %624

539:                                              ; preds = %537
  call void @llvm.lifetime.end.p0(i64 120, ptr %38) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %39) #6
  %540 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 0)
          to label %541 unwind label %628

541:                                              ; preds = %539
  store i64 %540, ptr %39, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %40) #6
  store i32 16, ptr %40, align 4, !tbaa !9
  %542 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %39, ptr noundef nonnull align 4 dereferenceable(4) %40, i1 noundef zeroext true)
          to label %543 unwind label %632

543:                                              ; preds = %541
  %544 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %545 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %544) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %542, ptr noundef %545, ptr noundef @.str.28, i32 noundef 665, ptr noundef @.str.130)
          to label %546 unwind label %632

546:                                              ; preds = %543
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #6
  %547 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 1)
          to label %548 unwind label %637

548:                                              ; preds = %546
  store i64 %547, ptr %41, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %42) #6
  store i32 9, ptr %42, align 4, !tbaa !9
  %549 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %41, ptr noundef nonnull align 4 dereferenceable(4) %42, i1 noundef zeroext true)
          to label %550 unwind label %641

550:                                              ; preds = %548
  %551 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %552 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %551) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %549, ptr noundef %552, ptr noundef @.str.28, i32 noundef 666, ptr noundef @.str.131)
          to label %553 unwind label %641

553:                                              ; preds = %550
  call void @llvm.lifetime.end.p0(i64 4, ptr %42) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #6
  %554 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 2)
          to label %555 unwind label %646

555:                                              ; preds = %553
  store i64 %554, ptr %43, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %44) #6
  store i32 9, ptr %44, align 4, !tbaa !9
  %556 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %43, ptr noundef nonnull align 4 dereferenceable(4) %44, i1 noundef zeroext true)
          to label %557 unwind label %650

557:                                              ; preds = %555
  %558 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %559 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %558) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %556, ptr noundef %559, ptr noundef @.str.28, i32 noundef 667, ptr noundef @.str.132)
          to label %560 unwind label %650

560:                                              ; preds = %557
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %45) #6
  %561 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 3)
          to label %562 unwind label %655

562:                                              ; preds = %560
  store i64 %561, ptr %45, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %46) #6
  store i32 4096, ptr %46, align 4, !tbaa !9
  %563 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %45, ptr noundef nonnull align 4 dereferenceable(4) %46, i1 noundef zeroext true)
          to label %564 unwind label %659

564:                                              ; preds = %562
  %565 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %566 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %565) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %563, ptr noundef %566, ptr noundef @.str.28, i32 noundef 668, ptr noundef @.str.133)
          to label %567 unwind label %659

567:                                              ; preds = %564
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %47) #6
  %568 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 4)
          to label %569 unwind label %664

569:                                              ; preds = %567
  store i64 %568, ptr %47, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %48) #6
  store i32 32, ptr %48, align 4, !tbaa !9
  %570 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %47, ptr noundef nonnull align 4 dereferenceable(4) %48, i1 noundef zeroext true)
          to label %571 unwind label %668

571:                                              ; preds = %569
  %572 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %573 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %572) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %570, ptr noundef %573, ptr noundef @.str.28, i32 noundef 669, ptr noundef @.str.134)
          to label %574 unwind label %668

574:                                              ; preds = %571
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr %49) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %50) #6
  %575 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %576 unwind label %673

576:                                              ; preds = %574
  %577 = getelementptr inbounds %"class.Eigen::TensorLayoutSwapOp", ptr %50, i32 0, i32 0
  store ptr %575, ptr %577, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %49, ptr noundef nonnull align 1 dereferenceable(1) %50, i64 noundef 9, i64 noundef 9, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %578 unwind label %673

578:                                              ; preds = %576
  %579 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(120) %49)
          to label %580 unwind label %673

580:                                              ; preds = %578
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %49) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %51) #6
  %581 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 0)
          to label %582 unwind label %677

582:                                              ; preds = %580
  store i64 %581, ptr %51, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %52) #6
  store i32 32, ptr %52, align 4, !tbaa !9
  %583 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %51, ptr noundef nonnull align 4 dereferenceable(4) %52, i1 noundef zeroext true)
          to label %584 unwind label %681

584:                                              ; preds = %582
  %585 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %586 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %585) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %583, ptr noundef %586, ptr noundef @.str.28, i32 noundef 673, ptr noundef @.str.135)
          to label %587 unwind label %681

587:                                              ; preds = %584
  call void @llvm.lifetime.end.p0(i64 4, ptr %52) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %51) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %53) #6
  %588 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 1)
          to label %589 unwind label %686

589:                                              ; preds = %587
  store i64 %588, ptr %53, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %54) #6
  store i32 4096, ptr %54, align 4, !tbaa !9
  %590 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %53, ptr noundef nonnull align 4 dereferenceable(4) %54, i1 noundef zeroext true)
          to label %591 unwind label %690

591:                                              ; preds = %589
  %592 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %593 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %592) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %590, ptr noundef %593, ptr noundef @.str.28, i32 noundef 674, ptr noundef @.str.136)
          to label %594 unwind label %690

594:                                              ; preds = %591
  call void @llvm.lifetime.end.p0(i64 4, ptr %54) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %53) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %55) #6
  %595 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 2)
          to label %596 unwind label %695

596:                                              ; preds = %594
  store i64 %595, ptr %55, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %56) #6
  store i32 9, ptr %56, align 4, !tbaa !9
  %597 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %55, ptr noundef nonnull align 4 dereferenceable(4) %56, i1 noundef zeroext true)
          to label %598 unwind label %699

598:                                              ; preds = %596
  %599 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %600 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %599) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %597, ptr noundef %600, ptr noundef @.str.28, i32 noundef 675, ptr noundef @.str.137)
          to label %601 unwind label %699

601:                                              ; preds = %598
  call void @llvm.lifetime.end.p0(i64 4, ptr %56) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %55) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %57) #6
  %602 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 3)
          to label %603 unwind label %704

603:                                              ; preds = %601
  store i64 %602, ptr %57, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %58) #6
  store i32 9, ptr %58, align 4, !tbaa !9
  %604 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %57, ptr noundef nonnull align 4 dereferenceable(4) %58, i1 noundef zeroext true)
          to label %605 unwind label %708

605:                                              ; preds = %603
  %606 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %607 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %606) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %604, ptr noundef %607, ptr noundef @.str.28, i32 noundef 676, ptr noundef @.str.138)
          to label %608 unwind label %708

608:                                              ; preds = %605
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %57) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %59) #6
  %609 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 4)
          to label %610 unwind label %713

610:                                              ; preds = %608
  store i64 %609, ptr %59, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %60) #6
  store i32 16, ptr %60, align 4, !tbaa !9
  %611 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %59, ptr noundef nonnull align 4 dereferenceable(4) %60, i1 noundef zeroext true)
          to label %612 unwind label %717

612:                                              ; preds = %610
  %613 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %614 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %613) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %611, ptr noundef %614, ptr noundef @.str.28, i32 noundef 677, ptr noundef @.str.139)
          to label %615 unwind label %717

615:                                              ; preds = %612
  call void @llvm.lifetime.end.p0(i64 4, ptr %60) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %61) #6
  store i32 0, ptr %61, align 4, !tbaa !9
  br label %616

616:                                              ; preds = %936, %615
  %617 = load i32, ptr %61, align 4, !tbaa !9
  %618 = icmp slt i32 %617, 32
  br i1 %618, label %722, label %619

619:                                              ; preds = %616
  store i32 20, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %61) #6
  br label %939

620:                                              ; preds = %1342, %1341, %940, %939, %534, %533
  %621 = landingpad { ptr, i32 }
          cleanup
  %622 = extractvalue { ptr, i32 } %621, 0
  store ptr %622, ptr %2, align 8
  %623 = extractvalue { ptr, i32 } %621, 1
  store i32 %623, ptr %3, align 4
  br label %1744

624:                                              ; preds = %537, %536
  %625 = landingpad { ptr, i32 }
          cleanup
  %626 = extractvalue { ptr, i32 } %625, 0
  store ptr %626, ptr %2, align 8
  %627 = extractvalue { ptr, i32 } %625, 1
  store i32 %627, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 120, ptr %38) #6
  br label %1744

628:                                              ; preds = %539
  %629 = landingpad { ptr, i32 }
          cleanup
  %630 = extractvalue { ptr, i32 } %629, 0
  store ptr %630, ptr %2, align 8
  %631 = extractvalue { ptr, i32 } %629, 1
  store i32 %631, ptr %3, align 4
  br label %636

632:                                              ; preds = %543, %541
  %633 = landingpad { ptr, i32 }
          cleanup
  %634 = extractvalue { ptr, i32 } %633, 0
  store ptr %634, ptr %2, align 8
  %635 = extractvalue { ptr, i32 } %633, 1
  store i32 %635, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #6
  br label %636

636:                                              ; preds = %632, %628
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #6
  br label %1744

637:                                              ; preds = %546
  %638 = landingpad { ptr, i32 }
          cleanup
  %639 = extractvalue { ptr, i32 } %638, 0
  store ptr %639, ptr %2, align 8
  %640 = extractvalue { ptr, i32 } %638, 1
  store i32 %640, ptr %3, align 4
  br label %645

641:                                              ; preds = %550, %548
  %642 = landingpad { ptr, i32 }
          cleanup
  %643 = extractvalue { ptr, i32 } %642, 0
  store ptr %643, ptr %2, align 8
  %644 = extractvalue { ptr, i32 } %642, 1
  store i32 %644, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %42) #6
  br label %645

645:                                              ; preds = %641, %637
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  br label %1744

646:                                              ; preds = %553
  %647 = landingpad { ptr, i32 }
          cleanup
  %648 = extractvalue { ptr, i32 } %647, 0
  store ptr %648, ptr %2, align 8
  %649 = extractvalue { ptr, i32 } %647, 1
  store i32 %649, ptr %3, align 4
  br label %654

650:                                              ; preds = %557, %555
  %651 = landingpad { ptr, i32 }
          cleanup
  %652 = extractvalue { ptr, i32 } %651, 0
  store ptr %652, ptr %2, align 8
  %653 = extractvalue { ptr, i32 } %651, 1
  store i32 %653, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  br label %654

654:                                              ; preds = %650, %646
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #6
  br label %1744

655:                                              ; preds = %560
  %656 = landingpad { ptr, i32 }
          cleanup
  %657 = extractvalue { ptr, i32 } %656, 0
  store ptr %657, ptr %2, align 8
  %658 = extractvalue { ptr, i32 } %656, 1
  store i32 %658, ptr %3, align 4
  br label %663

659:                                              ; preds = %564, %562
  %660 = landingpad { ptr, i32 }
          cleanup
  %661 = extractvalue { ptr, i32 } %660, 0
  store ptr %661, ptr %2, align 8
  %662 = extractvalue { ptr, i32 } %660, 1
  store i32 %662, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  br label %663

663:                                              ; preds = %659, %655
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #6
  br label %1744

664:                                              ; preds = %567
  %665 = landingpad { ptr, i32 }
          cleanup
  %666 = extractvalue { ptr, i32 } %665, 0
  store ptr %666, ptr %2, align 8
  %667 = extractvalue { ptr, i32 } %665, 1
  store i32 %667, ptr %3, align 4
  br label %672

668:                                              ; preds = %571, %569
  %669 = landingpad { ptr, i32 }
          cleanup
  %670 = extractvalue { ptr, i32 } %669, 0
  store ptr %670, ptr %2, align 8
  %671 = extractvalue { ptr, i32 } %669, 1
  store i32 %671, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #6
  br label %672

672:                                              ; preds = %668, %664
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #6
  br label %1744

673:                                              ; preds = %578, %576, %574
  %674 = landingpad { ptr, i32 }
          cleanup
  %675 = extractvalue { ptr, i32 } %674, 0
  store ptr %675, ptr %2, align 8
  %676 = extractvalue { ptr, i32 } %674, 1
  store i32 %676, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %49) #6
  br label %1744

677:                                              ; preds = %580
  %678 = landingpad { ptr, i32 }
          cleanup
  %679 = extractvalue { ptr, i32 } %678, 0
  store ptr %679, ptr %2, align 8
  %680 = extractvalue { ptr, i32 } %678, 1
  store i32 %680, ptr %3, align 4
  br label %685

681:                                              ; preds = %584, %582
  %682 = landingpad { ptr, i32 }
          cleanup
  %683 = extractvalue { ptr, i32 } %682, 0
  store ptr %683, ptr %2, align 8
  %684 = extractvalue { ptr, i32 } %682, 1
  store i32 %684, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %52) #6
  br label %685

685:                                              ; preds = %681, %677
  call void @llvm.lifetime.end.p0(i64 8, ptr %51) #6
  br label %1744

686:                                              ; preds = %587
  %687 = landingpad { ptr, i32 }
          cleanup
  %688 = extractvalue { ptr, i32 } %687, 0
  store ptr %688, ptr %2, align 8
  %689 = extractvalue { ptr, i32 } %687, 1
  store i32 %689, ptr %3, align 4
  br label %694

690:                                              ; preds = %591, %589
  %691 = landingpad { ptr, i32 }
          cleanup
  %692 = extractvalue { ptr, i32 } %691, 0
  store ptr %692, ptr %2, align 8
  %693 = extractvalue { ptr, i32 } %691, 1
  store i32 %693, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %54) #6
  br label %694

694:                                              ; preds = %690, %686
  call void @llvm.lifetime.end.p0(i64 8, ptr %53) #6
  br label %1744

695:                                              ; preds = %594
  %696 = landingpad { ptr, i32 }
          cleanup
  %697 = extractvalue { ptr, i32 } %696, 0
  store ptr %697, ptr %2, align 8
  %698 = extractvalue { ptr, i32 } %696, 1
  store i32 %698, ptr %3, align 4
  br label %703

699:                                              ; preds = %598, %596
  %700 = landingpad { ptr, i32 }
          cleanup
  %701 = extractvalue { ptr, i32 } %700, 0
  store ptr %701, ptr %2, align 8
  %702 = extractvalue { ptr, i32 } %700, 1
  store i32 %702, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %56) #6
  br label %703

703:                                              ; preds = %699, %695
  call void @llvm.lifetime.end.p0(i64 8, ptr %55) #6
  br label %1744

704:                                              ; preds = %601
  %705 = landingpad { ptr, i32 }
          cleanup
  %706 = extractvalue { ptr, i32 } %705, 0
  store ptr %706, ptr %2, align 8
  %707 = extractvalue { ptr, i32 } %705, 1
  store i32 %707, ptr %3, align 4
  br label %712

708:                                              ; preds = %605, %603
  %709 = landingpad { ptr, i32 }
          cleanup
  %710 = extractvalue { ptr, i32 } %709, 0
  store ptr %710, ptr %2, align 8
  %711 = extractvalue { ptr, i32 } %709, 1
  store i32 %711, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #6
  br label %712

712:                                              ; preds = %708, %704
  call void @llvm.lifetime.end.p0(i64 8, ptr %57) #6
  br label %1744

713:                                              ; preds = %608
  %714 = landingpad { ptr, i32 }
          cleanup
  %715 = extractvalue { ptr, i32 } %714, 0
  store ptr %715, ptr %2, align 8
  %716 = extractvalue { ptr, i32 } %714, 1
  store i32 %716, ptr %3, align 4
  br label %721

717:                                              ; preds = %612, %610
  %718 = landingpad { ptr, i32 }
          cleanup
  %719 = extractvalue { ptr, i32 } %718, 0
  store ptr %719, ptr %2, align 8
  %720 = extractvalue { ptr, i32 } %718, 1
  store i32 %720, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %60) #6
  br label %721

721:                                              ; preds = %717, %713
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #6
  br label %1744

722:                                              ; preds = %616
  call void @llvm.lifetime.start.p0(i64 4, ptr %62) #6
  store i32 0, ptr %62, align 4, !tbaa !9
  br label %723

723:                                              ; preds = %932, %722
  %724 = load i32, ptr %62, align 4, !tbaa !9
  %725 = icmp slt i32 %724, 64
  br i1 %725, label %727, label %726

726:                                              ; preds = %723
  store i32 23, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #6
  br label %935

727:                                              ; preds = %723
  call void @llvm.lifetime.start.p0(i64 4, ptr %63) #6
  store i32 0, ptr %63, align 4, !tbaa !9
  br label %728

728:                                              ; preds = %928, %727
  %729 = load i32, ptr %63, align 4, !tbaa !9
  %730 = icmp slt i32 %729, 64
  br i1 %730, label %732, label %731

731:                                              ; preds = %728
  store i32 26, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %63) #6
  br label %931

732:                                              ; preds = %728
  call void @llvm.lifetime.start.p0(i64 4, ptr %64) #6
  %733 = load i32, ptr %62, align 4, !tbaa !9
  %734 = load i32, ptr %63, align 4, !tbaa !9
  %735 = mul nsw i32 64, %734
  %736 = add nsw i32 %733, %735
  store i32 %736, ptr %64, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %65) #6
  store i32 0, ptr %65, align 4, !tbaa !9
  br label %737

737:                                              ; preds = %924, %732
  %738 = load i32, ptr %65, align 4, !tbaa !9
  %739 = icmp slt i32 %738, 9
  br i1 %739, label %741, label %740

740:                                              ; preds = %737
  store i32 29, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %65) #6
  br label %927

741:                                              ; preds = %737
  call void @llvm.lifetime.start.p0(i64 4, ptr %66) #6
  store i32 0, ptr %66, align 4, !tbaa !9
  br label %742

742:                                              ; preds = %920, %741
  %743 = load i32, ptr %66, align 4, !tbaa !9
  %744 = icmp slt i32 %743, 9
  br i1 %744, label %746, label %745

745:                                              ; preds = %742
  store i32 32, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #6
  br label %923

746:                                              ; preds = %742
  call void @llvm.lifetime.start.p0(i64 4, ptr %67) #6
  store i32 0, ptr %67, align 4, !tbaa !9
  br label %747

747:                                              ; preds = %916, %746
  %748 = load i32, ptr %67, align 4, !tbaa !9
  %749 = icmp slt i32 %748, 16
  br i1 %749, label %751, label %750

750:                                              ; preds = %747
  store i32 35, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %67) #6
  br label %919

751:                                              ; preds = %747
  call void @llvm.lifetime.start.p0(i64 4, ptr %68) #6
  store float 0.000000e+00, ptr %68, align 4, !tbaa !11
  %752 = load i32, ptr %66, align 4, !tbaa !9
  %753 = sub nsw i32 %752, 4
  %754 = load i32, ptr %62, align 4, !tbaa !9
  %755 = add nsw i32 %753, %754
  %756 = icmp sge i32 %755, 0
  br i1 %756, label %757, label %795

757:                                              ; preds = %751
  %758 = load i32, ptr %65, align 4, !tbaa !9
  %759 = sub nsw i32 %758, 4
  %760 = load i32, ptr %63, align 4, !tbaa !9
  %761 = add nsw i32 %759, %760
  %762 = icmp sge i32 %761, 0
  br i1 %762, label %763, label %795

763:                                              ; preds = %757
  %764 = load i32, ptr %66, align 4, !tbaa !9
  %765 = sub nsw i32 %764, 4
  %766 = load i32, ptr %62, align 4, !tbaa !9
  %767 = add nsw i32 %765, %766
  %768 = icmp slt i32 %767, 64
  br i1 %768, label %769, label %795

769:                                              ; preds = %763
  %770 = load i32, ptr %65, align 4, !tbaa !9
  %771 = sub nsw i32 %770, 4
  %772 = load i32, ptr %63, align 4, !tbaa !9
  %773 = add nsw i32 %771, %772
  %774 = icmp slt i32 %773, 64
  br i1 %774, label %775, label %795

775:                                              ; preds = %769
  %776 = load i32, ptr %67, align 4, !tbaa !9
  %777 = sext i32 %776 to i64
  %778 = load i32, ptr %66, align 4, !tbaa !9
  %779 = sub nsw i32 %778, 4
  %780 = load i32, ptr %62, align 4, !tbaa !9
  %781 = add nsw i32 %779, %780
  %782 = sext i32 %781 to i64
  %783 = load i32, ptr %65, align 4, !tbaa !9
  %784 = sub nsw i32 %783, 4
  %785 = load i32, ptr %63, align 4, !tbaa !9
  %786 = add nsw i32 %784, %785
  %787 = load i32, ptr %61, align 4, !tbaa !9
  %788 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %777, i64 noundef %782, i32 noundef %786, i32 noundef %787)
          to label %789 unwind label %791

789:                                              ; preds = %775
  %790 = load float, ptr %788, align 4, !tbaa !11
  store float %790, ptr %68, align 4, !tbaa !11
  br label %795

791:                                              ; preds = %912, %910, %901, %898, %895, %893, %890, %888, %885, %883, %880, %878, %875, %873, %870, %868, %855, %852, %850, %841, %838, %835, %833, %830, %828, %825, %823, %820, %818, %815, %813, %810, %808, %795, %775
  %792 = landingpad { ptr, i32 }
          cleanup
  %793 = extractvalue { ptr, i32 } %792, 0
  store ptr %793, ptr %2, align 8
  %794 = extractvalue { ptr, i32 } %792, 1
  store i32 %794, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %67) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %65) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %63) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %61) #6
  br label %1744

795:                                              ; preds = %789, %769, %763, %757, %751
  %796 = load i32, ptr %67, align 4, !tbaa !9
  %797 = sext i32 %796 to i64
  %798 = load i32, ptr %66, align 4, !tbaa !9
  %799 = sext i32 %798 to i64
  %800 = load i32, ptr %65, align 4, !tbaa !9
  %801 = load i32, ptr %64, align 4, !tbaa !9
  %802 = load i32, ptr %61, align 4, !tbaa !9
  %803 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %797, i64 noundef %799, i32 noundef %800, i32 noundef %801, i32 noundef %802)
          to label %804 unwind label %791

804:                                              ; preds = %795
  %805 = load float, ptr %803, align 4, !tbaa !11
  %806 = load float, ptr %68, align 4, !tbaa !11
  %807 = fcmp une float %805, %806
  br i1 %807, label %808, label %841

808:                                              ; preds = %804
  %809 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %810 unwind label %791

810:                                              ; preds = %808
  %811 = load i32, ptr %62, align 4, !tbaa !9
  %812 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %809, i32 noundef %811)
          to label %813 unwind label %791

813:                                              ; preds = %810
  %814 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %812, ptr noundef @.str.61)
          to label %815 unwind label %791

815:                                              ; preds = %813
  %816 = load i32, ptr %63, align 4, !tbaa !9
  %817 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %814, i32 noundef %816)
          to label %818 unwind label %791

818:                                              ; preds = %815
  %819 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %817, ptr noundef @.str.62)
          to label %820 unwind label %791

820:                                              ; preds = %818
  %821 = load i32, ptr %66, align 4, !tbaa !9
  %822 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %819, i32 noundef %821)
          to label %823 unwind label %791

823:                                              ; preds = %820
  %824 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %822, ptr noundef @.str.63)
          to label %825 unwind label %791

825:                                              ; preds = %823
  %826 = load i32, ptr %65, align 4, !tbaa !9
  %827 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %824, i32 noundef %826)
          to label %828 unwind label %791

828:                                              ; preds = %825
  %829 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %827, ptr noundef @.str.64)
          to label %830 unwind label %791

830:                                              ; preds = %828
  %831 = load i32, ptr %67, align 4, !tbaa !9
  %832 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %829, i32 noundef %831)
          to label %833 unwind label %791

833:                                              ; preds = %830
  %834 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %832, ptr noundef @.str.65)
          to label %835 unwind label %791

835:                                              ; preds = %833
  %836 = load i32, ptr %61, align 4, !tbaa !9
  %837 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %834, i32 noundef %836)
          to label %838 unwind label %791

838:                                              ; preds = %835
  %839 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %837, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %840 unwind label %791

840:                                              ; preds = %838
  br label %841

841:                                              ; preds = %840, %804
  %842 = load i32, ptr %67, align 4, !tbaa !9
  %843 = sext i32 %842 to i64
  %844 = load i32, ptr %66, align 4, !tbaa !9
  %845 = sext i32 %844 to i64
  %846 = load i32, ptr %65, align 4, !tbaa !9
  %847 = load i32, ptr %64, align 4, !tbaa !9
  %848 = load i32, ptr %61, align 4, !tbaa !9
  %849 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %843, i64 noundef %845, i32 noundef %846, i32 noundef %847, i32 noundef %848)
          to label %850 unwind label %791

850:                                              ; preds = %841
  %851 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %849, ptr noundef nonnull align 4 dereferenceable(4) %68, i1 noundef zeroext true)
          to label %852 unwind label %791

852:                                              ; preds = %850
  %853 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %854 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %853) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %851, ptr noundef %854, ptr noundef @.str.28, i32 noundef 694, ptr noundef @.str.128)
          to label %855 unwind label %791

855:                                              ; preds = %852
  %856 = load i32, ptr %61, align 4, !tbaa !9
  %857 = sext i32 %856 to i64
  %858 = load i32, ptr %64, align 4, !tbaa !9
  %859 = sext i32 %858 to i64
  %860 = load i32, ptr %65, align 4, !tbaa !9
  %861 = load i32, ptr %66, align 4, !tbaa !9
  %862 = load i32, ptr %67, align 4, !tbaa !9
  %863 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %857, i64 noundef %859, i32 noundef %860, i32 noundef %861, i32 noundef %862)
          to label %864 unwind label %791

864:                                              ; preds = %855
  %865 = load float, ptr %863, align 4, !tbaa !11
  %866 = load float, ptr %68, align 4, !tbaa !11
  %867 = fcmp une float %865, %866
  br i1 %867, label %868, label %901

868:                                              ; preds = %864
  %869 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %870 unwind label %791

870:                                              ; preds = %868
  %871 = load i32, ptr %62, align 4, !tbaa !9
  %872 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %869, i32 noundef %871)
          to label %873 unwind label %791

873:                                              ; preds = %870
  %874 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %872, ptr noundef @.str.61)
          to label %875 unwind label %791

875:                                              ; preds = %873
  %876 = load i32, ptr %63, align 4, !tbaa !9
  %877 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %874, i32 noundef %876)
          to label %878 unwind label %791

878:                                              ; preds = %875
  %879 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %877, ptr noundef @.str.62)
          to label %880 unwind label %791

880:                                              ; preds = %878
  %881 = load i32, ptr %66, align 4, !tbaa !9
  %882 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %879, i32 noundef %881)
          to label %883 unwind label %791

883:                                              ; preds = %880
  %884 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %882, ptr noundef @.str.63)
          to label %885 unwind label %791

885:                                              ; preds = %883
  %886 = load i32, ptr %65, align 4, !tbaa !9
  %887 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %884, i32 noundef %886)
          to label %888 unwind label %791

888:                                              ; preds = %885
  %889 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %887, ptr noundef @.str.64)
          to label %890 unwind label %791

890:                                              ; preds = %888
  %891 = load i32, ptr %67, align 4, !tbaa !9
  %892 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %889, i32 noundef %891)
          to label %893 unwind label %791

893:                                              ; preds = %890
  %894 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %892, ptr noundef @.str.65)
          to label %895 unwind label %791

895:                                              ; preds = %893
  %896 = load i32, ptr %61, align 4, !tbaa !9
  %897 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %894, i32 noundef %896)
          to label %898 unwind label %791

898:                                              ; preds = %895
  %899 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %897, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %900 unwind label %791

900:                                              ; preds = %898
  br label %901

901:                                              ; preds = %900, %864
  %902 = load i32, ptr %61, align 4, !tbaa !9
  %903 = sext i32 %902 to i64
  %904 = load i32, ptr %64, align 4, !tbaa !9
  %905 = sext i32 %904 to i64
  %906 = load i32, ptr %65, align 4, !tbaa !9
  %907 = load i32, ptr %66, align 4, !tbaa !9
  %908 = load i32, ptr %67, align 4, !tbaa !9
  %909 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %903, i64 noundef %905, i32 noundef %906, i32 noundef %907, i32 noundef %908)
          to label %910 unwind label %791

910:                                              ; preds = %901
  %911 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %909, ptr noundef nonnull align 4 dereferenceable(4) %68, i1 noundef zeroext true)
          to label %912 unwind label %791

912:                                              ; preds = %910
  %913 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %914 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %913) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %911, ptr noundef %914, ptr noundef @.str.28, i32 noundef 699, ptr noundef @.str.129)
          to label %915 unwind label %791

915:                                              ; preds = %912
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #6
  br label %916

916:                                              ; preds = %915
  %917 = load i32, ptr %67, align 4, !tbaa !9
  %918 = add nsw i32 %917, 1
  store i32 %918, ptr %67, align 4, !tbaa !9
  br label %747, !llvm.loop !20

919:                                              ; preds = %750
  br label %920

920:                                              ; preds = %919
  %921 = load i32, ptr %66, align 4, !tbaa !9
  %922 = add nsw i32 %921, 1
  store i32 %922, ptr %66, align 4, !tbaa !9
  br label %742, !llvm.loop !21

923:                                              ; preds = %745
  br label %924

924:                                              ; preds = %923
  %925 = load i32, ptr %65, align 4, !tbaa !9
  %926 = add nsw i32 %925, 1
  store i32 %926, ptr %65, align 4, !tbaa !9
  br label %737, !llvm.loop !22

927:                                              ; preds = %740
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  br label %928

928:                                              ; preds = %927
  %929 = load i32, ptr %63, align 4, !tbaa !9
  %930 = add nsw i32 %929, 1
  store i32 %930, ptr %63, align 4, !tbaa !9
  br label %728, !llvm.loop !23

931:                                              ; preds = %731
  br label %932

932:                                              ; preds = %931
  %933 = load i32, ptr %62, align 4, !tbaa !9
  %934 = add nsw i32 %933, 1
  store i32 %934, ptr %62, align 4, !tbaa !9
  br label %723, !llvm.loop !24

935:                                              ; preds = %726
  br label %936

936:                                              ; preds = %935
  %937 = load i32, ptr %61, align 4, !tbaa !9
  %938 = add nsw i32 %937, 1
  store i32 %938, ptr %61, align 4, !tbaa !9
  br label %616, !llvm.loop !25

939:                                              ; preds = %619
  invoke void @_ZN5Eigen6TensorIfLi4ELi0ElE6resizeIJiiiEEEvlDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 32, i32 noundef 16, i32 noundef 16, i32 noundef 32)
          to label %940 unwind label %620

940:                                              ; preds = %939
  %941 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %942 unwind label %620

942:                                              ; preds = %940
  call void @llvm.lifetime.start.p0(i64 120, ptr %69) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %69, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 7, i64 noundef 7, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %943 unwind label %1026

943:                                              ; preds = %942
  %944 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %4, ptr noundef nonnull align 8 dereferenceable(120) %69)
          to label %945 unwind label %1026

945:                                              ; preds = %943
  call void @llvm.lifetime.end.p0(i64 120, ptr %69) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %70) #6
  %946 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 0)
          to label %947 unwind label %1030

947:                                              ; preds = %945
  store i64 %946, ptr %70, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %71) #6
  store i32 32, ptr %71, align 4, !tbaa !9
  %948 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %70, ptr noundef nonnull align 4 dereferenceable(4) %71, i1 noundef zeroext true)
          to label %949 unwind label %1034

949:                                              ; preds = %947
  %950 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %951 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %950) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %948, ptr noundef %951, ptr noundef @.str.28, i32 noundef 711, ptr noundef @.str.140)
          to label %952 unwind label %1034

952:                                              ; preds = %949
  call void @llvm.lifetime.end.p0(i64 4, ptr %71) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %70) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %72) #6
  %953 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 1)
          to label %954 unwind label %1039

954:                                              ; preds = %952
  store i64 %953, ptr %72, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %73) #6
  store i32 7, ptr %73, align 4, !tbaa !9
  %955 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %72, ptr noundef nonnull align 4 dereferenceable(4) %73, i1 noundef zeroext true)
          to label %956 unwind label %1043

956:                                              ; preds = %954
  %957 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %958 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %957) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %955, ptr noundef %958, ptr noundef @.str.28, i32 noundef 712, ptr noundef @.str.141)
          to label %959 unwind label %1043

959:                                              ; preds = %956
  call void @llvm.lifetime.end.p0(i64 4, ptr %73) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %72) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %74) #6
  %960 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 2)
          to label %961 unwind label %1048

961:                                              ; preds = %959
  store i64 %960, ptr %74, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %75) #6
  store i32 7, ptr %75, align 4, !tbaa !9
  %962 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %74, ptr noundef nonnull align 4 dereferenceable(4) %75, i1 noundef zeroext true)
          to label %963 unwind label %1052

963:                                              ; preds = %961
  %964 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %965 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %964) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %962, ptr noundef %965, ptr noundef @.str.28, i32 noundef 713, ptr noundef @.str.142)
          to label %966 unwind label %1052

966:                                              ; preds = %963
  call void @llvm.lifetime.end.p0(i64 4, ptr %75) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %74) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %76) #6
  %967 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 3)
          to label %968 unwind label %1057

968:                                              ; preds = %966
  store i64 %967, ptr %76, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %77) #6
  store i32 256, ptr %77, align 4, !tbaa !9
  %969 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %76, ptr noundef nonnull align 4 dereferenceable(4) %77, i1 noundef zeroext true)
          to label %970 unwind label %1061

970:                                              ; preds = %968
  %971 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %972 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %971) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %969, ptr noundef %972, ptr noundef @.str.28, i32 noundef 714, ptr noundef @.str.143)
          to label %973 unwind label %1061

973:                                              ; preds = %970
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %76) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %78) #6
  %974 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 4)
          to label %975 unwind label %1066

975:                                              ; preds = %973
  store i64 %974, ptr %78, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %79) #6
  store i32 32, ptr %79, align 4, !tbaa !9
  %976 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %78, ptr noundef nonnull align 4 dereferenceable(4) %79, i1 noundef zeroext true)
          to label %977 unwind label %1070

977:                                              ; preds = %975
  %978 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %979 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %978) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %976, ptr noundef %979, ptr noundef @.str.28, i32 noundef 715, ptr noundef @.str.134)
          to label %980 unwind label %1070

980:                                              ; preds = %977
  call void @llvm.lifetime.end.p0(i64 4, ptr %79) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %78) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr %80) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %81) #6
  %981 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %982 unwind label %1075

982:                                              ; preds = %980
  %983 = getelementptr inbounds %"class.Eigen::TensorLayoutSwapOp", ptr %81, i32 0, i32 0
  store ptr %981, ptr %983, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %80, ptr noundef nonnull align 1 dereferenceable(1) %81, i64 noundef 7, i64 noundef 7, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %984 unwind label %1075

984:                                              ; preds = %982
  %985 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(120) %80)
          to label %986 unwind label %1075

986:                                              ; preds = %984
  call void @llvm.lifetime.end.p0(i64 8, ptr %81) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %80) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %82) #6
  %987 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 0)
          to label %988 unwind label %1079

988:                                              ; preds = %986
  store i64 %987, ptr %82, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %83) #6
  store i32 32, ptr %83, align 4, !tbaa !9
  %989 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %82, ptr noundef nonnull align 4 dereferenceable(4) %83, i1 noundef zeroext true)
          to label %990 unwind label %1083

990:                                              ; preds = %988
  %991 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %992 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %991) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %989, ptr noundef %992, ptr noundef @.str.28, i32 noundef 719, ptr noundef @.str.135)
          to label %993 unwind label %1083

993:                                              ; preds = %990
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %82) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %84) #6
  %994 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 1)
          to label %995 unwind label %1088

995:                                              ; preds = %993
  store i64 %994, ptr %84, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %85) #6
  store i32 256, ptr %85, align 4, !tbaa !9
  %996 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %84, ptr noundef nonnull align 4 dereferenceable(4) %85, i1 noundef zeroext true)
          to label %997 unwind label %1092

997:                                              ; preds = %995
  %998 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %999 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %998) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %996, ptr noundef %999, ptr noundef @.str.28, i32 noundef 720, ptr noundef @.str.144)
          to label %1000 unwind label %1092

1000:                                             ; preds = %997
  call void @llvm.lifetime.end.p0(i64 4, ptr %85) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %84) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %86) #6
  %1001 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 2)
          to label %1002 unwind label %1097

1002:                                             ; preds = %1000
  store i64 %1001, ptr %86, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %87) #6
  store i32 7, ptr %87, align 4, !tbaa !9
  %1003 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %86, ptr noundef nonnull align 4 dereferenceable(4) %87, i1 noundef zeroext true)
          to label %1004 unwind label %1101

1004:                                             ; preds = %1002
  %1005 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1006 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1005) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1003, ptr noundef %1006, ptr noundef @.str.28, i32 noundef 721, ptr noundef @.str.145)
          to label %1007 unwind label %1101

1007:                                             ; preds = %1004
  call void @llvm.lifetime.end.p0(i64 4, ptr %87) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %86) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %88) #6
  %1008 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 3)
          to label %1009 unwind label %1106

1009:                                             ; preds = %1007
  store i64 %1008, ptr %88, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %89) #6
  store i32 7, ptr %89, align 4, !tbaa !9
  %1010 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %88, ptr noundef nonnull align 4 dereferenceable(4) %89, i1 noundef zeroext true)
          to label %1011 unwind label %1110

1011:                                             ; preds = %1009
  %1012 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1013 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1012) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1010, ptr noundef %1013, ptr noundef @.str.28, i32 noundef 722, ptr noundef @.str.146)
          to label %1014 unwind label %1110

1014:                                             ; preds = %1011
  call void @llvm.lifetime.end.p0(i64 4, ptr %89) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %88) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %90) #6
  %1015 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 4)
          to label %1016 unwind label %1115

1016:                                             ; preds = %1014
  store i64 %1015, ptr %90, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %91) #6
  store i32 32, ptr %91, align 4, !tbaa !9
  %1017 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %90, ptr noundef nonnull align 4 dereferenceable(4) %91, i1 noundef zeroext true)
          to label %1018 unwind label %1119

1018:                                             ; preds = %1016
  %1019 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1020 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1019) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1017, ptr noundef %1020, ptr noundef @.str.28, i32 noundef 723, ptr noundef @.str.147)
          to label %1021 unwind label %1119

1021:                                             ; preds = %1018
  call void @llvm.lifetime.end.p0(i64 4, ptr %91) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %90) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %92) #6
  store i32 0, ptr %92, align 4, !tbaa !9
  br label %1022

1022:                                             ; preds = %1338, %1021
  %1023 = load i32, ptr %92, align 4, !tbaa !9
  %1024 = icmp slt i32 %1023, 32
  br i1 %1024, label %1124, label %1025

1025:                                             ; preds = %1022
  store i32 38, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %92) #6
  br label %1341

1026:                                             ; preds = %943, %942
  %1027 = landingpad { ptr, i32 }
          cleanup
  %1028 = extractvalue { ptr, i32 } %1027, 0
  store ptr %1028, ptr %2, align 8
  %1029 = extractvalue { ptr, i32 } %1027, 1
  store i32 %1029, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 120, ptr %69) #6
  br label %1744

1030:                                             ; preds = %945
  %1031 = landingpad { ptr, i32 }
          cleanup
  %1032 = extractvalue { ptr, i32 } %1031, 0
  store ptr %1032, ptr %2, align 8
  %1033 = extractvalue { ptr, i32 } %1031, 1
  store i32 %1033, ptr %3, align 4
  br label %1038

1034:                                             ; preds = %949, %947
  %1035 = landingpad { ptr, i32 }
          cleanup
  %1036 = extractvalue { ptr, i32 } %1035, 0
  store ptr %1036, ptr %2, align 8
  %1037 = extractvalue { ptr, i32 } %1035, 1
  store i32 %1037, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %71) #6
  br label %1038

1038:                                             ; preds = %1034, %1030
  call void @llvm.lifetime.end.p0(i64 8, ptr %70) #6
  br label %1744

1039:                                             ; preds = %952
  %1040 = landingpad { ptr, i32 }
          cleanup
  %1041 = extractvalue { ptr, i32 } %1040, 0
  store ptr %1041, ptr %2, align 8
  %1042 = extractvalue { ptr, i32 } %1040, 1
  store i32 %1042, ptr %3, align 4
  br label %1047

1043:                                             ; preds = %956, %954
  %1044 = landingpad { ptr, i32 }
          cleanup
  %1045 = extractvalue { ptr, i32 } %1044, 0
  store ptr %1045, ptr %2, align 8
  %1046 = extractvalue { ptr, i32 } %1044, 1
  store i32 %1046, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %73) #6
  br label %1047

1047:                                             ; preds = %1043, %1039
  call void @llvm.lifetime.end.p0(i64 8, ptr %72) #6
  br label %1744

1048:                                             ; preds = %959
  %1049 = landingpad { ptr, i32 }
          cleanup
  %1050 = extractvalue { ptr, i32 } %1049, 0
  store ptr %1050, ptr %2, align 8
  %1051 = extractvalue { ptr, i32 } %1049, 1
  store i32 %1051, ptr %3, align 4
  br label %1056

1052:                                             ; preds = %963, %961
  %1053 = landingpad { ptr, i32 }
          cleanup
  %1054 = extractvalue { ptr, i32 } %1053, 0
  store ptr %1054, ptr %2, align 8
  %1055 = extractvalue { ptr, i32 } %1053, 1
  store i32 %1055, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %75) #6
  br label %1056

1056:                                             ; preds = %1052, %1048
  call void @llvm.lifetime.end.p0(i64 8, ptr %74) #6
  br label %1744

1057:                                             ; preds = %966
  %1058 = landingpad { ptr, i32 }
          cleanup
  %1059 = extractvalue { ptr, i32 } %1058, 0
  store ptr %1059, ptr %2, align 8
  %1060 = extractvalue { ptr, i32 } %1058, 1
  store i32 %1060, ptr %3, align 4
  br label %1065

1061:                                             ; preds = %970, %968
  %1062 = landingpad { ptr, i32 }
          cleanup
  %1063 = extractvalue { ptr, i32 } %1062, 0
  store ptr %1063, ptr %2, align 8
  %1064 = extractvalue { ptr, i32 } %1062, 1
  store i32 %1064, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #6
  br label %1065

1065:                                             ; preds = %1061, %1057
  call void @llvm.lifetime.end.p0(i64 8, ptr %76) #6
  br label %1744

1066:                                             ; preds = %973
  %1067 = landingpad { ptr, i32 }
          cleanup
  %1068 = extractvalue { ptr, i32 } %1067, 0
  store ptr %1068, ptr %2, align 8
  %1069 = extractvalue { ptr, i32 } %1067, 1
  store i32 %1069, ptr %3, align 4
  br label %1074

1070:                                             ; preds = %977, %975
  %1071 = landingpad { ptr, i32 }
          cleanup
  %1072 = extractvalue { ptr, i32 } %1071, 0
  store ptr %1072, ptr %2, align 8
  %1073 = extractvalue { ptr, i32 } %1071, 1
  store i32 %1073, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %79) #6
  br label %1074

1074:                                             ; preds = %1070, %1066
  call void @llvm.lifetime.end.p0(i64 8, ptr %78) #6
  br label %1744

1075:                                             ; preds = %984, %982, %980
  %1076 = landingpad { ptr, i32 }
          cleanup
  %1077 = extractvalue { ptr, i32 } %1076, 0
  store ptr %1077, ptr %2, align 8
  %1078 = extractvalue { ptr, i32 } %1076, 1
  store i32 %1078, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %81) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %80) #6
  br label %1744

1079:                                             ; preds = %986
  %1080 = landingpad { ptr, i32 }
          cleanup
  %1081 = extractvalue { ptr, i32 } %1080, 0
  store ptr %1081, ptr %2, align 8
  %1082 = extractvalue { ptr, i32 } %1080, 1
  store i32 %1082, ptr %3, align 4
  br label %1087

1083:                                             ; preds = %990, %988
  %1084 = landingpad { ptr, i32 }
          cleanup
  %1085 = extractvalue { ptr, i32 } %1084, 0
  store ptr %1085, ptr %2, align 8
  %1086 = extractvalue { ptr, i32 } %1084, 1
  store i32 %1086, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #6
  br label %1087

1087:                                             ; preds = %1083, %1079
  call void @llvm.lifetime.end.p0(i64 8, ptr %82) #6
  br label %1744

1088:                                             ; preds = %993
  %1089 = landingpad { ptr, i32 }
          cleanup
  %1090 = extractvalue { ptr, i32 } %1089, 0
  store ptr %1090, ptr %2, align 8
  %1091 = extractvalue { ptr, i32 } %1089, 1
  store i32 %1091, ptr %3, align 4
  br label %1096

1092:                                             ; preds = %997, %995
  %1093 = landingpad { ptr, i32 }
          cleanup
  %1094 = extractvalue { ptr, i32 } %1093, 0
  store ptr %1094, ptr %2, align 8
  %1095 = extractvalue { ptr, i32 } %1093, 1
  store i32 %1095, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %85) #6
  br label %1096

1096:                                             ; preds = %1092, %1088
  call void @llvm.lifetime.end.p0(i64 8, ptr %84) #6
  br label %1744

1097:                                             ; preds = %1000
  %1098 = landingpad { ptr, i32 }
          cleanup
  %1099 = extractvalue { ptr, i32 } %1098, 0
  store ptr %1099, ptr %2, align 8
  %1100 = extractvalue { ptr, i32 } %1098, 1
  store i32 %1100, ptr %3, align 4
  br label %1105

1101:                                             ; preds = %1004, %1002
  %1102 = landingpad { ptr, i32 }
          cleanup
  %1103 = extractvalue { ptr, i32 } %1102, 0
  store ptr %1103, ptr %2, align 8
  %1104 = extractvalue { ptr, i32 } %1102, 1
  store i32 %1104, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %87) #6
  br label %1105

1105:                                             ; preds = %1101, %1097
  call void @llvm.lifetime.end.p0(i64 8, ptr %86) #6
  br label %1744

1106:                                             ; preds = %1007
  %1107 = landingpad { ptr, i32 }
          cleanup
  %1108 = extractvalue { ptr, i32 } %1107, 0
  store ptr %1108, ptr %2, align 8
  %1109 = extractvalue { ptr, i32 } %1107, 1
  store i32 %1109, ptr %3, align 4
  br label %1114

1110:                                             ; preds = %1011, %1009
  %1111 = landingpad { ptr, i32 }
          cleanup
  %1112 = extractvalue { ptr, i32 } %1111, 0
  store ptr %1112, ptr %2, align 8
  %1113 = extractvalue { ptr, i32 } %1111, 1
  store i32 %1113, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %89) #6
  br label %1114

1114:                                             ; preds = %1110, %1106
  call void @llvm.lifetime.end.p0(i64 8, ptr %88) #6
  br label %1744

1115:                                             ; preds = %1014
  %1116 = landingpad { ptr, i32 }
          cleanup
  %1117 = extractvalue { ptr, i32 } %1116, 0
  store ptr %1117, ptr %2, align 8
  %1118 = extractvalue { ptr, i32 } %1116, 1
  store i32 %1118, ptr %3, align 4
  br label %1123

1119:                                             ; preds = %1018, %1016
  %1120 = landingpad { ptr, i32 }
          cleanup
  %1121 = extractvalue { ptr, i32 } %1120, 0
  store ptr %1121, ptr %2, align 8
  %1122 = extractvalue { ptr, i32 } %1120, 1
  store i32 %1122, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %91) #6
  br label %1123

1123:                                             ; preds = %1119, %1115
  call void @llvm.lifetime.end.p0(i64 8, ptr %90) #6
  br label %1744

1124:                                             ; preds = %1022
  call void @llvm.lifetime.start.p0(i64 4, ptr %93) #6
  store i32 0, ptr %93, align 4, !tbaa !9
  br label %1125

1125:                                             ; preds = %1334, %1124
  %1126 = load i32, ptr %93, align 4, !tbaa !9
  %1127 = icmp slt i32 %1126, 16
  br i1 %1127, label %1129, label %1128

1128:                                             ; preds = %1125
  store i32 41, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %93) #6
  br label %1337

1129:                                             ; preds = %1125
  call void @llvm.lifetime.start.p0(i64 4, ptr %94) #6
  store i32 0, ptr %94, align 4, !tbaa !9
  br label %1130

1130:                                             ; preds = %1330, %1129
  %1131 = load i32, ptr %94, align 4, !tbaa !9
  %1132 = icmp slt i32 %1131, 16
  br i1 %1132, label %1134, label %1133

1133:                                             ; preds = %1130
  store i32 44, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %94) #6
  br label %1333

1134:                                             ; preds = %1130
  call void @llvm.lifetime.start.p0(i64 4, ptr %95) #6
  %1135 = load i32, ptr %93, align 4, !tbaa !9
  %1136 = load i32, ptr %94, align 4, !tbaa !9
  %1137 = mul nsw i32 16, %1136
  %1138 = add nsw i32 %1135, %1137
  store i32 %1138, ptr %95, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %96) #6
  store i32 0, ptr %96, align 4, !tbaa !9
  br label %1139

1139:                                             ; preds = %1326, %1134
  %1140 = load i32, ptr %96, align 4, !tbaa !9
  %1141 = icmp slt i32 %1140, 7
  br i1 %1141, label %1143, label %1142

1142:                                             ; preds = %1139
  store i32 47, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %96) #6
  br label %1329

1143:                                             ; preds = %1139
  call void @llvm.lifetime.start.p0(i64 4, ptr %97) #6
  store i32 0, ptr %97, align 4, !tbaa !9
  br label %1144

1144:                                             ; preds = %1322, %1143
  %1145 = load i32, ptr %97, align 4, !tbaa !9
  %1146 = icmp slt i32 %1145, 7
  br i1 %1146, label %1148, label %1147

1147:                                             ; preds = %1144
  store i32 50, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %97) #6
  br label %1325

1148:                                             ; preds = %1144
  call void @llvm.lifetime.start.p0(i64 4, ptr %98) #6
  store i32 0, ptr %98, align 4, !tbaa !9
  br label %1149

1149:                                             ; preds = %1318, %1148
  %1150 = load i32, ptr %98, align 4, !tbaa !9
  %1151 = icmp slt i32 %1150, 32
  br i1 %1151, label %1153, label %1152

1152:                                             ; preds = %1149
  store i32 53, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %98) #6
  br label %1321

1153:                                             ; preds = %1149
  call void @llvm.lifetime.start.p0(i64 4, ptr %99) #6
  store float 0.000000e+00, ptr %99, align 4, !tbaa !11
  %1154 = load i32, ptr %97, align 4, !tbaa !9
  %1155 = sub nsw i32 %1154, 3
  %1156 = load i32, ptr %93, align 4, !tbaa !9
  %1157 = add nsw i32 %1155, %1156
  %1158 = icmp sge i32 %1157, 0
  br i1 %1158, label %1159, label %1197

1159:                                             ; preds = %1153
  %1160 = load i32, ptr %96, align 4, !tbaa !9
  %1161 = sub nsw i32 %1160, 3
  %1162 = load i32, ptr %94, align 4, !tbaa !9
  %1163 = add nsw i32 %1161, %1162
  %1164 = icmp sge i32 %1163, 0
  br i1 %1164, label %1165, label %1197

1165:                                             ; preds = %1159
  %1166 = load i32, ptr %97, align 4, !tbaa !9
  %1167 = sub nsw i32 %1166, 3
  %1168 = load i32, ptr %93, align 4, !tbaa !9
  %1169 = add nsw i32 %1167, %1168
  %1170 = icmp slt i32 %1169, 16
  br i1 %1170, label %1171, label %1197

1171:                                             ; preds = %1165
  %1172 = load i32, ptr %96, align 4, !tbaa !9
  %1173 = sub nsw i32 %1172, 3
  %1174 = load i32, ptr %94, align 4, !tbaa !9
  %1175 = add nsw i32 %1173, %1174
  %1176 = icmp slt i32 %1175, 16
  br i1 %1176, label %1177, label %1197

1177:                                             ; preds = %1171
  %1178 = load i32, ptr %98, align 4, !tbaa !9
  %1179 = sext i32 %1178 to i64
  %1180 = load i32, ptr %97, align 4, !tbaa !9
  %1181 = sub nsw i32 %1180, 3
  %1182 = load i32, ptr %93, align 4, !tbaa !9
  %1183 = add nsw i32 %1181, %1182
  %1184 = sext i32 %1183 to i64
  %1185 = load i32, ptr %96, align 4, !tbaa !9
  %1186 = sub nsw i32 %1185, 3
  %1187 = load i32, ptr %94, align 4, !tbaa !9
  %1188 = add nsw i32 %1186, %1187
  %1189 = load i32, ptr %92, align 4, !tbaa !9
  %1190 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %1179, i64 noundef %1184, i32 noundef %1188, i32 noundef %1189)
          to label %1191 unwind label %1193

1191:                                             ; preds = %1177
  %1192 = load float, ptr %1190, align 4, !tbaa !11
  store float %1192, ptr %99, align 4, !tbaa !11
  br label %1197

1193:                                             ; preds = %1314, %1312, %1303, %1300, %1297, %1295, %1292, %1290, %1287, %1285, %1282, %1280, %1277, %1275, %1272, %1270, %1257, %1254, %1252, %1243, %1240, %1237, %1235, %1232, %1230, %1227, %1225, %1222, %1220, %1217, %1215, %1212, %1210, %1197, %1177
  %1194 = landingpad { ptr, i32 }
          cleanup
  %1195 = extractvalue { ptr, i32 } %1194, 0
  store ptr %1195, ptr %2, align 8
  %1196 = extractvalue { ptr, i32 } %1194, 1
  store i32 %1196, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %99) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %98) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %97) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %96) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %95) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %94) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %93) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %92) #6
  br label %1744

1197:                                             ; preds = %1191, %1171, %1165, %1159, %1153
  %1198 = load i32, ptr %98, align 4, !tbaa !9
  %1199 = sext i32 %1198 to i64
  %1200 = load i32, ptr %97, align 4, !tbaa !9
  %1201 = sext i32 %1200 to i64
  %1202 = load i32, ptr %96, align 4, !tbaa !9
  %1203 = load i32, ptr %95, align 4, !tbaa !9
  %1204 = load i32, ptr %92, align 4, !tbaa !9
  %1205 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %1199, i64 noundef %1201, i32 noundef %1202, i32 noundef %1203, i32 noundef %1204)
          to label %1206 unwind label %1193

1206:                                             ; preds = %1197
  %1207 = load float, ptr %1205, align 4, !tbaa !11
  %1208 = load float, ptr %99, align 4, !tbaa !11
  %1209 = fcmp une float %1207, %1208
  br i1 %1209, label %1210, label %1243

1210:                                             ; preds = %1206
  %1211 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %1212 unwind label %1193

1212:                                             ; preds = %1210
  %1213 = load i32, ptr %93, align 4, !tbaa !9
  %1214 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1211, i32 noundef %1213)
          to label %1215 unwind label %1193

1215:                                             ; preds = %1212
  %1216 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1214, ptr noundef @.str.61)
          to label %1217 unwind label %1193

1217:                                             ; preds = %1215
  %1218 = load i32, ptr %94, align 4, !tbaa !9
  %1219 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1216, i32 noundef %1218)
          to label %1220 unwind label %1193

1220:                                             ; preds = %1217
  %1221 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1219, ptr noundef @.str.62)
          to label %1222 unwind label %1193

1222:                                             ; preds = %1220
  %1223 = load i32, ptr %97, align 4, !tbaa !9
  %1224 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1221, i32 noundef %1223)
          to label %1225 unwind label %1193

1225:                                             ; preds = %1222
  %1226 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1224, ptr noundef @.str.63)
          to label %1227 unwind label %1193

1227:                                             ; preds = %1225
  %1228 = load i32, ptr %96, align 4, !tbaa !9
  %1229 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1226, i32 noundef %1228)
          to label %1230 unwind label %1193

1230:                                             ; preds = %1227
  %1231 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1229, ptr noundef @.str.64)
          to label %1232 unwind label %1193

1232:                                             ; preds = %1230
  %1233 = load i32, ptr %98, align 4, !tbaa !9
  %1234 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1231, i32 noundef %1233)
          to label %1235 unwind label %1193

1235:                                             ; preds = %1232
  %1236 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1234, ptr noundef @.str.65)
          to label %1237 unwind label %1193

1237:                                             ; preds = %1235
  %1238 = load i32, ptr %92, align 4, !tbaa !9
  %1239 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1236, i32 noundef %1238)
          to label %1240 unwind label %1193

1240:                                             ; preds = %1237
  %1241 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1239, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1242 unwind label %1193

1242:                                             ; preds = %1240
  br label %1243

1243:                                             ; preds = %1242, %1206
  %1244 = load i32, ptr %98, align 4, !tbaa !9
  %1245 = sext i32 %1244 to i64
  %1246 = load i32, ptr %97, align 4, !tbaa !9
  %1247 = sext i32 %1246 to i64
  %1248 = load i32, ptr %96, align 4, !tbaa !9
  %1249 = load i32, ptr %95, align 4, !tbaa !9
  %1250 = load i32, ptr %92, align 4, !tbaa !9
  %1251 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %1245, i64 noundef %1247, i32 noundef %1248, i32 noundef %1249, i32 noundef %1250)
          to label %1252 unwind label %1193

1252:                                             ; preds = %1243
  %1253 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %1251, ptr noundef nonnull align 4 dereferenceable(4) %99, i1 noundef zeroext true)
          to label %1254 unwind label %1193

1254:                                             ; preds = %1252
  %1255 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1256 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1255) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1253, ptr noundef %1256, ptr noundef @.str.28, i32 noundef 740, ptr noundef @.str.128)
          to label %1257 unwind label %1193

1257:                                             ; preds = %1254
  %1258 = load i32, ptr %92, align 4, !tbaa !9
  %1259 = sext i32 %1258 to i64
  %1260 = load i32, ptr %95, align 4, !tbaa !9
  %1261 = sext i32 %1260 to i64
  %1262 = load i32, ptr %96, align 4, !tbaa !9
  %1263 = load i32, ptr %97, align 4, !tbaa !9
  %1264 = load i32, ptr %98, align 4, !tbaa !9
  %1265 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %1259, i64 noundef %1261, i32 noundef %1262, i32 noundef %1263, i32 noundef %1264)
          to label %1266 unwind label %1193

1266:                                             ; preds = %1257
  %1267 = load float, ptr %1265, align 4, !tbaa !11
  %1268 = load float, ptr %99, align 4, !tbaa !11
  %1269 = fcmp une float %1267, %1268
  br i1 %1269, label %1270, label %1303

1270:                                             ; preds = %1266
  %1271 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %1272 unwind label %1193

1272:                                             ; preds = %1270
  %1273 = load i32, ptr %93, align 4, !tbaa !9
  %1274 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1271, i32 noundef %1273)
          to label %1275 unwind label %1193

1275:                                             ; preds = %1272
  %1276 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1274, ptr noundef @.str.61)
          to label %1277 unwind label %1193

1277:                                             ; preds = %1275
  %1278 = load i32, ptr %94, align 4, !tbaa !9
  %1279 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1276, i32 noundef %1278)
          to label %1280 unwind label %1193

1280:                                             ; preds = %1277
  %1281 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1279, ptr noundef @.str.62)
          to label %1282 unwind label %1193

1282:                                             ; preds = %1280
  %1283 = load i32, ptr %97, align 4, !tbaa !9
  %1284 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1281, i32 noundef %1283)
          to label %1285 unwind label %1193

1285:                                             ; preds = %1282
  %1286 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1284, ptr noundef @.str.63)
          to label %1287 unwind label %1193

1287:                                             ; preds = %1285
  %1288 = load i32, ptr %96, align 4, !tbaa !9
  %1289 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1286, i32 noundef %1288)
          to label %1290 unwind label %1193

1290:                                             ; preds = %1287
  %1291 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1289, ptr noundef @.str.64)
          to label %1292 unwind label %1193

1292:                                             ; preds = %1290
  %1293 = load i32, ptr %98, align 4, !tbaa !9
  %1294 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1291, i32 noundef %1293)
          to label %1295 unwind label %1193

1295:                                             ; preds = %1292
  %1296 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1294, ptr noundef @.str.65)
          to label %1297 unwind label %1193

1297:                                             ; preds = %1295
  %1298 = load i32, ptr %92, align 4, !tbaa !9
  %1299 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1296, i32 noundef %1298)
          to label %1300 unwind label %1193

1300:                                             ; preds = %1297
  %1301 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1299, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1302 unwind label %1193

1302:                                             ; preds = %1300
  br label %1303

1303:                                             ; preds = %1302, %1266
  %1304 = load i32, ptr %92, align 4, !tbaa !9
  %1305 = sext i32 %1304 to i64
  %1306 = load i32, ptr %95, align 4, !tbaa !9
  %1307 = sext i32 %1306 to i64
  %1308 = load i32, ptr %96, align 4, !tbaa !9
  %1309 = load i32, ptr %97, align 4, !tbaa !9
  %1310 = load i32, ptr %98, align 4, !tbaa !9
  %1311 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %1305, i64 noundef %1307, i32 noundef %1308, i32 noundef %1309, i32 noundef %1310)
          to label %1312 unwind label %1193

1312:                                             ; preds = %1303
  %1313 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %1311, ptr noundef nonnull align 4 dereferenceable(4) %99, i1 noundef zeroext true)
          to label %1314 unwind label %1193

1314:                                             ; preds = %1312
  %1315 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1316 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1315) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1313, ptr noundef %1316, ptr noundef @.str.28, i32 noundef 745, ptr noundef @.str.129)
          to label %1317 unwind label %1193

1317:                                             ; preds = %1314
  call void @llvm.lifetime.end.p0(i64 4, ptr %99) #6
  br label %1318

1318:                                             ; preds = %1317
  %1319 = load i32, ptr %98, align 4, !tbaa !9
  %1320 = add nsw i32 %1319, 1
  store i32 %1320, ptr %98, align 4, !tbaa !9
  br label %1149, !llvm.loop !26

1321:                                             ; preds = %1152
  br label %1322

1322:                                             ; preds = %1321
  %1323 = load i32, ptr %97, align 4, !tbaa !9
  %1324 = add nsw i32 %1323, 1
  store i32 %1324, ptr %97, align 4, !tbaa !9
  br label %1144, !llvm.loop !27

1325:                                             ; preds = %1147
  br label %1326

1326:                                             ; preds = %1325
  %1327 = load i32, ptr %96, align 4, !tbaa !9
  %1328 = add nsw i32 %1327, 1
  store i32 %1328, ptr %96, align 4, !tbaa !9
  br label %1139, !llvm.loop !28

1329:                                             ; preds = %1142
  call void @llvm.lifetime.end.p0(i64 4, ptr %95) #6
  br label %1330

1330:                                             ; preds = %1329
  %1331 = load i32, ptr %94, align 4, !tbaa !9
  %1332 = add nsw i32 %1331, 1
  store i32 %1332, ptr %94, align 4, !tbaa !9
  br label %1130, !llvm.loop !29

1333:                                             ; preds = %1133
  br label %1334

1334:                                             ; preds = %1333
  %1335 = load i32, ptr %93, align 4, !tbaa !9
  %1336 = add nsw i32 %1335, 1
  store i32 %1336, ptr %93, align 4, !tbaa !9
  br label %1125, !llvm.loop !30

1337:                                             ; preds = %1128
  br label %1338

1338:                                             ; preds = %1337
  %1339 = load i32, ptr %92, align 4, !tbaa !9
  %1340 = add nsw i32 %1339, 1
  store i32 %1340, ptr %92, align 4, !tbaa !9
  br label %1022, !llvm.loop !31

1341:                                             ; preds = %1025
  invoke void @_ZN5Eigen6TensorIfLi4ELi0ElE6resizeIJiiiEEEvlDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 64, i32 noundef 13, i32 noundef 13, i32 noundef 32)
          to label %1342 unwind label %620

1342:                                             ; preds = %1341
  %1343 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %1344 unwind label %620

1344:                                             ; preds = %1342
  call void @llvm.lifetime.start.p0(i64 120, ptr %100) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %100, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 3, i64 noundef 3, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %1345 unwind label %1428

1345:                                             ; preds = %1344
  %1346 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %4, ptr noundef nonnull align 8 dereferenceable(120) %100)
          to label %1347 unwind label %1428

1347:                                             ; preds = %1345
  call void @llvm.lifetime.end.p0(i64 120, ptr %100) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %101) #6
  %1348 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 0)
          to label %1349 unwind label %1432

1349:                                             ; preds = %1347
  store i64 %1348, ptr %101, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %102) #6
  store i32 64, ptr %102, align 4, !tbaa !9
  %1350 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %101, ptr noundef nonnull align 4 dereferenceable(4) %102, i1 noundef zeroext true)
          to label %1351 unwind label %1436

1351:                                             ; preds = %1349
  %1352 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1353 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1352) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1350, ptr noundef %1353, ptr noundef @.str.28, i32 noundef 757, ptr noundef @.str.148)
          to label %1354 unwind label %1436

1354:                                             ; preds = %1351
  call void @llvm.lifetime.end.p0(i64 4, ptr %102) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %103) #6
  %1355 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 1)
          to label %1356 unwind label %1441

1356:                                             ; preds = %1354
  store i64 %1355, ptr %103, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %104) #6
  store i32 3, ptr %104, align 4, !tbaa !9
  %1357 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %103, ptr noundef nonnull align 4 dereferenceable(4) %104, i1 noundef zeroext true)
          to label %1358 unwind label %1445

1358:                                             ; preds = %1356
  %1359 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1360 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1359) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1357, ptr noundef %1360, ptr noundef @.str.28, i32 noundef 758, ptr noundef @.str.149)
          to label %1361 unwind label %1445

1361:                                             ; preds = %1358
  call void @llvm.lifetime.end.p0(i64 4, ptr %104) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %103) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %105) #6
  %1362 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 2)
          to label %1363 unwind label %1450

1363:                                             ; preds = %1361
  store i64 %1362, ptr %105, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %106) #6
  store i32 3, ptr %106, align 4, !tbaa !9
  %1364 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %105, ptr noundef nonnull align 4 dereferenceable(4) %106, i1 noundef zeroext true)
          to label %1365 unwind label %1454

1365:                                             ; preds = %1363
  %1366 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1367 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1366) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1364, ptr noundef %1367, ptr noundef @.str.28, i32 noundef 759, ptr noundef @.str.150)
          to label %1368 unwind label %1454

1368:                                             ; preds = %1365
  call void @llvm.lifetime.end.p0(i64 4, ptr %106) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %105) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %107) #6
  %1369 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 3)
          to label %1370 unwind label %1459

1370:                                             ; preds = %1368
  store i64 %1369, ptr %107, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %108) #6
  store i32 169, ptr %108, align 4, !tbaa !9
  %1371 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %107, ptr noundef nonnull align 4 dereferenceable(4) %108, i1 noundef zeroext true)
          to label %1372 unwind label %1463

1372:                                             ; preds = %1370
  %1373 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1374 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1373) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1371, ptr noundef %1374, ptr noundef @.str.28, i32 noundef 760, ptr noundef @.str.151)
          to label %1375 unwind label %1463

1375:                                             ; preds = %1372
  call void @llvm.lifetime.end.p0(i64 4, ptr %108) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %107) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %109) #6
  %1376 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef 4)
          to label %1377 unwind label %1468

1377:                                             ; preds = %1375
  store i64 %1376, ptr %109, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %110) #6
  store i32 32, ptr %110, align 4, !tbaa !9
  %1378 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %109, ptr noundef nonnull align 4 dereferenceable(4) %110, i1 noundef zeroext true)
          to label %1379 unwind label %1472

1379:                                             ; preds = %1377
  %1380 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1381 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1380) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1378, ptr noundef %1381, ptr noundef @.str.28, i32 noundef 761, ptr noundef @.str.134)
          to label %1382 unwind label %1472

1382:                                             ; preds = %1379
  call void @llvm.lifetime.end.p0(i64 4, ptr %110) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %109) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr %111) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %112) #6
  %1383 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %1384 unwind label %1477

1384:                                             ; preds = %1382
  %1385 = getelementptr inbounds %"class.Eigen::TensorLayoutSwapOp", ptr %112, i32 0, i32 0
  store ptr %1383, ptr %1385, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %111, ptr noundef nonnull align 1 dereferenceable(1) %112, i64 noundef 3, i64 noundef 3, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %1386 unwind label %1477

1386:                                             ; preds = %1384
  %1387 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(120) %111)
          to label %1388 unwind label %1477

1388:                                             ; preds = %1386
  call void @llvm.lifetime.end.p0(i64 8, ptr %112) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %111) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %113) #6
  %1389 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 0)
          to label %1390 unwind label %1481

1390:                                             ; preds = %1388
  store i64 %1389, ptr %113, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %114) #6
  store i32 32, ptr %114, align 4, !tbaa !9
  %1391 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %113, ptr noundef nonnull align 4 dereferenceable(4) %114, i1 noundef zeroext true)
          to label %1392 unwind label %1485

1392:                                             ; preds = %1390
  %1393 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1394 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1393) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1391, ptr noundef %1394, ptr noundef @.str.28, i32 noundef 765, ptr noundef @.str.135)
          to label %1395 unwind label %1485

1395:                                             ; preds = %1392
  call void @llvm.lifetime.end.p0(i64 4, ptr %114) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %113) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %115) #6
  %1396 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 1)
          to label %1397 unwind label %1490

1397:                                             ; preds = %1395
  store i64 %1396, ptr %115, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %116) #6
  store i32 169, ptr %116, align 4, !tbaa !9
  %1398 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %115, ptr noundef nonnull align 4 dereferenceable(4) %116, i1 noundef zeroext true)
          to label %1399 unwind label %1494

1399:                                             ; preds = %1397
  %1400 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1401 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1400) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1398, ptr noundef %1401, ptr noundef @.str.28, i32 noundef 766, ptr noundef @.str.152)
          to label %1402 unwind label %1494

1402:                                             ; preds = %1399
  call void @llvm.lifetime.end.p0(i64 4, ptr %116) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %115) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %117) #6
  %1403 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 2)
          to label %1404 unwind label %1499

1404:                                             ; preds = %1402
  store i64 %1403, ptr %117, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %118) #6
  store i32 3, ptr %118, align 4, !tbaa !9
  %1405 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %117, ptr noundef nonnull align 4 dereferenceable(4) %118, i1 noundef zeroext true)
          to label %1406 unwind label %1503

1406:                                             ; preds = %1404
  %1407 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1408 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1407) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1405, ptr noundef %1408, ptr noundef @.str.28, i32 noundef 767, ptr noundef @.str.153)
          to label %1409 unwind label %1503

1409:                                             ; preds = %1406
  call void @llvm.lifetime.end.p0(i64 4, ptr %118) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %117) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %119) #6
  %1410 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 3)
          to label %1411 unwind label %1508

1411:                                             ; preds = %1409
  store i64 %1410, ptr %119, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %120) #6
  store i32 3, ptr %120, align 4, !tbaa !9
  %1412 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %119, ptr noundef nonnull align 4 dereferenceable(4) %120, i1 noundef zeroext true)
          to label %1413 unwind label %1512

1413:                                             ; preds = %1411
  %1414 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1415 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1414) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1412, ptr noundef %1415, ptr noundef @.str.28, i32 noundef 768, ptr noundef @.str.154)
          to label %1416 unwind label %1512

1416:                                             ; preds = %1413
  call void @llvm.lifetime.end.p0(i64 4, ptr %120) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %119) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %121) #6
  %1417 = invoke noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef 4)
          to label %1418 unwind label %1517

1418:                                             ; preds = %1416
  store i64 %1417, ptr %121, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %122) #6
  store i32 64, ptr %122, align 4, !tbaa !9
  %1419 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %121, ptr noundef nonnull align 4 dereferenceable(4) %122, i1 noundef zeroext true)
          to label %1420 unwind label %1521

1420:                                             ; preds = %1418
  %1421 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1422 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1421) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1419, ptr noundef %1422, ptr noundef @.str.28, i32 noundef 769, ptr noundef @.str.155)
          to label %1423 unwind label %1521

1423:                                             ; preds = %1420
  call void @llvm.lifetime.end.p0(i64 4, ptr %122) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %121) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %123) #6
  store i32 0, ptr %123, align 4, !tbaa !9
  br label %1424

1424:                                             ; preds = %1740, %1423
  %1425 = load i32, ptr %123, align 4, !tbaa !9
  %1426 = icmp slt i32 %1425, 32
  br i1 %1426, label %1526, label %1427

1427:                                             ; preds = %1424
  store i32 56, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %123) #6
  br label %1743

1428:                                             ; preds = %1345, %1344
  %1429 = landingpad { ptr, i32 }
          cleanup
  %1430 = extractvalue { ptr, i32 } %1429, 0
  store ptr %1430, ptr %2, align 8
  %1431 = extractvalue { ptr, i32 } %1429, 1
  store i32 %1431, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 120, ptr %100) #6
  br label %1744

1432:                                             ; preds = %1347
  %1433 = landingpad { ptr, i32 }
          cleanup
  %1434 = extractvalue { ptr, i32 } %1433, 0
  store ptr %1434, ptr %2, align 8
  %1435 = extractvalue { ptr, i32 } %1433, 1
  store i32 %1435, ptr %3, align 4
  br label %1440

1436:                                             ; preds = %1351, %1349
  %1437 = landingpad { ptr, i32 }
          cleanup
  %1438 = extractvalue { ptr, i32 } %1437, 0
  store ptr %1438, ptr %2, align 8
  %1439 = extractvalue { ptr, i32 } %1437, 1
  store i32 %1439, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %102) #6
  br label %1440

1440:                                             ; preds = %1436, %1432
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #6
  br label %1744

1441:                                             ; preds = %1354
  %1442 = landingpad { ptr, i32 }
          cleanup
  %1443 = extractvalue { ptr, i32 } %1442, 0
  store ptr %1443, ptr %2, align 8
  %1444 = extractvalue { ptr, i32 } %1442, 1
  store i32 %1444, ptr %3, align 4
  br label %1449

1445:                                             ; preds = %1358, %1356
  %1446 = landingpad { ptr, i32 }
          cleanup
  %1447 = extractvalue { ptr, i32 } %1446, 0
  store ptr %1447, ptr %2, align 8
  %1448 = extractvalue { ptr, i32 } %1446, 1
  store i32 %1448, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %104) #6
  br label %1449

1449:                                             ; preds = %1445, %1441
  call void @llvm.lifetime.end.p0(i64 8, ptr %103) #6
  br label %1744

1450:                                             ; preds = %1361
  %1451 = landingpad { ptr, i32 }
          cleanup
  %1452 = extractvalue { ptr, i32 } %1451, 0
  store ptr %1452, ptr %2, align 8
  %1453 = extractvalue { ptr, i32 } %1451, 1
  store i32 %1453, ptr %3, align 4
  br label %1458

1454:                                             ; preds = %1365, %1363
  %1455 = landingpad { ptr, i32 }
          cleanup
  %1456 = extractvalue { ptr, i32 } %1455, 0
  store ptr %1456, ptr %2, align 8
  %1457 = extractvalue { ptr, i32 } %1455, 1
  store i32 %1457, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %106) #6
  br label %1458

1458:                                             ; preds = %1454, %1450
  call void @llvm.lifetime.end.p0(i64 8, ptr %105) #6
  br label %1744

1459:                                             ; preds = %1368
  %1460 = landingpad { ptr, i32 }
          cleanup
  %1461 = extractvalue { ptr, i32 } %1460, 0
  store ptr %1461, ptr %2, align 8
  %1462 = extractvalue { ptr, i32 } %1460, 1
  store i32 %1462, ptr %3, align 4
  br label %1467

1463:                                             ; preds = %1372, %1370
  %1464 = landingpad { ptr, i32 }
          cleanup
  %1465 = extractvalue { ptr, i32 } %1464, 0
  store ptr %1465, ptr %2, align 8
  %1466 = extractvalue { ptr, i32 } %1464, 1
  store i32 %1466, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %108) #6
  br label %1467

1467:                                             ; preds = %1463, %1459
  call void @llvm.lifetime.end.p0(i64 8, ptr %107) #6
  br label %1744

1468:                                             ; preds = %1375
  %1469 = landingpad { ptr, i32 }
          cleanup
  %1470 = extractvalue { ptr, i32 } %1469, 0
  store ptr %1470, ptr %2, align 8
  %1471 = extractvalue { ptr, i32 } %1469, 1
  store i32 %1471, ptr %3, align 4
  br label %1476

1472:                                             ; preds = %1379, %1377
  %1473 = landingpad { ptr, i32 }
          cleanup
  %1474 = extractvalue { ptr, i32 } %1473, 0
  store ptr %1474, ptr %2, align 8
  %1475 = extractvalue { ptr, i32 } %1473, 1
  store i32 %1475, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %110) #6
  br label %1476

1476:                                             ; preds = %1472, %1468
  call void @llvm.lifetime.end.p0(i64 8, ptr %109) #6
  br label %1744

1477:                                             ; preds = %1386, %1384, %1382
  %1478 = landingpad { ptr, i32 }
          cleanup
  %1479 = extractvalue { ptr, i32 } %1478, 0
  store ptr %1479, ptr %2, align 8
  %1480 = extractvalue { ptr, i32 } %1478, 1
  store i32 %1480, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %112) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr %111) #6
  br label %1744

1481:                                             ; preds = %1388
  %1482 = landingpad { ptr, i32 }
          cleanup
  %1483 = extractvalue { ptr, i32 } %1482, 0
  store ptr %1483, ptr %2, align 8
  %1484 = extractvalue { ptr, i32 } %1482, 1
  store i32 %1484, ptr %3, align 4
  br label %1489

1485:                                             ; preds = %1392, %1390
  %1486 = landingpad { ptr, i32 }
          cleanup
  %1487 = extractvalue { ptr, i32 } %1486, 0
  store ptr %1487, ptr %2, align 8
  %1488 = extractvalue { ptr, i32 } %1486, 1
  store i32 %1488, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %114) #6
  br label %1489

1489:                                             ; preds = %1485, %1481
  call void @llvm.lifetime.end.p0(i64 8, ptr %113) #6
  br label %1744

1490:                                             ; preds = %1395
  %1491 = landingpad { ptr, i32 }
          cleanup
  %1492 = extractvalue { ptr, i32 } %1491, 0
  store ptr %1492, ptr %2, align 8
  %1493 = extractvalue { ptr, i32 } %1491, 1
  store i32 %1493, ptr %3, align 4
  br label %1498

1494:                                             ; preds = %1399, %1397
  %1495 = landingpad { ptr, i32 }
          cleanup
  %1496 = extractvalue { ptr, i32 } %1495, 0
  store ptr %1496, ptr %2, align 8
  %1497 = extractvalue { ptr, i32 } %1495, 1
  store i32 %1497, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %116) #6
  br label %1498

1498:                                             ; preds = %1494, %1490
  call void @llvm.lifetime.end.p0(i64 8, ptr %115) #6
  br label %1744

1499:                                             ; preds = %1402
  %1500 = landingpad { ptr, i32 }
          cleanup
  %1501 = extractvalue { ptr, i32 } %1500, 0
  store ptr %1501, ptr %2, align 8
  %1502 = extractvalue { ptr, i32 } %1500, 1
  store i32 %1502, ptr %3, align 4
  br label %1507

1503:                                             ; preds = %1406, %1404
  %1504 = landingpad { ptr, i32 }
          cleanup
  %1505 = extractvalue { ptr, i32 } %1504, 0
  store ptr %1505, ptr %2, align 8
  %1506 = extractvalue { ptr, i32 } %1504, 1
  store i32 %1506, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %118) #6
  br label %1507

1507:                                             ; preds = %1503, %1499
  call void @llvm.lifetime.end.p0(i64 8, ptr %117) #6
  br label %1744

1508:                                             ; preds = %1409
  %1509 = landingpad { ptr, i32 }
          cleanup
  %1510 = extractvalue { ptr, i32 } %1509, 0
  store ptr %1510, ptr %2, align 8
  %1511 = extractvalue { ptr, i32 } %1509, 1
  store i32 %1511, ptr %3, align 4
  br label %1516

1512:                                             ; preds = %1413, %1411
  %1513 = landingpad { ptr, i32 }
          cleanup
  %1514 = extractvalue { ptr, i32 } %1513, 0
  store ptr %1514, ptr %2, align 8
  %1515 = extractvalue { ptr, i32 } %1513, 1
  store i32 %1515, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %120) #6
  br label %1516

1516:                                             ; preds = %1512, %1508
  call void @llvm.lifetime.end.p0(i64 8, ptr %119) #6
  br label %1744

1517:                                             ; preds = %1416
  %1518 = landingpad { ptr, i32 }
          cleanup
  %1519 = extractvalue { ptr, i32 } %1518, 0
  store ptr %1519, ptr %2, align 8
  %1520 = extractvalue { ptr, i32 } %1518, 1
  store i32 %1520, ptr %3, align 4
  br label %1525

1521:                                             ; preds = %1420, %1418
  %1522 = landingpad { ptr, i32 }
          cleanup
  %1523 = extractvalue { ptr, i32 } %1522, 0
  store ptr %1523, ptr %2, align 8
  %1524 = extractvalue { ptr, i32 } %1522, 1
  store i32 %1524, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %122) #6
  br label %1525

1525:                                             ; preds = %1521, %1517
  call void @llvm.lifetime.end.p0(i64 8, ptr %121) #6
  br label %1744

1526:                                             ; preds = %1424
  call void @llvm.lifetime.start.p0(i64 4, ptr %124) #6
  store i32 0, ptr %124, align 4, !tbaa !9
  br label %1527

1527:                                             ; preds = %1736, %1526
  %1528 = load i32, ptr %124, align 4, !tbaa !9
  %1529 = icmp slt i32 %1528, 13
  br i1 %1529, label %1531, label %1530

1530:                                             ; preds = %1527
  store i32 59, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %124) #6
  br label %1739

1531:                                             ; preds = %1527
  call void @llvm.lifetime.start.p0(i64 4, ptr %125) #6
  store i32 0, ptr %125, align 4, !tbaa !9
  br label %1532

1532:                                             ; preds = %1732, %1531
  %1533 = load i32, ptr %125, align 4, !tbaa !9
  %1534 = icmp slt i32 %1533, 13
  br i1 %1534, label %1536, label %1535

1535:                                             ; preds = %1532
  store i32 62, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %125) #6
  br label %1735

1536:                                             ; preds = %1532
  call void @llvm.lifetime.start.p0(i64 4, ptr %126) #6
  %1537 = load i32, ptr %124, align 4, !tbaa !9
  %1538 = load i32, ptr %125, align 4, !tbaa !9
  %1539 = mul nsw i32 13, %1538
  %1540 = add nsw i32 %1537, %1539
  store i32 %1540, ptr %126, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %127) #6
  store i32 0, ptr %127, align 4, !tbaa !9
  br label %1541

1541:                                             ; preds = %1728, %1536
  %1542 = load i32, ptr %127, align 4, !tbaa !9
  %1543 = icmp slt i32 %1542, 3
  br i1 %1543, label %1545, label %1544

1544:                                             ; preds = %1541
  store i32 65, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %127) #6
  br label %1731

1545:                                             ; preds = %1541
  call void @llvm.lifetime.start.p0(i64 4, ptr %128) #6
  store i32 0, ptr %128, align 4, !tbaa !9
  br label %1546

1546:                                             ; preds = %1724, %1545
  %1547 = load i32, ptr %128, align 4, !tbaa !9
  %1548 = icmp slt i32 %1547, 3
  br i1 %1548, label %1550, label %1549

1549:                                             ; preds = %1546
  store i32 68, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %128) #6
  br label %1727

1550:                                             ; preds = %1546
  call void @llvm.lifetime.start.p0(i64 4, ptr %129) #6
  store i32 0, ptr %129, align 4, !tbaa !9
  br label %1551

1551:                                             ; preds = %1720, %1550
  %1552 = load i32, ptr %129, align 4, !tbaa !9
  %1553 = icmp slt i32 %1552, 64
  br i1 %1553, label %1555, label %1554

1554:                                             ; preds = %1551
  store i32 71, ptr %30, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  br label %1723

1555:                                             ; preds = %1551
  call void @llvm.lifetime.start.p0(i64 4, ptr %130) #6
  store float 0.000000e+00, ptr %130, align 4, !tbaa !11
  %1556 = load i32, ptr %128, align 4, !tbaa !9
  %1557 = sub nsw i32 %1556, 1
  %1558 = load i32, ptr %124, align 4, !tbaa !9
  %1559 = add nsw i32 %1557, %1558
  %1560 = icmp sge i32 %1559, 0
  br i1 %1560, label %1561, label %1599

1561:                                             ; preds = %1555
  %1562 = load i32, ptr %127, align 4, !tbaa !9
  %1563 = sub nsw i32 %1562, 1
  %1564 = load i32, ptr %125, align 4, !tbaa !9
  %1565 = add nsw i32 %1563, %1564
  %1566 = icmp sge i32 %1565, 0
  br i1 %1566, label %1567, label %1599

1567:                                             ; preds = %1561
  %1568 = load i32, ptr %128, align 4, !tbaa !9
  %1569 = sub nsw i32 %1568, 1
  %1570 = load i32, ptr %124, align 4, !tbaa !9
  %1571 = add nsw i32 %1569, %1570
  %1572 = icmp slt i32 %1571, 13
  br i1 %1572, label %1573, label %1599

1573:                                             ; preds = %1567
  %1574 = load i32, ptr %127, align 4, !tbaa !9
  %1575 = sub nsw i32 %1574, 1
  %1576 = load i32, ptr %125, align 4, !tbaa !9
  %1577 = add nsw i32 %1575, %1576
  %1578 = icmp slt i32 %1577, 13
  br i1 %1578, label %1579, label %1599

1579:                                             ; preds = %1573
  %1580 = load i32, ptr %129, align 4, !tbaa !9
  %1581 = sext i32 %1580 to i64
  %1582 = load i32, ptr %128, align 4, !tbaa !9
  %1583 = sub nsw i32 %1582, 1
  %1584 = load i32, ptr %124, align 4, !tbaa !9
  %1585 = add nsw i32 %1583, %1584
  %1586 = sext i32 %1585 to i64
  %1587 = load i32, ptr %127, align 4, !tbaa !9
  %1588 = sub nsw i32 %1587, 1
  %1589 = load i32, ptr %125, align 4, !tbaa !9
  %1590 = add nsw i32 %1588, %1589
  %1591 = load i32, ptr %123, align 4, !tbaa !9
  %1592 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %1581, i64 noundef %1586, i32 noundef %1590, i32 noundef %1591)
          to label %1593 unwind label %1595

1593:                                             ; preds = %1579
  %1594 = load float, ptr %1592, align 4, !tbaa !11
  store float %1594, ptr %130, align 4, !tbaa !11
  br label %1599

1595:                                             ; preds = %1716, %1714, %1705, %1702, %1699, %1697, %1694, %1692, %1689, %1687, %1684, %1682, %1679, %1677, %1674, %1672, %1659, %1656, %1654, %1645, %1642, %1639, %1637, %1634, %1632, %1629, %1627, %1624, %1622, %1619, %1617, %1614, %1612, %1599, %1579
  %1596 = landingpad { ptr, i32 }
          cleanup
  %1597 = extractvalue { ptr, i32 } %1596, 0
  store ptr %1597, ptr %2, align 8
  %1598 = extractvalue { ptr, i32 } %1596, 1
  store i32 %1598, ptr %3, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %130) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %128) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %127) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %126) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %125) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %124) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %123) #6
  br label %1744

1599:                                             ; preds = %1593, %1573, %1567, %1561, %1555
  %1600 = load i32, ptr %129, align 4, !tbaa !9
  %1601 = sext i32 %1600 to i64
  %1602 = load i32, ptr %128, align 4, !tbaa !9
  %1603 = sext i32 %1602 to i64
  %1604 = load i32, ptr %127, align 4, !tbaa !9
  %1605 = load i32, ptr %126, align 4, !tbaa !9
  %1606 = load i32, ptr %123, align 4, !tbaa !9
  %1607 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %1601, i64 noundef %1603, i32 noundef %1604, i32 noundef %1605, i32 noundef %1606)
          to label %1608 unwind label %1595

1608:                                             ; preds = %1599
  %1609 = load float, ptr %1607, align 4, !tbaa !11
  %1610 = load float, ptr %130, align 4, !tbaa !11
  %1611 = fcmp une float %1609, %1610
  br i1 %1611, label %1612, label %1645

1612:                                             ; preds = %1608
  %1613 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %1614 unwind label %1595

1614:                                             ; preds = %1612
  %1615 = load i32, ptr %124, align 4, !tbaa !9
  %1616 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1613, i32 noundef %1615)
          to label %1617 unwind label %1595

1617:                                             ; preds = %1614
  %1618 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1616, ptr noundef @.str.61)
          to label %1619 unwind label %1595

1619:                                             ; preds = %1617
  %1620 = load i32, ptr %125, align 4, !tbaa !9
  %1621 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1618, i32 noundef %1620)
          to label %1622 unwind label %1595

1622:                                             ; preds = %1619
  %1623 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1621, ptr noundef @.str.62)
          to label %1624 unwind label %1595

1624:                                             ; preds = %1622
  %1625 = load i32, ptr %128, align 4, !tbaa !9
  %1626 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1623, i32 noundef %1625)
          to label %1627 unwind label %1595

1627:                                             ; preds = %1624
  %1628 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1626, ptr noundef @.str.63)
          to label %1629 unwind label %1595

1629:                                             ; preds = %1627
  %1630 = load i32, ptr %127, align 4, !tbaa !9
  %1631 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1628, i32 noundef %1630)
          to label %1632 unwind label %1595

1632:                                             ; preds = %1629
  %1633 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1631, ptr noundef @.str.64)
          to label %1634 unwind label %1595

1634:                                             ; preds = %1632
  %1635 = load i32, ptr %129, align 4, !tbaa !9
  %1636 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1633, i32 noundef %1635)
          to label %1637 unwind label %1595

1637:                                             ; preds = %1634
  %1638 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1636, ptr noundef @.str.65)
          to label %1639 unwind label %1595

1639:                                             ; preds = %1637
  %1640 = load i32, ptr %123, align 4, !tbaa !9
  %1641 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1638, i32 noundef %1640)
          to label %1642 unwind label %1595

1642:                                             ; preds = %1639
  %1643 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1641, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1644 unwind label %1595

1644:                                             ; preds = %1642
  br label %1645

1645:                                             ; preds = %1644, %1608
  %1646 = load i32, ptr %129, align 4, !tbaa !9
  %1647 = sext i32 %1646 to i64
  %1648 = load i32, ptr %128, align 4, !tbaa !9
  %1649 = sext i32 %1648 to i64
  %1650 = load i32, ptr %127, align 4, !tbaa !9
  %1651 = load i32, ptr %126, align 4, !tbaa !9
  %1652 = load i32, ptr %123, align 4, !tbaa !9
  %1653 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %4, i64 noundef %1647, i64 noundef %1649, i32 noundef %1650, i32 noundef %1651, i32 noundef %1652)
          to label %1654 unwind label %1595

1654:                                             ; preds = %1645
  %1655 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %1653, ptr noundef nonnull align 4 dereferenceable(4) %130, i1 noundef zeroext true)
          to label %1656 unwind label %1595

1656:                                             ; preds = %1654
  %1657 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1658 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1657) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1655, ptr noundef %1658, ptr noundef @.str.28, i32 noundef 786, ptr noundef @.str.128)
          to label %1659 unwind label %1595

1659:                                             ; preds = %1656
  %1660 = load i32, ptr %123, align 4, !tbaa !9
  %1661 = sext i32 %1660 to i64
  %1662 = load i32, ptr %126, align 4, !tbaa !9
  %1663 = sext i32 %1662 to i64
  %1664 = load i32, ptr %127, align 4, !tbaa !9
  %1665 = load i32, ptr %128, align 4, !tbaa !9
  %1666 = load i32, ptr %129, align 4, !tbaa !9
  %1667 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %1661, i64 noundef %1663, i32 noundef %1664, i32 noundef %1665, i32 noundef %1666)
          to label %1668 unwind label %1595

1668:                                             ; preds = %1659
  %1669 = load float, ptr %1667, align 4, !tbaa !11
  %1670 = load float, ptr %130, align 4, !tbaa !11
  %1671 = fcmp une float %1669, %1670
  br i1 %1671, label %1672, label %1705

1672:                                             ; preds = %1668
  %1673 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.60)
          to label %1674 unwind label %1595

1674:                                             ; preds = %1672
  %1675 = load i32, ptr %124, align 4, !tbaa !9
  %1676 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1673, i32 noundef %1675)
          to label %1677 unwind label %1595

1677:                                             ; preds = %1674
  %1678 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1676, ptr noundef @.str.61)
          to label %1679 unwind label %1595

1679:                                             ; preds = %1677
  %1680 = load i32, ptr %125, align 4, !tbaa !9
  %1681 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1678, i32 noundef %1680)
          to label %1682 unwind label %1595

1682:                                             ; preds = %1679
  %1683 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1681, ptr noundef @.str.62)
          to label %1684 unwind label %1595

1684:                                             ; preds = %1682
  %1685 = load i32, ptr %128, align 4, !tbaa !9
  %1686 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1683, i32 noundef %1685)
          to label %1687 unwind label %1595

1687:                                             ; preds = %1684
  %1688 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1686, ptr noundef @.str.63)
          to label %1689 unwind label %1595

1689:                                             ; preds = %1687
  %1690 = load i32, ptr %127, align 4, !tbaa !9
  %1691 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1688, i32 noundef %1690)
          to label %1692 unwind label %1595

1692:                                             ; preds = %1689
  %1693 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1691, ptr noundef @.str.64)
          to label %1694 unwind label %1595

1694:                                             ; preds = %1692
  %1695 = load i32, ptr %129, align 4, !tbaa !9
  %1696 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1693, i32 noundef %1695)
          to label %1697 unwind label %1595

1697:                                             ; preds = %1694
  %1698 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1696, ptr noundef @.str.65)
          to label %1699 unwind label %1595

1699:                                             ; preds = %1697
  %1700 = load i32, ptr %123, align 4, !tbaa !9
  %1701 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1698, i32 noundef %1700)
          to label %1702 unwind label %1595

1702:                                             ; preds = %1699
  %1703 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1701, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1704 unwind label %1595

1704:                                             ; preds = %1702
  br label %1705

1705:                                             ; preds = %1704, %1668
  %1706 = load i32, ptr %123, align 4, !tbaa !9
  %1707 = sext i32 %1706 to i64
  %1708 = load i32, ptr %126, align 4, !tbaa !9
  %1709 = sext i32 %1708 to i64
  %1710 = load i32, ptr %127, align 4, !tbaa !9
  %1711 = load i32, ptr %128, align 4, !tbaa !9
  %1712 = load i32, ptr %129, align 4, !tbaa !9
  %1713 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %16, i64 noundef %1707, i64 noundef %1709, i32 noundef %1710, i32 noundef %1711, i32 noundef %1712)
          to label %1714 unwind label %1595

1714:                                             ; preds = %1705
  %1715 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %1713, ptr noundef nonnull align 4 dereferenceable(4) %130, i1 noundef zeroext true)
          to label %1716 unwind label %1595

1716:                                             ; preds = %1714
  %1717 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %1718 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %1717) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %1715, ptr noundef %1718, ptr noundef @.str.28, i32 noundef 791, ptr noundef @.str.129)
          to label %1719 unwind label %1595

1719:                                             ; preds = %1716
  call void @llvm.lifetime.end.p0(i64 4, ptr %130) #6
  br label %1720

1720:                                             ; preds = %1719
  %1721 = load i32, ptr %129, align 4, !tbaa !9
  %1722 = add nsw i32 %1721, 1
  store i32 %1722, ptr %129, align 4, !tbaa !9
  br label %1551, !llvm.loop !32

1723:                                             ; preds = %1554
  br label %1724

1724:                                             ; preds = %1723
  %1725 = load i32, ptr %128, align 4, !tbaa !9
  %1726 = add nsw i32 %1725, 1
  store i32 %1726, ptr %128, align 4, !tbaa !9
  br label %1546, !llvm.loop !33

1727:                                             ; preds = %1549
  br label %1728

1728:                                             ; preds = %1727
  %1729 = load i32, ptr %127, align 4, !tbaa !9
  %1730 = add nsw i32 %1729, 1
  store i32 %1730, ptr %127, align 4, !tbaa !9
  br label %1541, !llvm.loop !34

1731:                                             ; preds = %1544
  call void @llvm.lifetime.end.p0(i64 4, ptr %126) #6
  br label %1732

1732:                                             ; preds = %1731
  %1733 = load i32, ptr %125, align 4, !tbaa !9
  %1734 = add nsw i32 %1733, 1
  store i32 %1734, ptr %125, align 4, !tbaa !9
  br label %1532, !llvm.loop !35

1735:                                             ; preds = %1535
  br label %1736

1736:                                             ; preds = %1735
  %1737 = load i32, ptr %124, align 4, !tbaa !9
  %1738 = add nsw i32 %1737, 1
  store i32 %1738, ptr %124, align 4, !tbaa !9
  br label %1527, !llvm.loop !36

1739:                                             ; preds = %1530
  br label %1740

1740:                                             ; preds = %1739
  %1741 = load i32, ptr %123, align 4, !tbaa !9
  %1742 = add nsw i32 %1741, 1
  store i32 %1742, ptr %123, align 4, !tbaa !9
  br label %1424, !llvm.loop !37

1743:                                             ; preds = %1427
  call void @_ZN5Eigen6TensorIfLi5ELi1ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %16) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %16) #6
  call void @_ZN5Eigen6TensorIfLi5ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %4) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %4) #6
  call void @_ZN5Eigen6TensorIfLi4ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %1) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %1) #6
  ret void

1744:                                             ; preds = %1595, %1525, %1516, %1507, %1498, %1489, %1477, %1476, %1467, %1458, %1449, %1440, %1428, %1193, %1123, %1114, %1105, %1096, %1087, %1075, %1074, %1065, %1056, %1047, %1038, %1026, %791, %721, %712, %703, %694, %685, %673, %672, %663, %654, %645, %636, %624, %620, %385, %315, %306, %297, %288, %279
  call void @_ZN5Eigen6TensorIfLi5ELi1ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %16) #6
  br label %1745

1745:                                             ; preds = %1744, %267
  call void @llvm.lifetime.end.p0(i64 48, ptr %16) #6
  br label %1746

1746:                                             ; preds = %1745, %266, %257, %248, %239, %230
  call void @_ZN5Eigen6TensorIfLi5ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %4) #6
  br label %1747

1747:                                             ; preds = %1746, %218
  call void @llvm.lifetime.end.p0(i64 48, ptr %4) #6
  br label %1748

1748:                                             ; preds = %1747, %214
  call void @_ZN5Eigen6TensorIfLi4ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %1) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %1) #6
  br label %1749

1749:                                             ; preds = %1748
  %1750 = load ptr, ptr %2, align 8
  %1751 = load i32, ptr %3, align 4
  %1752 = insertvalue { ptr, i32 } poison, ptr %1750, 0
  %1753 = insertvalue { ptr, i32 } %1752, i32 %1751, 1
  resume { ptr, i32 } %1753
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind noalias writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8, ptr noundef nonnull align 1 dereferenceable(1), i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i32 noundef, float noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(120)) #1 align 2

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { 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 #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 = { "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 = { 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 = { 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 #6 = { nounwind }

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"long", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"float", !7, i64 0}
!13 = distinct !{!13, !14}
!14 = !{!"llvm.loop.mustprogress"}
!15 = distinct !{!15, !14}
!16 = distinct !{!16, !14}
!17 = distinct !{!17, !14}
!18 = distinct !{!18, !14}
!19 = distinct !{!19, !14}
!20 = distinct !{!20, !14}
!21 = distinct !{!21, !14}
!22 = distinct !{!22, !14}
!23 = distinct !{!23, !14}
!24 = distinct !{!24, !14}
!25 = distinct !{!25, !14}
!26 = distinct !{!26, !14}
!27 = distinct !{!27, !14}
!28 = distinct !{!28, !14}
!29 = distinct !{!29, !14}
!30 = distinct !{!30, !14}
!31 = distinct !{!31, !14}
!32 = distinct !{!32, !14}
!33 = distinct !{!33, !14}
!34 = distinct !{!34, !14}
!35 = distinct !{!35, !14}
!36 = distinct !{!36, !14}
!37 = distinct !{!37, !14}


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

%"class.std::vector" = 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.std::basic_ostream" = type { ptr, %"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.Eigen::TensorImagePatchOp" = type { ptr, i64, i64, i64, i64, i64, i64, i64, i64, i8, i64, i64, i64, i64, i32, float }
%"class.Eigen::Tensor" = type { %"class.Eigen::TensorStorage" }
%"class.Eigen::TensorStorage" = type { ptr, %"struct.Eigen::DSizes" }
%"struct.Eigen::DSizes" = type { %"struct.std::array" }
%"struct.std::array" = type { [4 x i64] }
%"class.Eigen::Tensor.16" = type { %"class.Eigen::TensorStorage.19" }
%"class.Eigen::TensorStorage.19" = type { ptr, %"struct.Eigen::DSizes.20" }
%"struct.Eigen::DSizes.20" = type { %"struct.std::array.21" }
%"struct.std::array.21" = type { [5 x i64] }
%"class.Eigen::Tensor.23" = type { %"class.Eigen::TensorStorage.26" }
%"class.Eigen::TensorStorage.26" = type { ptr, %"struct.Eigen::DSizes.20" }
%"class.Eigen::TensorImagePatchOp.47" = type { %"class.Eigen::TensorLayoutSwapOp", i64, i64, i64, i64, i64, i64, i64, i64, i8, i64, i64, i64, i64, i32, float }
%"class.Eigen::TensorLayoutSwapOp" = type { ptr }

@_ZN5EigenL12g_test_stackB5cxx11E = external hidden global %"class.std::vector", align 8
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.28 = external hidden unnamed_addr constant [130 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.62 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.64 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.118 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.119 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.120 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.121 = external hidden unnamed_addr constant [49 x i8], align 1
@.str.122 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.123 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.124 = external hidden unnamed_addr constant [59 x i8], align 1
@.str.125 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.126 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.127 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.128 = external hidden unnamed_addr constant [58 x i8], align 1
@.str.129 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.130 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.131 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.132 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.133 = external hidden unnamed_addr constant [47 x i8], align 1
@.str.134 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.135 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.136 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.137 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.138 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.139 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.140 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.141 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.142 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.143 = external hidden unnamed_addr constant [47 x i8], align 1
@.str.144 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.145 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.146 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.147 = external hidden unnamed_addr constant [54 x i8], align 1
@.str.148 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.149 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.150 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.151 = external hidden unnamed_addr constant [47 x i8], align 1
@.str.152 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.153 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.154 = external hidden unnamed_addr constant [53 x i8], align 1
@.str.155 = external hidden unnamed_addr constant [54 x i8], align 1

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

declare i32 @__gxx_personality_v0(...)

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

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #2 align 2

; 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)) #1

declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) local_unnamed_addr #3

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext, ptr noundef, ptr noundef, i32 noundef, ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #4 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #4 align 2

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind noalias writable sret(%"class.Eigen::TensorImagePatchOp") align 8, ptr noundef nonnull align 1 dereferenceable(1), i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i32 noundef, float noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(120)) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 4 dereferenceable(4), i1 noundef zeroext) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef) local_unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef) local_unnamed_addr #5 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), i1 noundef zeroext) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40), i64 noundef, i64 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef, i64 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48), i64 noundef, i64 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN5Eigen6TensorIfLi5ELi1ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN5Eigen6TensorIfLi5ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN5Eigen6TensorIfLi4ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #5 align 2

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

; Function Attrs: mustprogress uwtable
define dso_local void @_Z21test_imagenet_patchesv() local_unnamed_addr #2 personality ptr @__gxx_personality_v0 {
  %1 = alloca %"class.Eigen::Tensor", align 8
  %2 = alloca %"class.Eigen::Tensor.16", align 8
  %3 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %4 = alloca i64, align 8
  %5 = alloca i32, align 4
  %6 = alloca i64, align 8
  %7 = alloca i32, align 4
  %8 = alloca i64, align 8
  %9 = alloca i32, align 4
  %10 = alloca i64, align 8
  %11 = alloca i32, align 4
  %12 = alloca i64, align 8
  %13 = alloca i32, align 4
  %14 = alloca %"class.Eigen::Tensor.23", align 8
  %15 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %16 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %17 = alloca i64, align 8
  %18 = alloca i32, align 4
  %19 = alloca i64, align 8
  %20 = alloca i32, align 4
  %21 = alloca i64, align 8
  %22 = alloca i32, align 4
  %23 = alloca i64, align 8
  %24 = alloca i32, align 4
  %25 = alloca i64, align 8
  %26 = alloca i32, align 4
  %27 = alloca float, align 4
  %28 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %29 = alloca i64, align 8
  %30 = alloca i32, align 4
  %31 = alloca i64, align 8
  %32 = alloca i32, align 4
  %33 = alloca i64, align 8
  %34 = alloca i32, align 4
  %35 = alloca i64, align 8
  %36 = alloca i32, align 4
  %37 = alloca i64, align 8
  %38 = alloca i32, align 4
  %39 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %40 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %41 = alloca i64, align 8
  %42 = alloca i32, align 4
  %43 = alloca i64, align 8
  %44 = alloca i32, align 4
  %45 = alloca i64, align 8
  %46 = alloca i32, align 4
  %47 = alloca i64, align 8
  %48 = alloca i32, align 4
  %49 = alloca i64, align 8
  %50 = alloca i32, align 4
  %51 = alloca float, align 4
  %52 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %53 = alloca i64, align 8
  %54 = alloca i32, align 4
  %55 = alloca i64, align 8
  %56 = alloca i32, align 4
  %57 = alloca i64, align 8
  %58 = alloca i32, align 4
  %59 = alloca i64, align 8
  %60 = alloca i32, align 4
  %61 = alloca i64, align 8
  %62 = alloca i32, align 4
  %63 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %64 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %65 = alloca i64, align 8
  %66 = alloca i32, align 4
  %67 = alloca i64, align 8
  %68 = alloca i32, align 4
  %69 = alloca i64, align 8
  %70 = alloca i32, align 4
  %71 = alloca i64, align 8
  %72 = alloca i32, align 4
  %73 = alloca i64, align 8
  %74 = alloca i32, align 4
  %75 = alloca float, align 4
  %76 = alloca %"class.Eigen::TensorImagePatchOp", align 8
  %77 = alloca i64, align 8
  %78 = alloca i32, align 4
  %79 = alloca i64, align 8
  %80 = alloca i32, align 4
  %81 = alloca i64, align 8
  %82 = alloca i32, align 4
  %83 = alloca i64, align 8
  %84 = alloca i32, align 4
  %85 = alloca i64, align 8
  %86 = alloca i32, align 4
  %87 = alloca %"class.Eigen::TensorImagePatchOp.47", align 8
  %88 = alloca %"class.Eigen::TensorLayoutSwapOp", align 8
  %89 = alloca i64, align 8
  %90 = alloca i32, align 4
  %91 = alloca i64, align 8
  %92 = alloca i32, align 4
  %93 = alloca i64, align 8
  %94 = alloca i32, align 4
  %95 = alloca i64, align 8
  %96 = alloca i32, align 4
  %97 = alloca i64, align 8
  %98 = alloca i32, align 4
  %99 = alloca float, align 4
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %1) #6
  call void @_ZN5Eigen6TensorIfLi4ELi0ElEC2IJiiiEEElDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 3, i32 noundef 128, i32 noundef 128, i32 noundef 16)
  %100 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %101 unwind label %170

101:                                              ; preds = %0
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %2) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %3) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %3, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 11, i64 noundef 11, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %102 unwind label %172

102:                                              ; preds = %101
  invoke void @_ZN5Eigen6TensorIfLi5ELi0ElEC2INS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERKNS_10TensorBaseIT_Li0EEE(ptr noundef nonnull align 8 dereferenceable(48) %2, ptr noundef nonnull align 1 dereferenceable(1) %3)
          to label %103 unwind label %172

103:                                              ; preds = %102
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %3) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %4) #6
  %104 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 0)
  store i64 %104, ptr %4, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %5) #6
  store i32 3, ptr %5, align 4, !tbaa !9
  %105 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %4, ptr noundef nonnull align 4 dereferenceable(4) %5, i1 noundef zeroext true)
          to label %106 unwind label %174

106:                                              ; preds = %103
  %107 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %108 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %107) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %105, ptr noundef %108, ptr noundef nonnull @.str.28, i32 noundef 615, ptr noundef nonnull @.str.118)
          to label %109 unwind label %174

109:                                              ; preds = %106
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %4) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %6) #6
  %110 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 1)
  store i64 %110, ptr %6, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %7) #6
  store i32 11, ptr %7, align 4, !tbaa !9
  %111 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull align 4 dereferenceable(4) %7, i1 noundef zeroext true)
          to label %112 unwind label %176

112:                                              ; preds = %109
  %113 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %114 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %113) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %111, ptr noundef %114, ptr noundef nonnull @.str.28, i32 noundef 616, ptr noundef nonnull @.str.119)
          to label %115 unwind label %176

115:                                              ; preds = %112
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %7) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %8) #6
  %116 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 2)
  store i64 %116, ptr %8, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %9) #6
  store i32 11, ptr %9, align 4, !tbaa !9
  %117 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef nonnull align 4 dereferenceable(4) %9, i1 noundef zeroext true)
          to label %118 unwind label %178

118:                                              ; preds = %115
  %119 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %120 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %119) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %117, ptr noundef %120, ptr noundef nonnull @.str.28, i32 noundef 617, ptr noundef nonnull @.str.120)
          to label %121 unwind label %178

121:                                              ; preds = %118
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %9) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %10) #6
  %122 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 3)
  store i64 %122, ptr %10, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %11) #6
  store i32 16384, ptr %11, align 4, !tbaa !9
  %123 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %10, ptr noundef nonnull align 4 dereferenceable(4) %11, i1 noundef zeroext true)
          to label %124 unwind label %180

124:                                              ; preds = %121
  %125 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %126 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %125) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %123, ptr noundef %126, ptr noundef nonnull @.str.28, i32 noundef 618, ptr noundef nonnull @.str.121)
          to label %127 unwind label %180

127:                                              ; preds = %124
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %11) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %12) #6
  %128 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 4)
  store i64 %128, ptr %12, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %13) #6
  store i32 16, ptr %13, align 4, !tbaa !9
  %129 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %12, ptr noundef nonnull align 4 dereferenceable(4) %13, i1 noundef zeroext true)
          to label %130 unwind label %182

130:                                              ; preds = %127
  %131 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %132 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %131) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %129, ptr noundef %132, ptr noundef nonnull @.str.28, i32 noundef 619, ptr noundef nonnull @.str.122)
          to label %133 unwind label %182

133:                                              ; preds = %130
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %13) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %14) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %15) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %16) #6
  %134 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %135 unwind label %184

135:                                              ; preds = %133
  store ptr %134, ptr %16, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %15, ptr noundef nonnull align 1 dereferenceable(1) %16, i64 noundef 11, i64 noundef 11, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %136 unwind label %184

136:                                              ; preds = %135
  invoke void @_ZN5Eigen6TensorIfLi5ELi1ElEC2INS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERKNS_10TensorBaseIT_Li0EEE(ptr noundef nonnull align 8 dereferenceable(48) %14, ptr noundef nonnull align 1 dereferenceable(1) %15)
          to label %137 unwind label %184

137:                                              ; preds = %136
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %15) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %17) #6
  %138 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 0)
  store i64 %138, ptr %17, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %18) #6
  store i32 16, ptr %18, align 4, !tbaa !9
  %139 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %17, ptr noundef nonnull align 4 dereferenceable(4) %18, i1 noundef zeroext true)
          to label %140 unwind label %186

140:                                              ; preds = %137
  %141 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %142 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %141) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %139, ptr noundef %142, ptr noundef nonnull @.str.28, i32 noundef 623, ptr noundef nonnull @.str.123)
          to label %143 unwind label %186

143:                                              ; preds = %140
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %18) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %17) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %19) #6
  %144 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 1)
  store i64 %144, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %20) #6
  store i32 16384, ptr %20, align 4, !tbaa !9
  %145 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef nonnull align 4 dereferenceable(4) %20, i1 noundef zeroext true)
          to label %146 unwind label %188

146:                                              ; preds = %143
  %147 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %148 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %147) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %145, ptr noundef %148, ptr noundef nonnull @.str.28, i32 noundef 624, ptr noundef nonnull @.str.124)
          to label %149 unwind label %188

149:                                              ; preds = %146
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %20) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %21) #6
  %150 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 2)
  store i64 %150, ptr %21, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %22) #6
  store i32 11, ptr %22, align 4, !tbaa !9
  %151 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %21, ptr noundef nonnull align 4 dereferenceable(4) %22, i1 noundef zeroext true)
          to label %152 unwind label %190

152:                                              ; preds = %149
  %153 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %154 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %153) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %151, ptr noundef %154, ptr noundef nonnull @.str.28, i32 noundef 625, ptr noundef nonnull @.str.125)
          to label %155 unwind label %190

155:                                              ; preds = %152
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %22) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %21) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %23) #6
  %156 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 3)
  store i64 %156, ptr %23, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %24) #6
  store i32 11, ptr %24, align 4, !tbaa !9
  %157 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 4 dereferenceable(4) %24, i1 noundef zeroext true)
          to label %158 unwind label %192

158:                                              ; preds = %155
  %159 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %160 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %159) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %157, ptr noundef %160, ptr noundef nonnull @.str.28, i32 noundef 626, ptr noundef nonnull @.str.126)
          to label %161 unwind label %192

161:                                              ; preds = %158
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %24) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %23) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %25) #6
  %162 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 4)
  store i64 %162, ptr %25, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %26) #6
  store i32 3, ptr %26, align 4, !tbaa !9
  %163 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %25, ptr noundef nonnull align 4 dereferenceable(4) %26, i1 noundef zeroext true)
          to label %164 unwind label %194

164:                                              ; preds = %161
  %165 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %166 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %165) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %163, ptr noundef %166, ptr noundef nonnull @.str.28, i32 noundef 627, ptr noundef nonnull @.str.127)
          to label %167 unwind label %194

167:                                              ; preds = %164
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %26) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #6
  br label %.preheader304

.preheader304:                                    ; preds = %167, %199
  %indvars.iv351 = phi i64 [ 0, %167 ], [ %indvars.iv.next352, %199 ]
  %168 = trunc nuw nsw i64 %indvars.iv351 to i32
  %.pre = trunc nuw nsw i64 %indvars.iv351 to i32
  br label %.preheader303

169:                                              ; preds = %199
  invoke void @_ZN5Eigen6TensorIfLi4ELi0ElE6resizeIJiiiEEEvlDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 16, i32 noundef 64, i32 noundef 64, i32 noundef 32)
          to label %307 unwind label %380

170:                                              ; preds = %0
  %171 = landingpad { ptr, i32 }
          cleanup
  br label %936

172:                                              ; preds = %102, %101
  %173 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %3) #6
  br label %935

174:                                              ; preds = %106, %103
  %175 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %4) #6
  br label %934

176:                                              ; preds = %112, %109
  %177 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %7) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #6
  br label %934

178:                                              ; preds = %118, %115
  %179 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %9) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #6
  br label %934

180:                                              ; preds = %124, %121
  %181 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %11) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #6
  br label %934

182:                                              ; preds = %130, %127
  %183 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %13) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #6
  br label %934

184:                                              ; preds = %136, %135, %133
  %185 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %15) #6
  br label %933

186:                                              ; preds = %140, %137
  %187 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %18) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %17) #6
  br label %932

188:                                              ; preds = %146, %143
  %189 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %20) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #6
  br label %932

190:                                              ; preds = %152, %149
  %191 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %22) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %21) #6
  br label %932

192:                                              ; preds = %158, %155
  %193 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %24) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %23) #6
  br label %932

194:                                              ; preds = %164, %161
  %195 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %26) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #6
  br label %932

.preheader303:                                    ; preds = %.preheader304, %200
  %indvars.iv347 = phi i64 [ 0, %.preheader304 ], [ %indvars.iv.next348, %200 ]
  %196 = add nsw i64 %indvars.iv347, -5
  %197 = trunc nuw nsw i64 %indvars.iv347 to i32
  %198 = trunc nuw nsw i64 %indvars.iv347 to i32
  br label %201

199:                                              ; preds = %200
  %indvars.iv.next352 = add nuw nsw i64 %indvars.iv351, 1
  %exitcond354.not = icmp eq i64 %indvars.iv.next352, 16
  br i1 %exitcond354.not, label %169, label %.preheader304, !llvm.loop !11

200:                                              ; preds = %210
  %indvars.iv.next348 = add nuw nsw i64 %indvars.iv347, 1
  %exitcond350.not = icmp eq i64 %indvars.iv.next348, 128
  br i1 %exitcond350.not, label %199, label %.preheader303, !llvm.loop !13

201:                                              ; preds = %.preheader303, %210
  %indvars.iv343 = phi i64 [ 0, %.preheader303 ], [ %indvars.iv.next344, %210 ]
  %202 = shl nuw nsw i64 %indvars.iv343, 7
  %203 = add nuw nsw i64 %202, %indvars.iv347
  %204 = trunc i64 %indvars.iv343 to i32
  %205 = add i32 %204, -5
  %206 = trunc nuw nsw i64 %203 to i32
  %207 = trunc nuw nsw i64 %indvars.iv343 to i32
  %208 = trunc nuw nsw i64 %indvars.iv343 to i32
  br label %.preheader302

.preheader302:                                    ; preds = %201, %217
  %.0267307 = phi i32 [ 0, %201 ], [ %218, %217 ]
  %209 = add nsw i32 %205, %.0267307
  br label %.preheader301

210:                                              ; preds = %217
  %indvars.iv.next344 = add nuw nsw i64 %indvars.iv343, 1
  %exitcond346.not = icmp eq i64 %indvars.iv.next344, 128
  br i1 %exitcond346.not, label %200, label %201, !llvm.loop !14

.preheader301:                                    ; preds = %.preheader302, %219
  %indvars.iv338 = phi i64 [ 0, %.preheader302 ], [ %indvars.iv.next339, %219 ]
  %211 = add nsw i64 %196, %indvars.iv338
  %212 = icmp slt i64 %211, 0
  %213 = trunc nsw i64 %211 to i32
  %214 = or i32 %209, %213
  %or.cond283 = icmp ugt i32 %214, 127
  %brmerge = or i1 %212, %or.cond283
  %215 = trunc nuw nsw i64 %indvars.iv338 to i32
  %216 = trunc nuw nsw i64 %indvars.iv338 to i32
  br label %220

217:                                              ; preds = %219
  %218 = add nuw nsw i32 %.0267307, 1
  %exitcond342.not = icmp eq i32 %218, 11
  br i1 %exitcond342.not, label %210, label %.preheader302, !llvm.loop !15

219:                                              ; preds = %306
  %indvars.iv.next339 = add nuw nsw i64 %indvars.iv338, 1
  %exitcond341.not = icmp eq i64 %indvars.iv.next339, 11
  br i1 %exitcond341.not, label %217, label %.preheader301, !llvm.loop !16

220:                                              ; preds = %.preheader301, %306
  %indvars.iv = phi i64 [ 0, %.preheader301 ], [ %indvars.iv.next, %306 ]
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %27) #6
  store float 0.000000e+00, ptr %27, align 4, !tbaa !17
  br i1 %brmerge, label %._crit_edge420, label %221

221:                                              ; preds = %220
  %222 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %indvars.iv, i64 noundef %211, i32 noundef %209, i32 noundef %168)
          to label %223 unwind label %225

223:                                              ; preds = %221
  %224 = load float, ptr %222, align 4, !tbaa !17
  store float %224, ptr %27, align 4, !tbaa !17
  br label %._crit_edge420

225:                                              ; preds = %303, %301, %299, %297, %295, %293, %291, %289, %287, %285, %283, %281, %279, %277, %275, %273, %266, %263, %261, %259, %257, %255, %253, %250, %248, %246, %244, %242, %240, %238, %236, %234, %232, %._crit_edge420, %221
  %226 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %27) #6
  br label %932

._crit_edge420:                                   ; preds = %220, %223
  %.pre-phi = phi i32 [ %168, %223 ], [ %.pre, %220 ]
  %227 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv, i64 noundef %indvars.iv338, i32 noundef %.0267307, i32 noundef %206, i32 noundef %.pre-phi)
          to label %228 unwind label %225

228:                                              ; preds = %._crit_edge420
  %229 = load float, ptr %227, align 4, !tbaa !17
  %230 = load float, ptr %27, align 4, !tbaa !17
  %231 = fcmp une float %229, %230
  br i1 %231, label %232, label %259

232:                                              ; preds = %228
  %233 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %234 unwind label %225

234:                                              ; preds = %232
  %235 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %233, i32 noundef %197)
          to label %236 unwind label %225

236:                                              ; preds = %234
  %237 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %235, ptr noundef nonnull @.str.61)
          to label %238 unwind label %225

238:                                              ; preds = %236
  %239 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %237, i32 noundef %207)
          to label %240 unwind label %225

240:                                              ; preds = %238
  %241 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %239, ptr noundef nonnull @.str.62)
          to label %242 unwind label %225

242:                                              ; preds = %240
  %243 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %241, i32 noundef %215)
          to label %244 unwind label %225

244:                                              ; preds = %242
  %245 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %243, ptr noundef nonnull @.str.63)
          to label %246 unwind label %225

246:                                              ; preds = %244
  %247 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %245, i32 noundef %.0267307)
          to label %248 unwind label %225

248:                                              ; preds = %246
  %249 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %247, ptr noundef nonnull @.str.64)
          to label %250 unwind label %225

250:                                              ; preds = %248
  %251 = trunc nuw nsw i64 %indvars.iv to i32
  %252 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %249, i32 noundef %251)
          to label %253 unwind label %225

253:                                              ; preds = %250
  %254 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %252, ptr noundef nonnull @.str.65)
          to label %255 unwind label %225

255:                                              ; preds = %253
  %256 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %254, i32 noundef %.pre-phi)
          to label %257 unwind label %225

257:                                              ; preds = %255
  %258 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %256, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %259 unwind label %225

259:                                              ; preds = %257, %228
  %260 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv, i64 noundef %indvars.iv338, i32 noundef %.0267307, i32 noundef %206, i32 noundef %.pre-phi)
          to label %261 unwind label %225

261:                                              ; preds = %259
  %262 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %260, ptr noundef nonnull align 4 dereferenceable(4) %27, i1 noundef zeroext true)
          to label %263 unwind label %225

263:                                              ; preds = %261
  %264 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %265 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %264) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %262, ptr noundef %265, ptr noundef nonnull @.str.28, i32 noundef 644, ptr noundef nonnull @.str.128)
          to label %266 unwind label %225

266:                                              ; preds = %263
  %267 = trunc nuw nsw i64 %indvars.iv to i32
  %268 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv351, i64 noundef %203, i32 noundef %.0267307, i32 noundef %216, i32 noundef %267)
          to label %269 unwind label %225

269:                                              ; preds = %266
  %270 = load float, ptr %268, align 4, !tbaa !17
  %271 = load float, ptr %27, align 4, !tbaa !17
  %272 = fcmp une float %270, %271
  br i1 %272, label %273, label %299

273:                                              ; preds = %269
  %274 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %275 unwind label %225

275:                                              ; preds = %273
  %276 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %274, i32 noundef %198)
          to label %277 unwind label %225

277:                                              ; preds = %275
  %278 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %276, ptr noundef nonnull @.str.61)
          to label %279 unwind label %225

279:                                              ; preds = %277
  %280 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %278, i32 noundef %208)
          to label %281 unwind label %225

281:                                              ; preds = %279
  %282 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %280, ptr noundef nonnull @.str.62)
          to label %283 unwind label %225

283:                                              ; preds = %281
  %284 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %282, i32 noundef %216)
          to label %285 unwind label %225

285:                                              ; preds = %283
  %286 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %284, ptr noundef nonnull @.str.63)
          to label %287 unwind label %225

287:                                              ; preds = %285
  %288 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %286, i32 noundef %.0267307)
          to label %289 unwind label %225

289:                                              ; preds = %287
  %290 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %288, ptr noundef nonnull @.str.64)
          to label %291 unwind label %225

291:                                              ; preds = %289
  %292 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %290, i32 noundef %267)
          to label %293 unwind label %225

293:                                              ; preds = %291
  %294 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %292, ptr noundef nonnull @.str.65)
          to label %295 unwind label %225

295:                                              ; preds = %293
  %296 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %294, i32 noundef %.pre-phi)
          to label %297 unwind label %225

297:                                              ; preds = %295
  %298 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %296, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %299 unwind label %225

299:                                              ; preds = %297, %269
  %300 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv351, i64 noundef %203, i32 noundef %.0267307, i32 noundef %216, i32 noundef %267)
          to label %301 unwind label %225

301:                                              ; preds = %299
  %302 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %300, ptr noundef nonnull align 4 dereferenceable(4) %27, i1 noundef zeroext true)
          to label %303 unwind label %225

303:                                              ; preds = %301
  %304 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %305 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %304) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %302, ptr noundef %305, ptr noundef nonnull @.str.28, i32 noundef 653, ptr noundef nonnull @.str.129)
          to label %306 unwind label %225

306:                                              ; preds = %303
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %27) #6
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next, 3
  br i1 %exitcond.not, label %219, label %220, !llvm.loop !19

307:                                              ; preds = %169
  %308 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %309 unwind label %380

309:                                              ; preds = %307
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %28) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %28, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 9, i64 noundef 9, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %310 unwind label %382

310:                                              ; preds = %309
  %311 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %2, ptr noundef nonnull align 8 dereferenceable(120) %28)
          to label %312 unwind label %382

312:                                              ; preds = %310
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %28) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %29) #6
  %313 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 0)
  store i64 %313, ptr %29, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %30) #6
  store i32 16, ptr %30, align 4, !tbaa !9
  %314 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %29, ptr noundef nonnull align 4 dereferenceable(4) %30, i1 noundef zeroext true)
          to label %315 unwind label %384

315:                                              ; preds = %312
  %316 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %317 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %316) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %314, ptr noundef %317, ptr noundef nonnull @.str.28, i32 noundef 665, ptr noundef nonnull @.str.130)
          to label %318 unwind label %384

318:                                              ; preds = %315
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %30) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %29) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %31) #6
  %319 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 1)
  store i64 %319, ptr %31, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %32) #6
  store i32 9, ptr %32, align 4, !tbaa !9
  %320 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %31, ptr noundef nonnull align 4 dereferenceable(4) %32, i1 noundef zeroext true)
          to label %321 unwind label %386

321:                                              ; preds = %318
  %322 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %323 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %322) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %320, ptr noundef %323, ptr noundef nonnull @.str.28, i32 noundef 666, ptr noundef nonnull @.str.131)
          to label %324 unwind label %386

324:                                              ; preds = %321
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %32) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %33) #6
  %325 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 2)
  store i64 %325, ptr %33, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %34) #6
  store i32 9, ptr %34, align 4, !tbaa !9
  %326 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %33, ptr noundef nonnull align 4 dereferenceable(4) %34, i1 noundef zeroext true)
          to label %327 unwind label %388

327:                                              ; preds = %324
  %328 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %329 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %328) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %326, ptr noundef %329, ptr noundef nonnull @.str.28, i32 noundef 667, ptr noundef nonnull @.str.132)
          to label %330 unwind label %388

330:                                              ; preds = %327
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %34) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %33) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %35) #6
  %331 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 3)
  store i64 %331, ptr %35, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %36) #6
  store i32 4096, ptr %36, align 4, !tbaa !9
  %332 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %35, ptr noundef nonnull align 4 dereferenceable(4) %36, i1 noundef zeroext true)
          to label %333 unwind label %390

333:                                              ; preds = %330
  %334 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %335 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %334) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %332, ptr noundef %335, ptr noundef nonnull @.str.28, i32 noundef 668, ptr noundef nonnull @.str.133)
          to label %336 unwind label %390

336:                                              ; preds = %333
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %36) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %35) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %37) #6
  %337 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 4)
  store i64 %337, ptr %37, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %38) #6
  store i32 32, ptr %38, align 4, !tbaa !9
  %338 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %37, ptr noundef nonnull align 4 dereferenceable(4) %38, i1 noundef zeroext true)
          to label %339 unwind label %392

339:                                              ; preds = %336
  %340 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %341 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %340) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %338, ptr noundef %341, ptr noundef nonnull @.str.28, i32 noundef 669, ptr noundef nonnull @.str.134)
          to label %342 unwind label %392

342:                                              ; preds = %339
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %38) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %37) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %39) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %40) #6
  %343 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %344 unwind label %394

344:                                              ; preds = %342
  store ptr %343, ptr %40, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %39, ptr noundef nonnull align 1 dereferenceable(1) %40, i64 noundef 9, i64 noundef 9, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %345 unwind label %394

345:                                              ; preds = %344
  %346 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %14, ptr noundef nonnull align 8 dereferenceable(120) %39)
          to label %347 unwind label %394

347:                                              ; preds = %345
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %40) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %39) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %41) #6
  %348 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 0)
  store i64 %348, ptr %41, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %42) #6
  store i32 32, ptr %42, align 4, !tbaa !9
  %349 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %41, ptr noundef nonnull align 4 dereferenceable(4) %42, i1 noundef zeroext true)
          to label %350 unwind label %396

350:                                              ; preds = %347
  %351 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %352 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %351) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %349, ptr noundef %352, ptr noundef nonnull @.str.28, i32 noundef 673, ptr noundef nonnull @.str.135)
          to label %353 unwind label %396

353:                                              ; preds = %350
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %42) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %41) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %43) #6
  %354 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 1)
  store i64 %354, ptr %43, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %44) #6
  store i32 4096, ptr %44, align 4, !tbaa !9
  %355 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %43, ptr noundef nonnull align 4 dereferenceable(4) %44, i1 noundef zeroext true)
          to label %356 unwind label %398

356:                                              ; preds = %353
  %357 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %358 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %357) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %355, ptr noundef %358, ptr noundef nonnull @.str.28, i32 noundef 674, ptr noundef nonnull @.str.136)
          to label %359 unwind label %398

359:                                              ; preds = %356
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %44) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %43) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %45) #6
  %360 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 2)
  store i64 %360, ptr %45, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %46) #6
  store i32 9, ptr %46, align 4, !tbaa !9
  %361 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %45, ptr noundef nonnull align 4 dereferenceable(4) %46, i1 noundef zeroext true)
          to label %362 unwind label %400

362:                                              ; preds = %359
  %363 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %364 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %363) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %361, ptr noundef %364, ptr noundef nonnull @.str.28, i32 noundef 675, ptr noundef nonnull @.str.137)
          to label %365 unwind label %400

365:                                              ; preds = %362
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %46) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %45) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %47) #6
  %366 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 3)
  store i64 %366, ptr %47, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %48) #6
  store i32 9, ptr %48, align 4, !tbaa !9
  %367 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %47, ptr noundef nonnull align 4 dereferenceable(4) %48, i1 noundef zeroext true)
          to label %368 unwind label %402

368:                                              ; preds = %365
  %369 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %370 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %369) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %367, ptr noundef %370, ptr noundef nonnull @.str.28, i32 noundef 676, ptr noundef nonnull @.str.138)
          to label %371 unwind label %402

371:                                              ; preds = %368
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %48) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %47) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %49) #6
  %372 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 4)
  store i64 %372, ptr %49, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %50) #6
  store i32 16, ptr %50, align 4, !tbaa !9
  %373 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %49, ptr noundef nonnull align 4 dereferenceable(4) %50, i1 noundef zeroext true)
          to label %374 unwind label %404

374:                                              ; preds = %371
  %375 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %376 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %375) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %373, ptr noundef %376, ptr noundef nonnull @.str.28, i32 noundef 677, ptr noundef nonnull @.str.139)
          to label %377 unwind label %404

377:                                              ; preds = %374
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %50) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %49) #6
  br label %.preheader300

.preheader300:                                    ; preds = %377, %409
  %indvars.iv372 = phi i64 [ 0, %377 ], [ %indvars.iv.next373, %409 ]
  %378 = trunc nuw nsw i64 %indvars.iv372 to i32
  %.pre421 = trunc nuw nsw i64 %indvars.iv372 to i32
  br label %.preheader299

379:                                              ; preds = %409
  invoke void @_ZN5Eigen6TensorIfLi4ELi0ElE6resizeIJiiiEEEvlDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 32, i32 noundef 16, i32 noundef 16, i32 noundef 32)
          to label %517 unwind label %380

380:                                              ; preds = %725, %589, %517, %379, %307, %169
  %381 = landingpad { ptr, i32 }
          cleanup
  br label %932

382:                                              ; preds = %310, %309
  %383 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %28) #6
  br label %932

384:                                              ; preds = %315, %312
  %385 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %30) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %29) #6
  br label %932

386:                                              ; preds = %321, %318
  %387 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %32) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #6
  br label %932

388:                                              ; preds = %327, %324
  %389 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %34) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %33) #6
  br label %932

390:                                              ; preds = %333, %330
  %391 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %36) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %35) #6
  br label %932

392:                                              ; preds = %339, %336
  %393 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %38) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %37) #6
  br label %932

394:                                              ; preds = %345, %344, %342
  %395 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %40) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %39) #6
  br label %932

396:                                              ; preds = %350, %347
  %397 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %42) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %41) #6
  br label %932

398:                                              ; preds = %356, %353
  %399 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %44) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %43) #6
  br label %932

400:                                              ; preds = %362, %359
  %401 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %46) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %45) #6
  br label %932

402:                                              ; preds = %368, %365
  %403 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %48) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %47) #6
  br label %932

404:                                              ; preds = %374, %371
  %405 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %50) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %49) #6
  br label %932

.preheader299:                                    ; preds = %.preheader300, %410
  %indvars.iv368 = phi i64 [ 0, %.preheader300 ], [ %indvars.iv.next369, %410 ]
  %406 = add nsw i64 %indvars.iv368, -4
  %407 = trunc nuw nsw i64 %indvars.iv368 to i32
  %408 = trunc nuw nsw i64 %indvars.iv368 to i32
  br label %411

409:                                              ; preds = %410
  %indvars.iv.next373 = add nuw nsw i64 %indvars.iv372, 1
  %exitcond375.not = icmp eq i64 %indvars.iv.next373, 32
  br i1 %exitcond375.not, label %379, label %.preheader300, !llvm.loop !20

410:                                              ; preds = %420
  %indvars.iv.next369 = add nuw nsw i64 %indvars.iv368, 1
  %exitcond371.not = icmp eq i64 %indvars.iv.next369, 64
  br i1 %exitcond371.not, label %409, label %.preheader299, !llvm.loop !21

411:                                              ; preds = %.preheader299, %420
  %indvars.iv364 = phi i64 [ 0, %.preheader299 ], [ %indvars.iv.next365, %420 ]
  %412 = shl nuw nsw i64 %indvars.iv364, 6
  %413 = add nuw nsw i64 %412, %indvars.iv368
  %414 = trunc i64 %indvars.iv364 to i32
  %415 = add i32 %414, -4
  %416 = trunc nuw nsw i64 %413 to i32
  %417 = trunc nuw nsw i64 %indvars.iv364 to i32
  %418 = trunc nuw nsw i64 %indvars.iv364 to i32
  br label %.preheader298

.preheader298:                                    ; preds = %411, %427
  %.0260313 = phi i32 [ 0, %411 ], [ %428, %427 ]
  %419 = add nsw i32 %415, %.0260313
  br label %.preheader297

420:                                              ; preds = %427
  %indvars.iv.next365 = add nuw nsw i64 %indvars.iv364, 1
  %exitcond367.not = icmp eq i64 %indvars.iv.next365, 64
  br i1 %exitcond367.not, label %410, label %411, !llvm.loop !22

.preheader297:                                    ; preds = %.preheader298, %429
  %indvars.iv359 = phi i64 [ 0, %.preheader298 ], [ %indvars.iv.next360, %429 ]
  %421 = add nsw i64 %406, %indvars.iv359
  %422 = icmp slt i64 %421, 0
  %423 = trunc nsw i64 %421 to i32
  %424 = or i32 %419, %423
  %or.cond285 = icmp ugt i32 %424, 63
  %brmerge330 = or i1 %422, %or.cond285
  %425 = trunc nuw nsw i64 %indvars.iv359 to i32
  %426 = trunc nuw nsw i64 %indvars.iv359 to i32
  br label %430

427:                                              ; preds = %429
  %428 = add nuw nsw i32 %.0260313, 1
  %exitcond363.not = icmp eq i32 %428, 9
  br i1 %exitcond363.not, label %420, label %.preheader298, !llvm.loop !23

429:                                              ; preds = %516
  %indvars.iv.next360 = add nuw nsw i64 %indvars.iv359, 1
  %exitcond362.not = icmp eq i64 %indvars.iv.next360, 9
  br i1 %exitcond362.not, label %427, label %.preheader297, !llvm.loop !24

430:                                              ; preds = %.preheader297, %516
  %indvars.iv355 = phi i64 [ 0, %.preheader297 ], [ %indvars.iv.next356, %516 ]
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %51) #6
  store float 0.000000e+00, ptr %51, align 4, !tbaa !17
  br i1 %brmerge330, label %._crit_edge419, label %431

431:                                              ; preds = %430
  %432 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %indvars.iv355, i64 noundef %421, i32 noundef %419, i32 noundef %378)
          to label %433 unwind label %435

433:                                              ; preds = %431
  %434 = load float, ptr %432, align 4, !tbaa !17
  store float %434, ptr %51, align 4, !tbaa !17
  br label %._crit_edge419

435:                                              ; preds = %513, %511, %509, %507, %505, %503, %501, %499, %497, %495, %493, %491, %489, %487, %485, %483, %476, %473, %471, %469, %467, %465, %463, %460, %458, %456, %454, %452, %450, %448, %446, %444, %442, %._crit_edge419, %431
  %436 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %51) #6
  br label %932

._crit_edge419:                                   ; preds = %430, %433
  %.pre-phi422 = phi i32 [ %378, %433 ], [ %.pre421, %430 ]
  %437 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv355, i64 noundef %indvars.iv359, i32 noundef %.0260313, i32 noundef %416, i32 noundef %.pre-phi422)
          to label %438 unwind label %435

438:                                              ; preds = %._crit_edge419
  %439 = load float, ptr %437, align 4, !tbaa !17
  %440 = load float, ptr %51, align 4, !tbaa !17
  %441 = fcmp une float %439, %440
  br i1 %441, label %442, label %469

442:                                              ; preds = %438
  %443 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %444 unwind label %435

444:                                              ; preds = %442
  %445 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %443, i32 noundef %407)
          to label %446 unwind label %435

446:                                              ; preds = %444
  %447 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %445, ptr noundef nonnull @.str.61)
          to label %448 unwind label %435

448:                                              ; preds = %446
  %449 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %447, i32 noundef %417)
          to label %450 unwind label %435

450:                                              ; preds = %448
  %451 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %449, ptr noundef nonnull @.str.62)
          to label %452 unwind label %435

452:                                              ; preds = %450
  %453 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %451, i32 noundef %425)
          to label %454 unwind label %435

454:                                              ; preds = %452
  %455 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %453, ptr noundef nonnull @.str.63)
          to label %456 unwind label %435

456:                                              ; preds = %454
  %457 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %455, i32 noundef %.0260313)
          to label %458 unwind label %435

458:                                              ; preds = %456
  %459 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %457, ptr noundef nonnull @.str.64)
          to label %460 unwind label %435

460:                                              ; preds = %458
  %461 = trunc nuw nsw i64 %indvars.iv355 to i32
  %462 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %459, i32 noundef %461)
          to label %463 unwind label %435

463:                                              ; preds = %460
  %464 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %462, ptr noundef nonnull @.str.65)
          to label %465 unwind label %435

465:                                              ; preds = %463
  %466 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %464, i32 noundef %.pre-phi422)
          to label %467 unwind label %435

467:                                              ; preds = %465
  %468 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %466, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %469 unwind label %435

469:                                              ; preds = %467, %438
  %470 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv355, i64 noundef %indvars.iv359, i32 noundef %.0260313, i32 noundef %416, i32 noundef %.pre-phi422)
          to label %471 unwind label %435

471:                                              ; preds = %469
  %472 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %470, ptr noundef nonnull align 4 dereferenceable(4) %51, i1 noundef zeroext true)
          to label %473 unwind label %435

473:                                              ; preds = %471
  %474 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %475 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %474) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %472, ptr noundef %475, ptr noundef nonnull @.str.28, i32 noundef 694, ptr noundef nonnull @.str.128)
          to label %476 unwind label %435

476:                                              ; preds = %473
  %477 = trunc nuw nsw i64 %indvars.iv355 to i32
  %478 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv372, i64 noundef %413, i32 noundef %.0260313, i32 noundef %426, i32 noundef %477)
          to label %479 unwind label %435

479:                                              ; preds = %476
  %480 = load float, ptr %478, align 4, !tbaa !17
  %481 = load float, ptr %51, align 4, !tbaa !17
  %482 = fcmp une float %480, %481
  br i1 %482, label %483, label %509

483:                                              ; preds = %479
  %484 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %485 unwind label %435

485:                                              ; preds = %483
  %486 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %484, i32 noundef %408)
          to label %487 unwind label %435

487:                                              ; preds = %485
  %488 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %486, ptr noundef nonnull @.str.61)
          to label %489 unwind label %435

489:                                              ; preds = %487
  %490 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %488, i32 noundef %418)
          to label %491 unwind label %435

491:                                              ; preds = %489
  %492 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %490, ptr noundef nonnull @.str.62)
          to label %493 unwind label %435

493:                                              ; preds = %491
  %494 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %492, i32 noundef %426)
          to label %495 unwind label %435

495:                                              ; preds = %493
  %496 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %494, ptr noundef nonnull @.str.63)
          to label %497 unwind label %435

497:                                              ; preds = %495
  %498 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %496, i32 noundef %.0260313)
          to label %499 unwind label %435

499:                                              ; preds = %497
  %500 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %498, ptr noundef nonnull @.str.64)
          to label %501 unwind label %435

501:                                              ; preds = %499
  %502 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %500, i32 noundef %477)
          to label %503 unwind label %435

503:                                              ; preds = %501
  %504 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %502, ptr noundef nonnull @.str.65)
          to label %505 unwind label %435

505:                                              ; preds = %503
  %506 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %504, i32 noundef %.pre-phi422)
          to label %507 unwind label %435

507:                                              ; preds = %505
  %508 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %506, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %509 unwind label %435

509:                                              ; preds = %507, %479
  %510 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv372, i64 noundef %413, i32 noundef %.0260313, i32 noundef %426, i32 noundef %477)
          to label %511 unwind label %435

511:                                              ; preds = %509
  %512 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %510, ptr noundef nonnull align 4 dereferenceable(4) %51, i1 noundef zeroext true)
          to label %513 unwind label %435

513:                                              ; preds = %511
  %514 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %515 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %514) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %512, ptr noundef %515, ptr noundef nonnull @.str.28, i32 noundef 699, ptr noundef nonnull @.str.129)
          to label %516 unwind label %435

516:                                              ; preds = %513
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %51) #6
  %indvars.iv.next356 = add nuw nsw i64 %indvars.iv355, 1
  %exitcond358.not = icmp eq i64 %indvars.iv.next356, 16
  br i1 %exitcond358.not, label %429, label %430, !llvm.loop !25

517:                                              ; preds = %379
  %518 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %519 unwind label %380

519:                                              ; preds = %517
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %52) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %52, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 7, i64 noundef 7, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %520 unwind label %590

520:                                              ; preds = %519
  %521 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %2, ptr noundef nonnull align 8 dereferenceable(120) %52)
          to label %522 unwind label %590

522:                                              ; preds = %520
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %52) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %53) #6
  %523 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 0)
  store i64 %523, ptr %53, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %54) #6
  store i32 32, ptr %54, align 4, !tbaa !9
  %524 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %53, ptr noundef nonnull align 4 dereferenceable(4) %54, i1 noundef zeroext true)
          to label %525 unwind label %592

525:                                              ; preds = %522
  %526 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %527 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %526) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %524, ptr noundef %527, ptr noundef nonnull @.str.28, i32 noundef 711, ptr noundef nonnull @.str.140)
          to label %528 unwind label %592

528:                                              ; preds = %525
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %53) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %55) #6
  %529 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 1)
  store i64 %529, ptr %55, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %56) #6
  store i32 7, ptr %56, align 4, !tbaa !9
  %530 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %55, ptr noundef nonnull align 4 dereferenceable(4) %56, i1 noundef zeroext true)
          to label %531 unwind label %594

531:                                              ; preds = %528
  %532 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %533 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %532) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %530, ptr noundef %533, ptr noundef nonnull @.str.28, i32 noundef 712, ptr noundef nonnull @.str.141)
          to label %534 unwind label %594

534:                                              ; preds = %531
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %56) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %55) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %57) #6
  %535 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 2)
  store i64 %535, ptr %57, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %58) #6
  store i32 7, ptr %58, align 4, !tbaa !9
  %536 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %57, ptr noundef nonnull align 4 dereferenceable(4) %58, i1 noundef zeroext true)
          to label %537 unwind label %596

537:                                              ; preds = %534
  %538 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %539 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %538) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %536, ptr noundef %539, ptr noundef nonnull @.str.28, i32 noundef 713, ptr noundef nonnull @.str.142)
          to label %540 unwind label %596

540:                                              ; preds = %537
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %58) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %57) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %59) #6
  %541 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 3)
  store i64 %541, ptr %59, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %60) #6
  store i32 256, ptr %60, align 4, !tbaa !9
  %542 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %59, ptr noundef nonnull align 4 dereferenceable(4) %60, i1 noundef zeroext true)
          to label %543 unwind label %598

543:                                              ; preds = %540
  %544 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %545 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %544) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %542, ptr noundef %545, ptr noundef nonnull @.str.28, i32 noundef 714, ptr noundef nonnull @.str.143)
          to label %546 unwind label %598

546:                                              ; preds = %543
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %60) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %59) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %61) #6
  %547 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 4)
  store i64 %547, ptr %61, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %62) #6
  store i32 32, ptr %62, align 4, !tbaa !9
  %548 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %61, ptr noundef nonnull align 4 dereferenceable(4) %62, i1 noundef zeroext true)
          to label %549 unwind label %600

549:                                              ; preds = %546
  %550 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %551 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %550) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %548, ptr noundef %551, ptr noundef nonnull @.str.28, i32 noundef 715, ptr noundef nonnull @.str.134)
          to label %552 unwind label %600

552:                                              ; preds = %549
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %62) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %61) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %63) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %64) #6
  %553 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %554 unwind label %602

554:                                              ; preds = %552
  store ptr %553, ptr %64, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %63, ptr noundef nonnull align 1 dereferenceable(1) %64, i64 noundef 7, i64 noundef 7, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %555 unwind label %602

555:                                              ; preds = %554
  %556 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %14, ptr noundef nonnull align 8 dereferenceable(120) %63)
          to label %557 unwind label %602

557:                                              ; preds = %555
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %64) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %63) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %65) #6
  %558 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 0)
  store i64 %558, ptr %65, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %66) #6
  store i32 32, ptr %66, align 4, !tbaa !9
  %559 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %65, ptr noundef nonnull align 4 dereferenceable(4) %66, i1 noundef zeroext true)
          to label %560 unwind label %604

560:                                              ; preds = %557
  %561 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %562 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %561) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %559, ptr noundef %562, ptr noundef nonnull @.str.28, i32 noundef 719, ptr noundef nonnull @.str.135)
          to label %563 unwind label %604

563:                                              ; preds = %560
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %66) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %65) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %67) #6
  %564 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 1)
  store i64 %564, ptr %67, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %68) #6
  store i32 256, ptr %68, align 4, !tbaa !9
  %565 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %67, ptr noundef nonnull align 4 dereferenceable(4) %68, i1 noundef zeroext true)
          to label %566 unwind label %606

566:                                              ; preds = %563
  %567 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %568 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %567) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %565, ptr noundef %568, ptr noundef nonnull @.str.28, i32 noundef 720, ptr noundef nonnull @.str.144)
          to label %569 unwind label %606

569:                                              ; preds = %566
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %68) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %67) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %69) #6
  %570 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 2)
  store i64 %570, ptr %69, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %70) #6
  store i32 7, ptr %70, align 4, !tbaa !9
  %571 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %69, ptr noundef nonnull align 4 dereferenceable(4) %70, i1 noundef zeroext true)
          to label %572 unwind label %608

572:                                              ; preds = %569
  %573 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %574 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %573) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %571, ptr noundef %574, ptr noundef nonnull @.str.28, i32 noundef 721, ptr noundef nonnull @.str.145)
          to label %575 unwind label %608

575:                                              ; preds = %572
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %70) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %69) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %71) #6
  %576 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 3)
  store i64 %576, ptr %71, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %72) #6
  store i32 7, ptr %72, align 4, !tbaa !9
  %577 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %71, ptr noundef nonnull align 4 dereferenceable(4) %72, i1 noundef zeroext true)
          to label %578 unwind label %610

578:                                              ; preds = %575
  %579 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %580 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %579) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %577, ptr noundef %580, ptr noundef nonnull @.str.28, i32 noundef 722, ptr noundef nonnull @.str.146)
          to label %581 unwind label %610

581:                                              ; preds = %578
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %72) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %71) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %73) #6
  %582 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 4)
  store i64 %582, ptr %73, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %74) #6
  store i32 32, ptr %74, align 4, !tbaa !9
  %583 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %73, ptr noundef nonnull align 4 dereferenceable(4) %74, i1 noundef zeroext true)
          to label %584 unwind label %612

584:                                              ; preds = %581
  %585 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %586 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %585) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %583, ptr noundef %586, ptr noundef nonnull @.str.28, i32 noundef 723, ptr noundef nonnull @.str.147)
          to label %587 unwind label %612

587:                                              ; preds = %584
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %74) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %73) #6
  br label %.preheader296

.preheader296:                                    ; preds = %587, %617
  %indvars.iv393 = phi i64 [ 0, %587 ], [ %indvars.iv.next394, %617 ]
  %588 = trunc nuw nsw i64 %indvars.iv393 to i32
  %.pre423 = trunc nuw nsw i64 %indvars.iv393 to i32
  br label %.preheader295

589:                                              ; preds = %617
  invoke void @_ZN5Eigen6TensorIfLi4ELi0ElE6resizeIJiiiEEEvlDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef 64, i32 noundef 13, i32 noundef 13, i32 noundef 32)
          to label %725 unwind label %380

590:                                              ; preds = %520, %519
  %591 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %52) #6
  br label %932

592:                                              ; preds = %525, %522
  %593 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %53) #6
  br label %932

594:                                              ; preds = %531, %528
  %595 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %56) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %55) #6
  br label %932

596:                                              ; preds = %537, %534
  %597 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %58) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %57) #6
  br label %932

598:                                              ; preds = %543, %540
  %599 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %60) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %59) #6
  br label %932

600:                                              ; preds = %549, %546
  %601 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %62) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %61) #6
  br label %932

602:                                              ; preds = %555, %554, %552
  %603 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %64) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %63) #6
  br label %932

604:                                              ; preds = %560, %557
  %605 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %66) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %65) #6
  br label %932

606:                                              ; preds = %566, %563
  %607 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %68) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %67) #6
  br label %932

608:                                              ; preds = %572, %569
  %609 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %70) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %69) #6
  br label %932

610:                                              ; preds = %578, %575
  %611 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %72) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %71) #6
  br label %932

612:                                              ; preds = %584, %581
  %613 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %74) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %73) #6
  br label %932

.preheader295:                                    ; preds = %.preheader296, %618
  %indvars.iv389 = phi i64 [ 0, %.preheader296 ], [ %indvars.iv.next390, %618 ]
  %614 = add nsw i64 %indvars.iv389, -3
  %615 = trunc nuw nsw i64 %indvars.iv389 to i32
  %616 = trunc nuw nsw i64 %indvars.iv389 to i32
  br label %619

617:                                              ; preds = %618
  %indvars.iv.next394 = add nuw nsw i64 %indvars.iv393, 1
  %exitcond396.not = icmp eq i64 %indvars.iv.next394, 32
  br i1 %exitcond396.not, label %589, label %.preheader296, !llvm.loop !26

618:                                              ; preds = %628
  %indvars.iv.next390 = add nuw nsw i64 %indvars.iv389, 1
  %exitcond392.not = icmp eq i64 %indvars.iv.next390, 16
  br i1 %exitcond392.not, label %617, label %.preheader295, !llvm.loop !27

619:                                              ; preds = %.preheader295, %628
  %indvars.iv385 = phi i64 [ 0, %.preheader295 ], [ %indvars.iv.next386, %628 ]
  %620 = shl nuw nsw i64 %indvars.iv385, 4
  %621 = add nuw nsw i64 %620, %indvars.iv389
  %622 = trunc i64 %indvars.iv385 to i32
  %623 = add i32 %622, -3
  %624 = trunc nuw nsw i64 %621 to i32
  %625 = trunc nuw nsw i64 %indvars.iv385 to i32
  %626 = trunc nuw nsw i64 %indvars.iv385 to i32
  br label %.preheader294

.preheader294:                                    ; preds = %619, %635
  %.0249319 = phi i32 [ 0, %619 ], [ %636, %635 ]
  %627 = add nsw i32 %623, %.0249319
  br label %.preheader293

628:                                              ; preds = %635
  %indvars.iv.next386 = add nuw nsw i64 %indvars.iv385, 1
  %exitcond388.not = icmp eq i64 %indvars.iv.next386, 16
  br i1 %exitcond388.not, label %618, label %619, !llvm.loop !28

.preheader293:                                    ; preds = %.preheader294, %637
  %indvars.iv380 = phi i64 [ 0, %.preheader294 ], [ %indvars.iv.next381, %637 ]
  %629 = add nsw i64 %614, %indvars.iv380
  %630 = icmp slt i64 %629, 0
  %631 = trunc nsw i64 %629 to i32
  %632 = or i32 %627, %631
  %or.cond287 = icmp ugt i32 %632, 15
  %brmerge332 = or i1 %630, %or.cond287
  %633 = trunc nuw nsw i64 %indvars.iv380 to i32
  %634 = trunc nuw nsw i64 %indvars.iv380 to i32
  br label %638

635:                                              ; preds = %637
  %636 = add nuw nsw i32 %.0249319, 1
  %exitcond384.not = icmp eq i32 %636, 7
  br i1 %exitcond384.not, label %628, label %.preheader294, !llvm.loop !29

637:                                              ; preds = %724
  %indvars.iv.next381 = add nuw nsw i64 %indvars.iv380, 1
  %exitcond383.not = icmp eq i64 %indvars.iv.next381, 7
  br i1 %exitcond383.not, label %635, label %.preheader293, !llvm.loop !30

638:                                              ; preds = %.preheader293, %724
  %indvars.iv376 = phi i64 [ 0, %.preheader293 ], [ %indvars.iv.next377, %724 ]
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %75) #6
  store float 0.000000e+00, ptr %75, align 4, !tbaa !17
  br i1 %brmerge332, label %._crit_edge418, label %639

639:                                              ; preds = %638
  %640 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %indvars.iv376, i64 noundef %629, i32 noundef %627, i32 noundef %588)
          to label %641 unwind label %643

641:                                              ; preds = %639
  %642 = load float, ptr %640, align 4, !tbaa !17
  store float %642, ptr %75, align 4, !tbaa !17
  br label %._crit_edge418

643:                                              ; preds = %721, %719, %717, %715, %713, %711, %709, %707, %705, %703, %701, %699, %697, %695, %693, %691, %684, %681, %679, %677, %675, %673, %671, %668, %666, %664, %662, %660, %658, %656, %654, %652, %650, %._crit_edge418, %639
  %644 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %75) #6
  br label %932

._crit_edge418:                                   ; preds = %638, %641
  %.pre-phi424 = phi i32 [ %588, %641 ], [ %.pre423, %638 ]
  %645 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv376, i64 noundef %indvars.iv380, i32 noundef %.0249319, i32 noundef %624, i32 noundef %.pre-phi424)
          to label %646 unwind label %643

646:                                              ; preds = %._crit_edge418
  %647 = load float, ptr %645, align 4, !tbaa !17
  %648 = load float, ptr %75, align 4, !tbaa !17
  %649 = fcmp une float %647, %648
  br i1 %649, label %650, label %677

650:                                              ; preds = %646
  %651 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %652 unwind label %643

652:                                              ; preds = %650
  %653 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %651, i32 noundef %615)
          to label %654 unwind label %643

654:                                              ; preds = %652
  %655 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %653, ptr noundef nonnull @.str.61)
          to label %656 unwind label %643

656:                                              ; preds = %654
  %657 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %655, i32 noundef %625)
          to label %658 unwind label %643

658:                                              ; preds = %656
  %659 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %657, ptr noundef nonnull @.str.62)
          to label %660 unwind label %643

660:                                              ; preds = %658
  %661 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %659, i32 noundef %633)
          to label %662 unwind label %643

662:                                              ; preds = %660
  %663 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %661, ptr noundef nonnull @.str.63)
          to label %664 unwind label %643

664:                                              ; preds = %662
  %665 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %663, i32 noundef %.0249319)
          to label %666 unwind label %643

666:                                              ; preds = %664
  %667 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %665, ptr noundef nonnull @.str.64)
          to label %668 unwind label %643

668:                                              ; preds = %666
  %669 = trunc nuw nsw i64 %indvars.iv376 to i32
  %670 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %667, i32 noundef %669)
          to label %671 unwind label %643

671:                                              ; preds = %668
  %672 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %670, ptr noundef nonnull @.str.65)
          to label %673 unwind label %643

673:                                              ; preds = %671
  %674 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %672, i32 noundef %.pre-phi424)
          to label %675 unwind label %643

675:                                              ; preds = %673
  %676 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %674, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %677 unwind label %643

677:                                              ; preds = %675, %646
  %678 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv376, i64 noundef %indvars.iv380, i32 noundef %.0249319, i32 noundef %624, i32 noundef %.pre-phi424)
          to label %679 unwind label %643

679:                                              ; preds = %677
  %680 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %678, ptr noundef nonnull align 4 dereferenceable(4) %75, i1 noundef zeroext true)
          to label %681 unwind label %643

681:                                              ; preds = %679
  %682 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %683 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %682) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %680, ptr noundef %683, ptr noundef nonnull @.str.28, i32 noundef 740, ptr noundef nonnull @.str.128)
          to label %684 unwind label %643

684:                                              ; preds = %681
  %685 = trunc nuw nsw i64 %indvars.iv376 to i32
  %686 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv393, i64 noundef %621, i32 noundef %.0249319, i32 noundef %634, i32 noundef %685)
          to label %687 unwind label %643

687:                                              ; preds = %684
  %688 = load float, ptr %686, align 4, !tbaa !17
  %689 = load float, ptr %75, align 4, !tbaa !17
  %690 = fcmp une float %688, %689
  br i1 %690, label %691, label %717

691:                                              ; preds = %687
  %692 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %693 unwind label %643

693:                                              ; preds = %691
  %694 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %692, i32 noundef %616)
          to label %695 unwind label %643

695:                                              ; preds = %693
  %696 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %694, ptr noundef nonnull @.str.61)
          to label %697 unwind label %643

697:                                              ; preds = %695
  %698 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %696, i32 noundef %626)
          to label %699 unwind label %643

699:                                              ; preds = %697
  %700 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %698, ptr noundef nonnull @.str.62)
          to label %701 unwind label %643

701:                                              ; preds = %699
  %702 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %700, i32 noundef %634)
          to label %703 unwind label %643

703:                                              ; preds = %701
  %704 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %702, ptr noundef nonnull @.str.63)
          to label %705 unwind label %643

705:                                              ; preds = %703
  %706 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %704, i32 noundef %.0249319)
          to label %707 unwind label %643

707:                                              ; preds = %705
  %708 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %706, ptr noundef nonnull @.str.64)
          to label %709 unwind label %643

709:                                              ; preds = %707
  %710 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %708, i32 noundef %685)
          to label %711 unwind label %643

711:                                              ; preds = %709
  %712 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %710, ptr noundef nonnull @.str.65)
          to label %713 unwind label %643

713:                                              ; preds = %711
  %714 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %712, i32 noundef %.pre-phi424)
          to label %715 unwind label %643

715:                                              ; preds = %713
  %716 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %714, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %717 unwind label %643

717:                                              ; preds = %715, %687
  %718 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv393, i64 noundef %621, i32 noundef %.0249319, i32 noundef %634, i32 noundef %685)
          to label %719 unwind label %643

719:                                              ; preds = %717
  %720 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %718, ptr noundef nonnull align 4 dereferenceable(4) %75, i1 noundef zeroext true)
          to label %721 unwind label %643

721:                                              ; preds = %719
  %722 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %723 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %722) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %720, ptr noundef %723, ptr noundef nonnull @.str.28, i32 noundef 745, ptr noundef nonnull @.str.129)
          to label %724 unwind label %643

724:                                              ; preds = %721
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %75) #6
  %indvars.iv.next377 = add nuw nsw i64 %indvars.iv376, 1
  %exitcond379.not = icmp eq i64 %indvars.iv.next377, 32
  br i1 %exitcond379.not, label %637, label %638, !llvm.loop !31

725:                                              ; preds = %589
  %726 = invoke noundef nonnull align 8 dereferenceable(40) ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE9setRandomEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %727 unwind label %380

727:                                              ; preds = %725
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %76) #6
  invoke void @_ZNK5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp") align 8 %76, ptr noundef nonnull align 1 dereferenceable(1) %1, i64 noundef 3, i64 noundef 3, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %728 unwind label %798

728:                                              ; preds = %727
  %729 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS0_IfLi4ELi0ElEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %2, ptr noundef nonnull align 8 dereferenceable(120) %76)
          to label %730 unwind label %798

730:                                              ; preds = %728
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %76) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %77) #6
  %731 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 0)
  store i64 %731, ptr %77, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %78) #6
  store i32 64, ptr %78, align 4, !tbaa !9
  %732 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %77, ptr noundef nonnull align 4 dereferenceable(4) %78, i1 noundef zeroext true)
          to label %733 unwind label %800

733:                                              ; preds = %730
  %734 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %735 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %734) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %732, ptr noundef %735, ptr noundef nonnull @.str.28, i32 noundef 757, ptr noundef nonnull @.str.148)
          to label %736 unwind label %800

736:                                              ; preds = %733
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %78) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %77) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %79) #6
  %737 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 1)
  store i64 %737, ptr %79, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %80) #6
  store i32 3, ptr %80, align 4, !tbaa !9
  %738 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %79, ptr noundef nonnull align 4 dereferenceable(4) %80, i1 noundef zeroext true)
          to label %739 unwind label %802

739:                                              ; preds = %736
  %740 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %741 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %740) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %738, ptr noundef %741, ptr noundef nonnull @.str.28, i32 noundef 758, ptr noundef nonnull @.str.149)
          to label %742 unwind label %802

742:                                              ; preds = %739
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %80) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %79) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %81) #6
  %743 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 2)
  store i64 %743, ptr %81, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %82) #6
  store i32 3, ptr %82, align 4, !tbaa !9
  %744 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %81, ptr noundef nonnull align 4 dereferenceable(4) %82, i1 noundef zeroext true)
          to label %745 unwind label %804

745:                                              ; preds = %742
  %746 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %747 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %746) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %744, ptr noundef %747, ptr noundef nonnull @.str.28, i32 noundef 759, ptr noundef nonnull @.str.150)
          to label %748 unwind label %804

748:                                              ; preds = %745
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %82) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %81) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %83) #6
  %749 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 3)
  store i64 %749, ptr %83, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %84) #6
  store i32 169, ptr %84, align 4, !tbaa !9
  %750 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %83, ptr noundef nonnull align 4 dereferenceable(4) %84, i1 noundef zeroext true)
          to label %751 unwind label %806

751:                                              ; preds = %748
  %752 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %753 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %752) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %750, ptr noundef %753, ptr noundef nonnull @.str.28, i32 noundef 760, ptr noundef nonnull @.str.151)
          to label %754 unwind label %806

754:                                              ; preds = %751
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %84) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %83) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %85) #6
  %755 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi0ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef 4)
  store i64 %755, ptr %85, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %86) #6
  store i32 32, ptr %86, align 4, !tbaa !9
  %756 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %85, ptr noundef nonnull align 4 dereferenceable(4) %86, i1 noundef zeroext true)
          to label %757 unwind label %808

757:                                              ; preds = %754
  %758 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %759 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %758) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %756, ptr noundef %759, ptr noundef nonnull @.str.28, i32 noundef 761, ptr noundef nonnull @.str.134)
          to label %760 unwind label %808

760:                                              ; preds = %757
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %86) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %85) #6
  call void @llvm.lifetime.start.p0(i64 120, ptr nonnull %87) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %88) #6
  %761 = invoke ptr @_ZN5Eigen10TensorBaseINS_6TensorIfLi4ELi0ElEELi1EE11swap_layoutEv(ptr noundef nonnull align 1 dereferenceable(1) %1)
          to label %762 unwind label %810

762:                                              ; preds = %760
  store ptr %761, ptr %88, align 8
  invoke void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind nonnull writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8 %87, ptr noundef nonnull align 1 dereferenceable(1) %88, i64 noundef 3, i64 noundef 3, i64 noundef 1, i64 noundef 1, i64 noundef 1, i64 noundef 1, i32 noundef 2, float noundef 0.000000e+00)
          to label %763 unwind label %810

763:                                              ; preds = %762
  %764 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48) %14, ptr noundef nonnull align 8 dereferenceable(120) %87)
          to label %765 unwind label %810

765:                                              ; preds = %763
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %88) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %87) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %89) #6
  %766 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 0)
  store i64 %766, ptr %89, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %90) #6
  store i32 32, ptr %90, align 4, !tbaa !9
  %767 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %89, ptr noundef nonnull align 4 dereferenceable(4) %90, i1 noundef zeroext true)
          to label %768 unwind label %812

768:                                              ; preds = %765
  %769 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %770 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %769) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %767, ptr noundef %770, ptr noundef nonnull @.str.28, i32 noundef 765, ptr noundef nonnull @.str.135)
          to label %771 unwind label %812

771:                                              ; preds = %768
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %90) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %89) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %91) #6
  %772 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 1)
  store i64 %772, ptr %91, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %92) #6
  store i32 169, ptr %92, align 4, !tbaa !9
  %773 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %91, ptr noundef nonnull align 4 dereferenceable(4) %92, i1 noundef zeroext true)
          to label %774 unwind label %814

774:                                              ; preds = %771
  %775 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %776 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %775) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %773, ptr noundef %776, ptr noundef nonnull @.str.28, i32 noundef 766, ptr noundef nonnull @.str.152)
          to label %777 unwind label %814

777:                                              ; preds = %774
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %92) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %91) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %93) #6
  %778 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 2)
  store i64 %778, ptr %93, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %94) #6
  store i32 3, ptr %94, align 4, !tbaa !9
  %779 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %93, ptr noundef nonnull align 4 dereferenceable(4) %94, i1 noundef zeroext true)
          to label %780 unwind label %816

780:                                              ; preds = %777
  %781 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %782 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %781) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %779, ptr noundef %782, ptr noundef nonnull @.str.28, i32 noundef 767, ptr noundef nonnull @.str.153)
          to label %783 unwind label %816

783:                                              ; preds = %780
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %94) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %93) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %95) #6
  %784 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 3)
  store i64 %784, ptr %95, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %96) #6
  store i32 3, ptr %96, align 4, !tbaa !9
  %785 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %95, ptr noundef nonnull align 4 dereferenceable(4) %96, i1 noundef zeroext true)
          to label %786 unwind label %818

786:                                              ; preds = %783
  %787 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %788 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %787) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %785, ptr noundef %788, ptr noundef nonnull @.str.28, i32 noundef 768, ptr noundef nonnull @.str.154)
          to label %789 unwind label %818

789:                                              ; preds = %786
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %96) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %95) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %97) #6
  %790 = call noundef i64 @_ZNK5Eigen6TensorIfLi5ELi1ElE9dimensionEm(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef 4)
  store i64 %790, ptr %97, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %98) #6
  store i32 64, ptr %98, align 4, !tbaa !9
  %791 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIliEEbRKT_RKT0_b(ptr noundef nonnull align 8 dereferenceable(8) %97, ptr noundef nonnull align 4 dereferenceable(4) %98, i1 noundef zeroext true)
          to label %792 unwind label %820

792:                                              ; preds = %789
  %793 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %794 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %793) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %791, ptr noundef %794, ptr noundef nonnull @.str.28, i32 noundef 769, ptr noundef nonnull @.str.155)
          to label %795 unwind label %820

795:                                              ; preds = %792
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %98) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %97) #6
  br label %.preheader292

.preheader292:                                    ; preds = %795, %825
  %indvars.iv414 = phi i64 [ 0, %795 ], [ %indvars.iv.next415, %825 ]
  %796 = trunc nuw nsw i64 %indvars.iv414 to i32
  %.pre425 = trunc nuw nsw i64 %indvars.iv414 to i32
  br label %.preheader291

797:                                              ; preds = %825
  call void @_ZN5Eigen6TensorIfLi5ELi1ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %14) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %14) #6
  call void @_ZN5Eigen6TensorIfLi5ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %2) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %2) #6
  call void @_ZN5Eigen6TensorIfLi4ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %1) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %1) #6
  ret void

798:                                              ; preds = %728, %727
  %799 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %76) #6
  br label %932

800:                                              ; preds = %733, %730
  %801 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %78) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %77) #6
  br label %932

802:                                              ; preds = %739, %736
  %803 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %80) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %79) #6
  br label %932

804:                                              ; preds = %745, %742
  %805 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %82) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %81) #6
  br label %932

806:                                              ; preds = %751, %748
  %807 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %84) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %83) #6
  br label %932

808:                                              ; preds = %757, %754
  %809 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %86) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %85) #6
  br label %932

810:                                              ; preds = %763, %762, %760
  %811 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %88) #6
  call void @llvm.lifetime.end.p0(i64 120, ptr nonnull %87) #6
  br label %932

812:                                              ; preds = %768, %765
  %813 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %90) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %89) #6
  br label %932

814:                                              ; preds = %774, %771
  %815 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %92) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %91) #6
  br label %932

816:                                              ; preds = %780, %777
  %817 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %94) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %93) #6
  br label %932

818:                                              ; preds = %786, %783
  %819 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %96) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %95) #6
  br label %932

820:                                              ; preds = %792, %789
  %821 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %98) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %97) #6
  br label %932

.preheader291:                                    ; preds = %.preheader292, %826
  %indvars.iv410 = phi i64 [ 0, %.preheader292 ], [ %indvars.iv.next411, %826 ]
  %822 = add nsw i64 %indvars.iv410, -1
  %823 = trunc nuw nsw i64 %indvars.iv410 to i32
  %824 = trunc nuw nsw i64 %indvars.iv410 to i32
  br label %827

825:                                              ; preds = %826
  %indvars.iv.next415 = add nuw nsw i64 %indvars.iv414, 1
  %exitcond417.not = icmp eq i64 %indvars.iv.next415, 32
  br i1 %exitcond417.not, label %797, label %.preheader292, !llvm.loop !32

826:                                              ; preds = %837
  %indvars.iv.next411 = add nuw nsw i64 %indvars.iv410, 1
  %exitcond413.not = icmp eq i64 %indvars.iv.next411, 13
  br i1 %exitcond413.not, label %825, label %.preheader291, !llvm.loop !33

827:                                              ; preds = %.preheader291, %837
  %indvars.iv406 = phi i64 [ 0, %.preheader291 ], [ %indvars.iv.next407, %837 ]
  %828 = mul nuw nsw i64 %indvars.iv406, 13
  %829 = add nuw nsw i64 %828, %indvars.iv410
  %830 = trunc i64 %indvars.iv406 to i32
  %831 = add i32 %830, -1
  %832 = trunc nuw nsw i64 %829 to i32
  %833 = trunc nuw nsw i64 %indvars.iv406 to i32
  %834 = trunc nuw nsw i64 %indvars.iv406 to i32
  br label %.preheader290

.preheader290:                                    ; preds = %827, %842
  %.0242325 = phi i32 [ 0, %827 ], [ %843, %842 ]
  %835 = add nsw i32 %831, %.0242325
  %836 = icmp ugt i32 %835, 12
  br label %.preheader

837:                                              ; preds = %842
  %indvars.iv.next407 = add nuw nsw i64 %indvars.iv406, 1
  %exitcond409.not = icmp eq i64 %indvars.iv.next407, 13
  br i1 %exitcond409.not, label %826, label %827, !llvm.loop !34

.preheader:                                       ; preds = %.preheader290, %844
  %indvars.iv401 = phi i64 [ 0, %.preheader290 ], [ %indvars.iv.next402, %844 ]
  %838 = add nsw i64 %822, %indvars.iv401
  %839 = icmp ugt i64 %838, 12
  %or.cond289.not336 = or i1 %836, %839
  %840 = trunc nuw nsw i64 %indvars.iv401 to i32
  %841 = trunc nuw nsw i64 %indvars.iv401 to i32
  br label %845

842:                                              ; preds = %844
  %843 = add nuw nsw i32 %.0242325, 1
  %exitcond405.not = icmp eq i32 %843, 3
  br i1 %exitcond405.not, label %837, label %.preheader290, !llvm.loop !35

844:                                              ; preds = %931
  %indvars.iv.next402 = add nuw nsw i64 %indvars.iv401, 1
  %exitcond404.not = icmp eq i64 %indvars.iv.next402, 3
  br i1 %exitcond404.not, label %842, label %.preheader, !llvm.loop !36

845:                                              ; preds = %.preheader, %931
  %indvars.iv397 = phi i64 [ 0, %.preheader ], [ %indvars.iv.next398, %931 ]
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %99) #6
  store float 0.000000e+00, ptr %99, align 4, !tbaa !17
  br i1 %or.cond289.not336, label %._crit_edge, label %846

846:                                              ; preds = %845
  %847 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi4ELi0ElEclIJiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(40) %1, i64 noundef %indvars.iv397, i64 noundef %838, i32 noundef %835, i32 noundef %796)
          to label %848 unwind label %850

848:                                              ; preds = %846
  %849 = load float, ptr %847, align 4, !tbaa !17
  store float %849, ptr %99, align 4, !tbaa !17
  br label %._crit_edge

850:                                              ; preds = %928, %926, %924, %922, %920, %918, %916, %914, %912, %910, %908, %906, %904, %902, %900, %898, %891, %888, %886, %884, %882, %880, %878, %875, %873, %871, %869, %867, %865, %863, %861, %859, %857, %._crit_edge, %846
  %851 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %99) #6
  br label %932

._crit_edge:                                      ; preds = %845, %848
  %.pre-phi426 = phi i32 [ %796, %848 ], [ %.pre425, %845 ]
  %852 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv397, i64 noundef %indvars.iv401, i32 noundef %.0242325, i32 noundef %832, i32 noundef %.pre-phi426)
          to label %853 unwind label %850

853:                                              ; preds = %._crit_edge
  %854 = load float, ptr %852, align 4, !tbaa !17
  %855 = load float, ptr %99, align 4, !tbaa !17
  %856 = fcmp une float %854, %855
  br i1 %856, label %857, label %884

857:                                              ; preds = %853
  %858 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %859 unwind label %850

859:                                              ; preds = %857
  %860 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %858, i32 noundef %823)
          to label %861 unwind label %850

861:                                              ; preds = %859
  %862 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %860, ptr noundef nonnull @.str.61)
          to label %863 unwind label %850

863:                                              ; preds = %861
  %864 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %862, i32 noundef %833)
          to label %865 unwind label %850

865:                                              ; preds = %863
  %866 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %864, ptr noundef nonnull @.str.62)
          to label %867 unwind label %850

867:                                              ; preds = %865
  %868 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %866, i32 noundef %840)
          to label %869 unwind label %850

869:                                              ; preds = %867
  %870 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %868, ptr noundef nonnull @.str.63)
          to label %871 unwind label %850

871:                                              ; preds = %869
  %872 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %870, i32 noundef %.0242325)
          to label %873 unwind label %850

873:                                              ; preds = %871
  %874 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %872, ptr noundef nonnull @.str.64)
          to label %875 unwind label %850

875:                                              ; preds = %873
  %876 = trunc nuw nsw i64 %indvars.iv397 to i32
  %877 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %874, i32 noundef %876)
          to label %878 unwind label %850

878:                                              ; preds = %875
  %879 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %877, ptr noundef nonnull @.str.65)
          to label %880 unwind label %850

880:                                              ; preds = %878
  %881 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %879, i32 noundef %.pre-phi426)
          to label %882 unwind label %850

882:                                              ; preds = %880
  %883 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %881, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %884 unwind label %850

884:                                              ; preds = %882, %853
  %885 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi0ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %2, i64 noundef %indvars.iv397, i64 noundef %indvars.iv401, i32 noundef %.0242325, i32 noundef %832, i32 noundef %.pre-phi426)
          to label %886 unwind label %850

886:                                              ; preds = %884
  %887 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %885, ptr noundef nonnull align 4 dereferenceable(4) %99, i1 noundef zeroext true)
          to label %888 unwind label %850

888:                                              ; preds = %886
  %889 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %890 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %889) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %887, ptr noundef %890, ptr noundef nonnull @.str.28, i32 noundef 786, ptr noundef nonnull @.str.128)
          to label %891 unwind label %850

891:                                              ; preds = %888
  %892 = trunc nuw nsw i64 %indvars.iv397 to i32
  %893 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv414, i64 noundef %829, i32 noundef %.0242325, i32 noundef %841, i32 noundef %892)
          to label %894 unwind label %850

894:                                              ; preds = %891
  %895 = load float, ptr %893, align 4, !tbaa !17
  %896 = load float, ptr %99, align 4, !tbaa !17
  %897 = fcmp une float %895, %896
  br i1 %897, label %898, label %924

898:                                              ; preds = %894
  %899 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.60)
          to label %900 unwind label %850

900:                                              ; preds = %898
  %901 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %899, i32 noundef %824)
          to label %902 unwind label %850

902:                                              ; preds = %900
  %903 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %901, ptr noundef nonnull @.str.61)
          to label %904 unwind label %850

904:                                              ; preds = %902
  %905 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %903, i32 noundef %834)
          to label %906 unwind label %850

906:                                              ; preds = %904
  %907 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %905, ptr noundef nonnull @.str.62)
          to label %908 unwind label %850

908:                                              ; preds = %906
  %909 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %907, i32 noundef %841)
          to label %910 unwind label %850

910:                                              ; preds = %908
  %911 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %909, ptr noundef nonnull @.str.63)
          to label %912 unwind label %850

912:                                              ; preds = %910
  %913 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %911, i32 noundef %.0242325)
          to label %914 unwind label %850

914:                                              ; preds = %912
  %915 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %913, ptr noundef nonnull @.str.64)
          to label %916 unwind label %850

916:                                              ; preds = %914
  %917 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %915, i32 noundef %892)
          to label %918 unwind label %850

918:                                              ; preds = %916
  %919 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %917, ptr noundef nonnull @.str.65)
          to label %920 unwind label %850

920:                                              ; preds = %918
  %921 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %919, i32 noundef %.pre-phi426)
          to label %922 unwind label %850

922:                                              ; preds = %920
  %923 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %921, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %924 unwind label %850

924:                                              ; preds = %922, %894
  %925 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEclIJiiiEEERfllDpT_(ptr noundef nonnull align 8 dereferenceable(48) %14, i64 noundef %indvars.iv414, i64 noundef %829, i32 noundef %.0242325, i32 noundef %841, i32 noundef %892)
          to label %926 unwind label %850

926:                                              ; preds = %924
  %927 = invoke noundef zeroext i1 @_ZN5Eigen13test_is_equalIffEEbRKT_RKT0_b(ptr noundef nonnull align 4 dereferenceable(4) %925, ptr noundef nonnull align 4 dereferenceable(4) %99, i1 noundef zeroext true)
          to label %928 unwind label %850

928:                                              ; preds = %926
  %929 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) @_ZN5EigenL12g_test_stackB5cxx11E) #6
  %930 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %929) #6
  invoke void @_Z11verify_implbPKcS0_iS0_(i1 noundef zeroext %927, ptr noundef %930, ptr noundef nonnull @.str.28, i32 noundef 791, ptr noundef nonnull @.str.129)
          to label %931 unwind label %850

931:                                              ; preds = %928
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %99) #6
  %indvars.iv.next398 = add nuw nsw i64 %indvars.iv397, 1
  %exitcond400.not = icmp eq i64 %indvars.iv.next398, 64
  br i1 %exitcond400.not, label %844, label %845, !llvm.loop !37

932:                                              ; preds = %850, %820, %818, %816, %814, %812, %810, %808, %806, %804, %802, %800, %798, %643, %612, %610, %608, %606, %604, %602, %600, %598, %596, %594, %592, %590, %435, %404, %402, %400, %398, %396, %394, %392, %390, %388, %386, %384, %382, %380, %225, %194, %192, %190, %188, %186
  %.pn = phi { ptr, i32 } [ %226, %225 ], [ %436, %435 ], [ %644, %643 ], [ %851, %850 ], [ %821, %820 ], [ %819, %818 ], [ %817, %816 ], [ %815, %814 ], [ %813, %812 ], [ %811, %810 ], [ %809, %808 ], [ %807, %806 ], [ %805, %804 ], [ %803, %802 ], [ %801, %800 ], [ %799, %798 ], [ %381, %380 ], [ %613, %612 ], [ %611, %610 ], [ %609, %608 ], [ %607, %606 ], [ %605, %604 ], [ %603, %602 ], [ %601, %600 ], [ %599, %598 ], [ %597, %596 ], [ %595, %594 ], [ %593, %592 ], [ %591, %590 ], [ %405, %404 ], [ %403, %402 ], [ %401, %400 ], [ %399, %398 ], [ %397, %396 ], [ %395, %394 ], [ %393, %392 ], [ %391, %390 ], [ %389, %388 ], [ %387, %386 ], [ %385, %384 ], [ %383, %382 ], [ %195, %194 ], [ %193, %192 ], [ %191, %190 ], [ %189, %188 ], [ %187, %186 ]
  call void @_ZN5Eigen6TensorIfLi5ELi1ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %14) #6
  br label %933

933:                                              ; preds = %932, %184
  %.pn.pn = phi { ptr, i32 } [ %.pn, %932 ], [ %185, %184 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %14) #6
  br label %934

934:                                              ; preds = %933, %182, %180, %178, %176, %174
  %.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn, %933 ], [ %183, %182 ], [ %181, %180 ], [ %179, %178 ], [ %177, %176 ], [ %175, %174 ]
  call void @_ZN5Eigen6TensorIfLi5ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %2) #6
  br label %935

935:                                              ; preds = %934, %172
  %.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn.pn, %934 ], [ %173, %172 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %2) #6
  br label %936

936:                                              ; preds = %935, %170
  %.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn.pn.pn, %935 ], [ %171, %170 ]
  call void @_ZN5Eigen6TensorIfLi4ELi0ElED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %1) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %1) #6
  resume { ptr, i32 } %.pn.pn.pn.pn.pn
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5Eigen10TensorBaseINS_18TensorLayoutSwapOpINS_6TensorIfLi4ELi0ElEEEELi0EE21extract_image_patchesEllllllNS_11PaddingTypeEf(ptr dead_on_unwind noalias writable sret(%"class.Eigen::TensorImagePatchOp.47") align 8, ptr noundef nonnull align 1 dereferenceable(1), i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef, i32 noundef, float noundef) local_unnamed_addr #1 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5Eigen6TensorIfLi4ELi0ElE6resizeIJiiiEEEvlDpT_(ptr noundef nonnull align 8 dereferenceable(40), i64 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5Eigen6TensorIfLi5ELi1ElEaSINS_18TensorImagePatchOpILln1ELln1EKNS_18TensorLayoutSwapOpINS0_IfLi4ELi0ElEEEEEEEERS1_RKT_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(120)) local_unnamed_addr #1 align 2

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { 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 #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 = { "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 = { 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 = { 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 #6 = { nounwind }

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"long", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = distinct !{!11, !12}
!12 = !{!"llvm.loop.mustprogress"}
!13 = distinct !{!13, !12}
!14 = distinct !{!14, !12}
!15 = distinct !{!15, !12}
!16 = distinct !{!16, !12}
!17 = !{!18, !18, i64 0}
!18 = !{!"float", !7, i64 0}
!19 = distinct !{!19, !12}
!20 = distinct !{!20, !12}
!21 = distinct !{!21, !12}
!22 = distinct !{!22, !12}
!23 = distinct !{!23, !12}
!24 = distinct !{!24, !12}
!25 = distinct !{!25, !12}
!26 = distinct !{!26, !12}
!27 = distinct !{!27, !12}
!28 = distinct !{!28, !12}
!29 = distinct !{!29, !12}
!30 = distinct !{!30, !12}
!31 = distinct !{!31, !12}
!32 = distinct !{!32, !12}
!33 = distinct !{!33, !12}
!34 = distinct !{!34, !12}
!35 = distinct !{!35, !12}
!36 = distinct !{!36, !12}
!37 = distinct !{!37, !12}


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