; LLVM IR from NVIDIA/DALI :: dali/operators/image/resize (tensor_resize_attr)

; 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.dali::span" = type { ptr, i64 }
%class.anon.82 = type { ptr, ptr, ptr }
%class.anon.83 = type { ptr, ptr, ptr }
%class.anon.84 = type { ptr, ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"struct.std::pair" = type { i32, i32 }
%"class.dali::span.90" = type { ptr, i64 }
%"class.dali::SmallVector.91" = type { %union.anon.94, i64 }
%union.anon.94 = type { %struct.anon.95 }
%struct.anon.95 = type { ptr, i64 }
%"class.dali::span.96" = type { ptr, i64 }
%"class.std::function.34" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%"class.dali::TensorResizeAttr" = type { %"class.dali::AxesHelper", i8, i8, i8, i8, i8, i8, i8, i8, i32, %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::vector.28", %"class.std::function.34", i32, i32, %"class.std::vector.37" }
%"class.dali::AxesHelper" = type { i8, i8, i8, %"class.dali::SmallVector", %"class.dali::TensorLayout" }
%"class.dali::SmallVector" = type { %union.anon.33, i64 }
%union.anon.33 = type { %struct.anon, [8 x i8] }
%struct.anon = type { ptr, i64 }
%"class.dali::TensorLayout" = type { [16 x i8] }
%"class.std::vector.28" = type { %"struct.std::_Vector_base.29" }
%"struct.std::_Vector_base.29" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl" = type { %"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" }
%"struct.std::_Vector_base<float, std::allocator<float>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.37" = type { %"struct.std::_Vector_base.38" }
%"struct.std::_Vector_base.38" = type { %"struct.std::_Vector_base<dali::ResizeParams, std::allocator<dali::ResizeParams>>::_Vector_impl" }
%"struct.std::_Vector_base<dali::ResizeParams, std::allocator<dali::ResizeParams>>::_Vector_impl" = type { %"struct.std::_Vector_base<dali::ResizeParams, std::allocator<dali::ResizeParams>>::_Vector_impl_data" }
%"struct.std::_Vector_base<dali::ResizeParams, std::allocator<dali::ResizeParams>>::_Vector_impl_data" = type { ptr, ptr, ptr }

@.str.2 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [9 x i8], align 1
@_ZTISt13runtime_error = external constant ptr
@.str.25 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [95 x i8], align 1
@__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE = external hidden unnamed_addr constant [141 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [35 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

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

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

declare i32 @__gxx_personality_v0(...)

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

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

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

declare ptr @__cxa_allocate_exception(i64)

declare void @__cxa_throw(ptr, ptr, ptr)

declare void @__cxa_free_exception(ptr)

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(424) %0, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(256) %2, ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull align 1 dereferenceable(16) %4) #2 align 2 personality ptr @__gxx_personality_v0 {
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca ptr, align 8
  %9 = alloca ptr, align 8
  %10 = alloca ptr, align 8
  %11 = alloca ptr, align 8
  %12 = alloca i32, align 4
  %13 = alloca %"class.dali::span", align 8
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca %class.anon.82, align 8
  %17 = alloca %class.anon.83, align 8
  %18 = alloca %class.anon.84, align 8
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::allocator", align 1
  %21 = alloca %"struct.std::pair", align 4
  %22 = alloca %"class.std::__cxx11::basic_string", align 8
  %23 = alloca %"class.std::allocator", align 1
  %24 = alloca %"struct.std::pair", align 4
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca %"class.std::allocator", align 1
  %27 = alloca %"struct.std::pair", align 4
  %28 = alloca %"class.std::__cxx11::basic_string", align 8
  %29 = alloca %"class.std::allocator", align 1
  %30 = alloca %"struct.std::pair", align 4
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::allocator", align 1
  %33 = alloca %"struct.std::pair", align 4
  %34 = alloca ptr, align 8
  %35 = alloca float, align 4
  %36 = alloca %"class.std::__cxx11::basic_string", align 8
  %37 = alloca %"class.std::allocator", align 1
  %38 = alloca i32, align 4
  %39 = alloca i32, align 4
  %40 = alloca %"class.dali::span.90", align 8
  %41 = alloca %"class.dali::span.90", align 8
  %42 = alloca %"class.dali::SmallVector.91", align 8
  %43 = alloca %"class.dali::SmallVector.91", align 8
  %44 = alloca %"class.dali::SmallVector.91", align 8
  %45 = alloca i32, align 4
  %46 = alloca i32, align 4
  %47 = alloca %"class.dali::span.96", align 8
  %48 = alloca i32, align 4
  %49 = alloca i32, align 4
  %50 = alloca i8, align 1
  %51 = alloca %"class.dali::span.96", align 8
  %52 = alloca %"class.dali::span.90", align 8
  %53 = alloca %"class.dali::span.90", align 8
  %54 = alloca %"class.dali::span.90", align 8
  %55 = alloca %"class.dali::span.90", align 8
  %56 = alloca %"class.dali::SmallVector.91", align 8
  %57 = alloca %"class.dali::SmallVector.91", align 8
  %58 = alloca %"class.dali::SmallVector.91", align 8
  %59 = alloca %"class.dali::span.90", align 8
  %60 = alloca %"class.std::function.34", align 8
  store ptr %0, ptr %6, align 8, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !5
  store ptr %2, ptr %8, align 8, !tbaa !5
  store ptr %3, ptr %9, align 8, !tbaa !5
  store ptr %4, ptr %10, align 8, !tbaa !5
  %61 = load ptr, ptr %6, align 8
  %62 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 24
  store i32 0, ptr %62, align 4, !tbaa !9
  %63 = load ptr, ptr %9, align 8, !tbaa !5
  %64 = call noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %63)
  %65 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  store i32 %64, ptr %65, align 8, !tbaa !28
  %66 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %67 = load i32, ptr %66, align 8, !tbaa !28
  %68 = icmp slt i32 %67, 1
  br i1 %68, label %69, label %76

69:                                               ; preds = %5
  %70 = call ptr @__cxa_allocate_exception(i64 16) #8
  invoke void @_ZNSt13runtime_errorC1EPKc(ptr noundef nonnull align 8 dereferenceable(16) %70, ptr noundef @.str.39)
          to label %71 unwind label %72

71:                                               ; preds = %69
  call void @__cxa_throw(ptr %70, ptr @_ZTISt13runtime_error, ptr @_ZNSt13runtime_errorD1Ev) #9
  unreachable

72:                                               ; preds = %69
  %73 = landingpad { ptr, i32 }
          cleanup
  %74 = extractvalue { ptr, i32 } %73, 0
  store ptr %74, ptr %11, align 8
  %75 = extractvalue { ptr, i32 } %73, 1
  store i32 %75, ptr %12, align 4
  call void @__cxa_free_exception(ptr %70) #8
  br label %557

76:                                               ; preds = %5
  %77 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 0
  %78 = load ptr, ptr %10, align 8, !tbaa !5
  %79 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %80 = load i32, ptr %79, align 8, !tbaa !28
  call void @_ZN4dali10AxesHelper11PrepareAxesERKNS_12TensorLayoutEi(ptr noundef nonnull align 8 dereferenceable(56) %77, ptr noundef nonnull align 1 dereferenceable(16) %78, i32 noundef %80)
  call void @llvm.lifetime.start.p0(i64 16, ptr %13) #8
  %81 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 0
  %82 = call { ptr, i64 } @_ZN4dali10AxesHelper4AxesEv(ptr noundef nonnull align 8 dereferenceable(56) %81)
  %83 = getelementptr inbounds { ptr, i64 }, ptr %13, i32 0, i32 0
  %84 = extractvalue { ptr, i64 } %82, 0
  store ptr %84, ptr %83, align 8
  %85 = getelementptr inbounds { ptr, i64 }, ptr %13, i32 0, i32 1
  %86 = extractvalue { ptr, i64 } %82, 1
  store i64 %86, ptr %85, align 8
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #8
  %87 = load ptr, ptr %9, align 8, !tbaa !5
  %88 = call noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11num_samplesEv(ptr noundef nonnull align 8 dereferenceable(28) %87)
  store i32 %88, ptr %14, align 4, !tbaa !29
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #8
  %89 = call noundef i64 @_ZNK4dali4spanIiLln1EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(16) %13) #8
  %90 = trunc i64 %89 to i32
  store i32 %90, ptr %15, align 4, !tbaa !29
  call void @llvm.lifetime.start.p0(i64 24, ptr %16) #8
  %91 = getelementptr inbounds %class.anon.82, ptr %16, i32 0, i32 0
  store ptr %14, ptr %91, align 8, !tbaa !5
  %92 = getelementptr inbounds %class.anon.82, ptr %16, i32 0, i32 1
  store ptr %15, ptr %92, align 8, !tbaa !5
  %93 = getelementptr inbounds %class.anon.82, ptr %16, i32 0, i32 2
  store ptr %13, ptr %93, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 24, ptr %17) #8
  %94 = getelementptr inbounds %class.anon.83, ptr %17, i32 0, i32 0
  store ptr %14, ptr %94, align 8, !tbaa !5
  %95 = getelementptr inbounds %class.anon.83, ptr %17, i32 0, i32 1
  store ptr %61, ptr %95, align 8, !tbaa !30
  %96 = getelementptr inbounds %class.anon.83, ptr %17, i32 0, i32 2
  store ptr %16, ptr %96, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %18) #8
  %97 = getelementptr inbounds %class.anon.84, ptr %18, i32 0, i32 0
  store ptr %14, ptr %97, align 8, !tbaa !5
  %98 = getelementptr inbounds %class.anon.84, ptr %18, i32 0, i32 1
  store ptr %61, ptr %98, align 8, !tbaa !32
  %99 = getelementptr inbounds %class.anon.84, ptr %18, i32 0, i32 2
  %100 = load ptr, ptr %9, align 8, !tbaa !5
  store ptr %100, ptr %99, align 8, !tbaa !5
  %101 = getelementptr inbounds %class.anon.84, ptr %18, i32 0, i32 3
  store ptr %16, ptr %101, align 8, !tbaa !5
  %102 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 6
  %103 = load i8, ptr %102, align 1, !tbaa !34, !range !35, !noundef !36
  %104 = trunc i8 %103 to i1
  br i1 %104, label %105, label %125

105:                                              ; preds = %76
  %106 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 19
  %107 = load ptr, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %19) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr %20) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef @.str.6, ptr noundef nonnull align 1 dereferenceable(1) %20)
          to label %108 unwind label %116

108:                                              ; preds = %105
  %109 = load ptr, ptr %8, align 8, !tbaa !5
  %110 = load i32, ptr %14, align 4, !tbaa !29
  %111 = load i32, ptr %15, align 4, !tbaa !29
  %112 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %106, ptr noundef nonnull align 8 dereferenceable(328) %107, ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef nonnull align 8 dereferenceable(256) %109, i32 noundef %110, i32 noundef %111)
          to label %113 unwind label %120

113:                                              ; preds = %108
  store i64 %112, ptr %21, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %20) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %19) #8
  %114 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 18
  %115 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 19
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %17, ptr noundef nonnull align 8 dereferenceable(24) %114, ptr noundef nonnull align 8 dereferenceable(24) %115, float noundef 0.000000e+00)
  br label %125

116:                                              ; preds = %105
  %117 = landingpad { ptr, i32 }
          cleanup
  %118 = extractvalue { ptr, i32 } %117, 0
  store ptr %118, ptr %11, align 8
  %119 = extractvalue { ptr, i32 } %117, 1
  store i32 %119, ptr %12, align 4
  br label %124

120:                                              ; preds = %108
  %121 = landingpad { ptr, i32 }
          cleanup
  %122 = extractvalue { ptr, i32 } %121, 0
  store ptr %122, ptr %11, align 8
  %123 = extractvalue { ptr, i32 } %121, 1
  store i32 %123, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #8
  br label %124

124:                                              ; preds = %120, %116
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %20) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %19) #8
  br label %556

125:                                              ; preds = %113, %76
  %126 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 1
  %127 = load i8, ptr %126, align 8, !tbaa !37, !range !35, !noundef !36
  %128 = trunc i8 %127 to i1
  %129 = zext i1 %128 to i32
  %130 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 2
  %131 = load i8, ptr %130, align 1, !tbaa !38, !range !35, !noundef !36
  %132 = trunc i8 %131 to i1
  %133 = zext i1 %132 to i32
  %134 = add nsw i32 %129, %133
  %135 = icmp eq i32 %134, 1
  br i1 %135, label %136, label %137

136:                                              ; preds = %125
  br label %139

137:                                              ; preds = %125
  call void @__assert_fail(ptr noundef @.str.40, ptr noundef @.str.41, i32 noundef 174, ptr noundef @__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE) #10
  unreachable

138:                                              ; No predecessors!
  br label %139

139:                                              ; preds = %138, %136
  %140 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 1
  %141 = load i8, ptr %140, align 8, !tbaa !37, !range !35, !noundef !36
  %142 = trunc i8 %141 to i1
  br i1 %142, label %143, label %163

143:                                              ; preds = %139
  %144 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 11
  %145 = load ptr, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %22) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr %23) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %23) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %22, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %23)
          to label %146 unwind label %154

146:                                              ; preds = %143
  %147 = load ptr, ptr %8, align 8, !tbaa !5
  %148 = load i32, ptr %14, align 4, !tbaa !29
  %149 = load i32, ptr %15, align 4, !tbaa !29
  %150 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %144, ptr noundef nonnull align 8 dereferenceable(328) %145, ptr noundef nonnull align 8 dereferenceable(32) %22, ptr noundef nonnull align 8 dereferenceable(256) %147, i32 noundef %148, i32 noundef %149)
          to label %151 unwind label %158

151:                                              ; preds = %146
  store i64 %150, ptr %24, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %23) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %23) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %22) #8
  %152 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 10
  %153 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 11
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_2clERSt6vectorIfSaIfEERKSH_"(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull align 8 dereferenceable(24) %152, ptr noundef nonnull align 8 dereferenceable(24) %153)
  br label %163

154:                                              ; preds = %143
  %155 = landingpad { ptr, i32 }
          cleanup
  %156 = extractvalue { ptr, i32 } %155, 0
  store ptr %156, ptr %11, align 8
  %157 = extractvalue { ptr, i32 } %155, 1
  store i32 %157, ptr %12, align 4
  br label %162

158:                                              ; preds = %146
  %159 = landingpad { ptr, i32 }
          cleanup
  %160 = extractvalue { ptr, i32 } %159, 0
  store ptr %160, ptr %11, align 8
  %161 = extractvalue { ptr, i32 } %159, 1
  store i32 %161, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #8
  br label %162

162:                                              ; preds = %158, %154
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %23) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %23) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %22) #8
  br label %556

163:                                              ; preds = %151, %139
  %164 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 2
  %165 = load i8, ptr %164, align 1, !tbaa !38, !range !35, !noundef !36
  %166 = trunc i8 %165 to i1
  br i1 %166, label %167, label %187

167:                                              ; preds = %163
  %168 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 13
  %169 = load ptr, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %25) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr %26) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef @.str.4, ptr noundef nonnull align 1 dereferenceable(1) %26)
          to label %170 unwind label %178

170:                                              ; preds = %167
  %171 = load ptr, ptr %8, align 8, !tbaa !5
  %172 = load i32, ptr %14, align 4, !tbaa !29
  %173 = load i32, ptr %15, align 4, !tbaa !29
  %174 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %168, ptr noundef nonnull align 8 dereferenceable(328) %169, ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef nonnull align 8 dereferenceable(256) %171, i32 noundef %172, i32 noundef %173)
          to label %175 unwind label %182

175:                                              ; preds = %170
  store i64 %174, ptr %27, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %26) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %25) #8
  %176 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 12
  %177 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 13
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %17, ptr noundef nonnull align 8 dereferenceable(24) %176, ptr noundef nonnull align 8 dereferenceable(24) %177, float noundef 1.000000e+00)
  br label %187

178:                                              ; preds = %167
  %179 = landingpad { ptr, i32 }
          cleanup
  %180 = extractvalue { ptr, i32 } %179, 0
  store ptr %180, ptr %11, align 8
  %181 = extractvalue { ptr, i32 } %179, 1
  store i32 %181, ptr %12, align 4
  br label %186

182:                                              ; preds = %170
  %183 = landingpad { ptr, i32 }
          cleanup
  %184 = extractvalue { ptr, i32 } %183, 0
  store ptr %184, ptr %11, align 8
  %185 = extractvalue { ptr, i32 } %183, 1
  store i32 %185, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #8
  br label %186

186:                                              ; preds = %182, %178
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %26) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %25) #8
  br label %556

187:                                              ; preds = %175, %163
  %188 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 5
  %189 = load i8, ptr %188, align 4, !tbaa !39, !range !35, !noundef !36
  %190 = trunc i8 %189 to i1
  br i1 %190, label %191, label %238

191:                                              ; preds = %187
  %192 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 15
  %193 = load ptr, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %28) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr %29) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef @.str.25, ptr noundef nonnull align 1 dereferenceable(1) %29)
          to label %194 unwind label %216

194:                                              ; preds = %191
  %195 = load ptr, ptr %8, align 8, !tbaa !5
  %196 = load i32, ptr %14, align 4, !tbaa !29
  %197 = load i32, ptr %15, align 4, !tbaa !29
  %198 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %192, ptr noundef nonnull align 8 dereferenceable(328) %193, ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef nonnull align 8 dereferenceable(256) %195, i32 noundef %196, i32 noundef %197)
          to label %199 unwind label %220

199:                                              ; preds = %194
  store i64 %198, ptr %30, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %28) #8
  %200 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 14
  %201 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 15
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %17, ptr noundef nonnull align 8 dereferenceable(24) %200, ptr noundef nonnull align 8 dereferenceable(24) %201, float noundef 0.000000e+00)
  %202 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 17
  %203 = load ptr, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %31) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr %32) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %32) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef @.str.26, ptr noundef nonnull align 1 dereferenceable(1) %32)
          to label %204 unwind label %225

204:                                              ; preds = %199
  %205 = load ptr, ptr %8, align 8, !tbaa !5
  %206 = load i32, ptr %14, align 4, !tbaa !29
  %207 = load i32, ptr %15, align 4, !tbaa !29
  %208 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %202, ptr noundef nonnull align 8 dereferenceable(328) %203, ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef nonnull align 8 dereferenceable(256) %205, i32 noundef %206, i32 noundef %207)
          to label %209 unwind label %229

209:                                              ; preds = %204
  store i64 %208, ptr %33, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %32) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %32) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %31) #8
  %210 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 7
  %211 = load i8, ptr %210, align 2, !tbaa !40, !range !35, !noundef !36
  %212 = trunc i8 %211 to i1
  br i1 %212, label %213, label %234

213:                                              ; preds = %209
  %214 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 16
  %215 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 17
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %17, ptr noundef nonnull align 8 dereferenceable(24) %214, ptr noundef nonnull align 8 dereferenceable(24) %215, float noundef 1.000000e+00)
  br label %237

216:                                              ; preds = %191
  %217 = landingpad { ptr, i32 }
          cleanup
  %218 = extractvalue { ptr, i32 } %217, 0
  store ptr %218, ptr %11, align 8
  %219 = extractvalue { ptr, i32 } %217, 1
  store i32 %219, ptr %12, align 4
  br label %224

220:                                              ; preds = %194
  %221 = landingpad { ptr, i32 }
          cleanup
  %222 = extractvalue { ptr, i32 } %221, 0
  store ptr %222, ptr %11, align 8
  %223 = extractvalue { ptr, i32 } %221, 1
  store i32 %223, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #8
  br label %224

224:                                              ; preds = %220, %216
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %28) #8
  br label %556

225:                                              ; preds = %199
  %226 = landingpad { ptr, i32 }
          cleanup
  %227 = extractvalue { ptr, i32 } %226, 0
  store ptr %227, ptr %11, align 8
  %228 = extractvalue { ptr, i32 } %226, 1
  store i32 %228, ptr %12, align 4
  br label %233

229:                                              ; preds = %204
  %230 = landingpad { ptr, i32 }
          cleanup
  %231 = extractvalue { ptr, i32 } %230, 0
  store ptr %231, ptr %11, align 8
  %232 = extractvalue { ptr, i32 } %230, 1
  store i32 %232, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #8
  br label %233

233:                                              ; preds = %229, %225
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %32) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %32) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %31) #8
  br label %556

234:                                              ; preds = %209
  %235 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 16
  %236 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 17
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_2clERSt6vectorIfSaIfEERKSH_"(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull align 8 dereferenceable(24) %235, ptr noundef nonnull align 8 dereferenceable(24) %236)
  br label %237

237:                                              ; preds = %234, %213
  br label %238

238:                                              ; preds = %237, %187
  call void @llvm.lifetime.start.p0(i64 8, ptr %34) #8
  store ptr null, ptr %34, align 8, !tbaa !5
  %239 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 3
  %240 = load i8, ptr %239, align 2, !tbaa !41, !range !35, !noundef !36
  %241 = trunc i8 %240 to i1
  br i1 %241, label %242, label %290

242:                                              ; preds = %238
  %243 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 20
  %244 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %245 = load i32, ptr %244, align 8, !tbaa !28
  %246 = sext i32 %245 to i64
  call void @llvm.lifetime.start.p0(i64 4, ptr %35) #8
  %247 = call noundef i32 @_ZNSt14numeric_limitsIiE3maxEv() #8
  %248 = sitofp i32 %247 to float
  %249 = call noundef float @_ZSt9nextafterff(float noundef %248, float noundef 0.000000e+00)
  store float %249, ptr %35, align 4, !tbaa !42
  call void @_ZNSt6vectorIfSaIfEE6resizeEmRKf(ptr noundef nonnull align 8 dereferenceable(24) %243, i64 noundef %246, ptr noundef nonnull align 4 dereferenceable(4) %35)
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #8
  %250 = load ptr, ptr %7, align 8, !tbaa !5
  %251 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 21
  call void @llvm.lifetime.start.p0(i64 32, ptr %36) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr %37) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %37) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef @.str.16, ptr noundef nonnull align 1 dereferenceable(1) %37)
          to label %252 unwind label %261

252:                                              ; preds = %242
  %253 = load i32, ptr %15, align 4, !tbaa !29
  %254 = sext i32 %253 to i64
  invoke void @_ZN4dali22GetSingleOrRepeatedArgIfEEvRKNS_6OpSpecERSt6vectorIT_SaIS5_EERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEm(ptr noundef nonnull align 8 dereferenceable(328) %250, ptr noundef nonnull align 8 dereferenceable(24) %251, ptr noundef nonnull align 8 dereferenceable(32) %36, i64 noundef %254)
          to label %255 unwind label %265

255:                                              ; preds = %252
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %37) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %37) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %36) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %38) #8
  store i32 0, ptr %38, align 4, !tbaa !29
  br label %256

256:                                              ; preds = %284, %255
  %257 = load i32, ptr %38, align 4, !tbaa !29
  %258 = load i32, ptr %15, align 4, !tbaa !29
  %259 = icmp slt i32 %257, %258
  br i1 %259, label %270, label %260

260:                                              ; preds = %256
  call void @llvm.lifetime.end.p0(i64 4, ptr %38) #8
  br label %287

261:                                              ; preds = %242
  %262 = landingpad { ptr, i32 }
          cleanup
  %263 = extractvalue { ptr, i32 } %262, 0
  store ptr %263, ptr %11, align 8
  %264 = extractvalue { ptr, i32 } %262, 1
  store i32 %264, ptr %12, align 4
  br label %269

265:                                              ; preds = %252
  %266 = landingpad { ptr, i32 }
          cleanup
  %267 = extractvalue { ptr, i32 } %266, 0
  store ptr %267, ptr %11, align 8
  %268 = extractvalue { ptr, i32 } %266, 1
  store i32 %268, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #8
  br label %269

269:                                              ; preds = %265, %261
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %37) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %37) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %36) #8
  br label %555

270:                                              ; preds = %256
  call void @llvm.lifetime.start.p0(i64 4, ptr %39) #8
  %271 = load i32, ptr %38, align 4, !tbaa !29
  %272 = sext i32 %271 to i64
  %273 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNK4dali4spanIiLln1EEixEl(ptr noundef nonnull align 8 dereferenceable(16) %13, i64 noundef %272)
  %274 = load i32, ptr %273, align 4, !tbaa !29
  store i32 %274, ptr %39, align 4, !tbaa !29
  %275 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 21
  %276 = load i32, ptr %38, align 4, !tbaa !29
  %277 = sext i32 %276 to i64
  %278 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %275, i64 noundef %277) #8
  %279 = load float, ptr %278, align 4, !tbaa !42
  %280 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 20
  %281 = load i32, ptr %39, align 4, !tbaa !29
  %282 = sext i32 %281 to i64
  %283 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %280, i64 noundef %282) #8
  store float %279, ptr %283, align 4, !tbaa !42
  call void @llvm.lifetime.end.p0(i64 4, ptr %39) #8
  br label %284

284:                                              ; preds = %270
  %285 = load i32, ptr %38, align 4, !tbaa !29
  %286 = add nsw i32 %285, 1
  store i32 %286, ptr %38, align 4, !tbaa !29
  br label %256, !llvm.loop !44

287:                                              ; preds = %260
  %288 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 20
  %289 = call noundef ptr @_ZNSt6vectorIfSaIfEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %288) #8
  store ptr %289, ptr %34, align 8, !tbaa !5
  br label %290

290:                                              ; preds = %287, %238
  %291 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 25
  %292 = load i32, ptr %14, align 4, !tbaa !29
  %293 = sext i32 %292 to i64
  call void @_ZNSt6vectorIN4dali12ResizeParamsESaIS1_EE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %291, i64 noundef %293)
  call void @llvm.lifetime.start.p0(i64 16, ptr %40) #8
  %294 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 14
  %295 = call { ptr, i64 } @_ZN4dali10make_cspanISt6vectorIfSaIfEEEEDaRT_(ptr noundef nonnull align 8 dereferenceable(24) %294)
  %296 = getelementptr inbounds { ptr, i64 }, ptr %40, i32 0, i32 0
  %297 = extractvalue { ptr, i64 } %295, 0
  store ptr %297, ptr %296, align 8
  %298 = getelementptr inbounds { ptr, i64 }, ptr %40, i32 0, i32 1
  %299 = extractvalue { ptr, i64 } %295, 1
  store i64 %299, ptr %298, align 8
  call void @llvm.lifetime.start.p0(i64 16, ptr %41) #8
  %300 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 16
  %301 = call { ptr, i64 } @_ZN4dali10make_cspanISt6vectorIfSaIfEEEEDaRT_(ptr noundef nonnull align 8 dereferenceable(24) %300)
  %302 = getelementptr inbounds { ptr, i64 }, ptr %41, i32 0, i32 0
  %303 = extractvalue { ptr, i64 } %301, 0
  store ptr %303, ptr %302, align 8
  %304 = getelementptr inbounds { ptr, i64 }, ptr %41, i32 0, i32 1
  %305 = extractvalue { ptr, i64 } %301, 1
  store i64 %305, ptr %304, align 8
  call void @llvm.lifetime.start.p0(i64 24, ptr %42) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %42)
  call void @llvm.lifetime.start.p0(i64 24, ptr %43) #8
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %43)
          to label %306 unwind label %325

306:                                              ; preds = %290
  call void @llvm.lifetime.start.p0(i64 24, ptr %44) #8
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %44)
          to label %307 unwind label %329

307:                                              ; preds = %306
  %308 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %309 = load i32, ptr %308, align 8, !tbaa !28
  %310 = sext i32 %309 to i64
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %310)
          to label %311 unwind label %333

311:                                              ; preds = %307
  %312 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %313 = load i32, ptr %312, align 8, !tbaa !28
  %314 = sext i32 %313 to i64
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %43, i64 noundef %314)
          to label %315 unwind label %333

315:                                              ; preds = %311
  %316 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %317 = load i32, ptr %316, align 8, !tbaa !28
  %318 = sext i32 %317 to i64
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %44, i64 noundef %318)
          to label %319 unwind label %333

319:                                              ; preds = %315
  call void @llvm.lifetime.start.p0(i64 4, ptr %45) #8
  store i32 0, ptr %45, align 4, !tbaa !29
  br label %320

320:                                              ; preds = %522, %319
  %321 = load i32, ptr %45, align 4, !tbaa !29
  %322 = load i32, ptr %14, align 4, !tbaa !29
  %323 = icmp slt i32 %321, %322
  br i1 %323, label %337, label %324

324:                                              ; preds = %320
  store i32 5, ptr %46, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %45) #8
  br label %551

325:                                              ; preds = %290
  %326 = landingpad { ptr, i32 }
          cleanup
  %327 = extractvalue { ptr, i32 } %326, 0
  store ptr %327, ptr %11, align 8
  %328 = extractvalue { ptr, i32 } %326, 1
  store i32 %328, ptr %12, align 4
  br label %554

329:                                              ; preds = %306
  %330 = landingpad { ptr, i32 }
          cleanup
  %331 = extractvalue { ptr, i32 } %330, 0
  store ptr %331, ptr %11, align 8
  %332 = extractvalue { ptr, i32 } %330, 1
  store i32 %332, ptr %12, align 4
  br label %553

333:                                              ; preds = %315, %311, %307
  %334 = landingpad { ptr, i32 }
          cleanup
  %335 = extractvalue { ptr, i32 } %334, 0
  store ptr %335, ptr %11, align 8
  %336 = extractvalue { ptr, i32 } %334, 1
  store i32 %336, ptr %12, align 4
  br label %552

337:                                              ; preds = %320
  call void @llvm.lifetime.start.p0(i64 16, ptr %47) #8
  %338 = load ptr, ptr %9, align 8, !tbaa !5
  %339 = load i32, ptr %45, align 4, !tbaa !29
  %340 = sext i32 %339 to i64
  %341 = invoke { ptr, i64 } @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE17tensor_shape_spanEl(ptr noundef nonnull align 8 dereferenceable(28) %338, i64 noundef %340)
          to label %342 unwind label %357

342:                                              ; preds = %337
  %343 = getelementptr inbounds { ptr, i64 }, ptr %47, i32 0, i32 0
  %344 = extractvalue { ptr, i64 } %341, 0
  store ptr %344, ptr %343, align 8
  %345 = getelementptr inbounds { ptr, i64 }, ptr %47, i32 0, i32 1
  %346 = extractvalue { ptr, i64 } %341, 1
  store i64 %346, ptr %345, align 8
  %347 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 1
  %348 = load i8, ptr %347, align 8, !tbaa !37, !range !35, !noundef !36
  %349 = trunc i8 %348 to i1
  br i1 %349, label %350, label %384

350:                                              ; preds = %342
  call void @llvm.lifetime.start.p0(i64 4, ptr %48) #8
  store i32 0, ptr %48, align 4, !tbaa !29
  br label %351

351:                                              ; preds = %376, %350
  %352 = load i32, ptr %48, align 4, !tbaa !29
  %353 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %354 = load i32, ptr %353, align 8, !tbaa !28
  %355 = icmp slt i32 %352, %354
  br i1 %355, label %361, label %356

356:                                              ; preds = %351
  store i32 8, ptr %46, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #8
  br label %383

357:                                              ; preds = %337
  %358 = landingpad { ptr, i32 }
          cleanup
  %359 = extractvalue { ptr, i32 } %358, 0
  store ptr %359, ptr %11, align 8
  %360 = extractvalue { ptr, i32 } %358, 1
  store i32 %360, ptr %12, align 4
  br label %550

361:                                              ; preds = %351
  %362 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 10
  %363 = load i32, ptr %45, align 4, !tbaa !29
  %364 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %365 = load i32, ptr %364, align 8, !tbaa !28
  %366 = mul nsw i32 %363, %365
  %367 = load i32, ptr %48, align 4, !tbaa !29
  %368 = add nsw i32 %366, %367
  %369 = sext i32 %368 to i64
  %370 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %362, i64 noundef %369) #8
  %371 = load float, ptr %370, align 4, !tbaa !42
  %372 = load i32, ptr %48, align 4, !tbaa !29
  %373 = sext i32 %372 to i64
  %374 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIfLm3ESaIfEEixEl(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %373)
          to label %375 unwind label %379

375:                                              ; preds = %361
  store float %371, ptr %374, align 4, !tbaa !42
  br label %376

376:                                              ; preds = %375
  %377 = load i32, ptr %48, align 4, !tbaa !29
  %378 = add nsw i32 %377, 1
  store i32 %378, ptr %48, align 4, !tbaa !29
  br label %351, !llvm.loop !46

379:                                              ; preds = %361
  %380 = landingpad { ptr, i32 }
          cleanup
  %381 = extractvalue { ptr, i32 } %380, 0
  store ptr %381, ptr %11, align 8
  %382 = extractvalue { ptr, i32 } %380, 1
  store i32 %382, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #8
  br label %550

383:                                              ; preds = %356
  br label %428

384:                                              ; preds = %342
  %385 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 2
  %386 = load i8, ptr %385, align 1, !tbaa !38, !range !35, !noundef !36
  %387 = trunc i8 %386 to i1
  br i1 %387, label %388, label %389

388:                                              ; preds = %384
  br label %391

389:                                              ; preds = %384
  call void @__assert_fail(ptr noundef @.str.42, ptr noundef @.str.41, i32 noundef 225, ptr noundef @__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE) #10
  unreachable

390:                                              ; No predecessors!
  br label %391

391:                                              ; preds = %390, %388
  call void @llvm.lifetime.start.p0(i64 4, ptr %49) #8
  store i32 0, ptr %49, align 4, !tbaa !29
  br label %392

392:                                              ; preds = %420, %391
  %393 = load i32, ptr %49, align 4, !tbaa !29
  %394 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %395 = load i32, ptr %394, align 8, !tbaa !28
  %396 = icmp slt i32 %393, %395
  br i1 %396, label %398, label %397

397:                                              ; preds = %392
  store i32 11, ptr %46, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %49) #8
  br label %427

398:                                              ; preds = %392
  %399 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 12
  %400 = load i32, ptr %45, align 4, !tbaa !29
  %401 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %402 = load i32, ptr %401, align 8, !tbaa !28
  %403 = mul nsw i32 %400, %402
  %404 = load i32, ptr %49, align 4, !tbaa !29
  %405 = add nsw i32 %403, %404
  %406 = sext i32 %405 to i64
  %407 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %399, i64 noundef %406) #8
  %408 = load float, ptr %407, align 4, !tbaa !42
  %409 = load i32, ptr %49, align 4, !tbaa !29
  %410 = sext i32 %409 to i64
  %411 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNK4dali4spanIKlLln1EEixEl(ptr noundef nonnull align 8 dereferenceable(16) %47, i64 noundef %410)
          to label %412 unwind label %423

412:                                              ; preds = %398
  %413 = load i64, ptr %411, align 8, !tbaa !47
  %414 = sitofp i64 %413 to float
  %415 = fmul float %408, %414
  %416 = load i32, ptr %49, align 4, !tbaa !29
  %417 = sext i32 %416 to i64
  %418 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIfLm3ESaIfEEixEl(ptr noundef nonnull align 8 dereferenceable(24) %42, i64 noundef %417)
          to label %419 unwind label %423

419:                                              ; preds = %412
  store float %415, ptr %418, align 4, !tbaa !42
  br label %420

420:                                              ; preds = %419
  %421 = load i32, ptr %49, align 4, !tbaa !29
  %422 = add nsw i32 %421, 1
  store i32 %422, ptr %49, align 4, !tbaa !29
  br label %392, !llvm.loop !48

423:                                              ; preds = %412, %398
  %424 = landingpad { ptr, i32 }
          cleanup
  %425 = extractvalue { ptr, i32 } %424, 0
  store ptr %425, ptr %11, align 8
  %426 = extractvalue { ptr, i32 } %424, 1
  store i32 %426, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %49) #8
  br label %550

427:                                              ; preds = %397
  br label %428

428:                                              ; preds = %427, %383
  call void @llvm.lifetime.start.p0(i64 1, ptr %50) #8
  call void @llvm.lifetime.start.p0(i64 16, ptr %51) #8
  %429 = load ptr, ptr %9, align 8, !tbaa !5
  %430 = load i32, ptr %45, align 4, !tbaa !29
  %431 = sext i32 %430 to i64
  %432 = invoke { ptr, i64 } @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE17tensor_shape_spanEl(ptr noundef nonnull align 8 dereferenceable(28) %429, i64 noundef %431)
          to label %433 unwind label %475

433:                                              ; preds = %428
  %434 = getelementptr inbounds { ptr, i64 }, ptr %51, i32 0, i32 0
  %435 = extractvalue { ptr, i64 } %432, 0
  store ptr %435, ptr %434, align 8
  %436 = getelementptr inbounds { ptr, i64 }, ptr %51, i32 0, i32 1
  %437 = extractvalue { ptr, i64 } %432, 1
  store i64 %437, ptr %436, align 8
  %438 = invoke noundef i64 @_ZN4dali6volumeINS_4spanIKlLln1EEEEEDTcl6volumeclsr4daliE5beginfp_Eclsr4daliE3endfp_EEERKT_(ptr noundef nonnull align 8 dereferenceable(16) %51)
          to label %439 unwind label %475

439:                                              ; preds = %433
  %440 = icmp eq i64 %438, 0
  call void @llvm.lifetime.end.p0(i64 16, ptr %51) #8
  %441 = zext i1 %440 to i8
  store i8 %441, ptr %50, align 1, !tbaa !49
  %442 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 5
  %443 = load i8, ptr %442, align 4, !tbaa !39, !range !35, !noundef !36
  %444 = trunc i8 %443 to i1
  %445 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 7
  %446 = load i8, ptr %445, align 2, !tbaa !40, !range !35, !noundef !36
  %447 = trunc i8 %446 to i1
  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %52, ptr align 8 %40, i64 16, i1 false), !tbaa.struct !50
  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %53, ptr align 8 %41, i64 16, i1 false), !tbaa.struct !50
  %448 = load ptr, ptr %9, align 8, !tbaa !5
  %449 = load i32, ptr %45, align 4, !tbaa !29
  %450 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %451 = load i32, ptr %450, align 8, !tbaa !28
  %452 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 24
  %453 = load i32, ptr %452, align 4, !tbaa !9
  %454 = getelementptr inbounds { ptr, i64 }, ptr %52, i32 0, i32 0
  %455 = load ptr, ptr %454, align 8
  %456 = getelementptr inbounds { ptr, i64 }, ptr %52, i32 0, i32 1
  %457 = load i64, ptr %456, align 8
  invoke void @_ZN4dali17CalculateInputRoIERNS_11SmallVectorIfLm3ESaIfEEES3_bbNS_4spanIKfLln1EEES6_RKNS_15TensorListShapeILin1EEEiii(ptr noundef nonnull align 8 dereferenceable(24) %43, ptr noundef nonnull align 8 dereferenceable(24) %44, i1 noundef zeroext %444, i1 noundef zeroext %447, ptr %455, i64 %457, ptr noundef byval(%"class.dali::span.90") align 8 %53, ptr noundef nonnull align 8 dereferenceable(32) %448, i32 noundef %449, i32 noundef %451, i32 noundef %453)
          to label %458 unwind label %479

458:                                              ; preds = %439
  call void @llvm.lifetime.start.p0(i64 16, ptr %54) #8
  call void @_ZN4dali4spanIKfLln1EEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %54) #8
  %459 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 6
  %460 = load i8, ptr %459, align 1, !tbaa !34, !range !35, !noundef !36
  %461 = trunc i8 %460 to i1
  br i1 %461, label %462, label %487

462:                                              ; preds = %458
  call void @llvm.lifetime.start.p0(i64 16, ptr %55) #8
  %463 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 19
  %464 = call noundef ptr @_ZNSt6vectorIfSaIfEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %463) #8
  %465 = load i32, ptr %45, align 4, !tbaa !29
  %466 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %467 = load i32, ptr %466, align 8, !tbaa !28
  %468 = mul nsw i32 %465, %467
  %469 = sext i32 %468 to i64
  %470 = getelementptr inbounds float, ptr %464, i64 %469
  %471 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %472 = load i32, ptr %471, align 8, !tbaa !28
  %473 = sext i32 %472 to i64
  invoke void @_ZN4dali4spanIKfLln1EEC2EPS1_l(ptr noundef nonnull align 8 dereferenceable(16) %55, ptr noundef %470, i64 noundef %473)
          to label %474 unwind label %483

474:                                              ; preds = %462
  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %54, ptr align 8 %55, i64 16, i1 false), !tbaa.struct !50
  call void @llvm.lifetime.end.p0(i64 16, ptr %55) #8
  br label %487

475:                                              ; preds = %433, %428
  %476 = landingpad { ptr, i32 }
          cleanup
  %477 = extractvalue { ptr, i32 } %476, 0
  store ptr %477, ptr %11, align 8
  %478 = extractvalue { ptr, i32 } %476, 1
  store i32 %478, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %51) #8
  br label %549

479:                                              ; preds = %439
  %480 = landingpad { ptr, i32 }
          cleanup
  %481 = extractvalue { ptr, i32 } %480, 0
  store ptr %481, ptr %11, align 8
  %482 = extractvalue { ptr, i32 } %480, 1
  store i32 %482, ptr %12, align 4
  br label %549

483:                                              ; preds = %462
  %484 = landingpad { ptr, i32 }
          cleanup
  %485 = extractvalue { ptr, i32 } %484, 0
  store ptr %485, ptr %11, align 8
  %486 = extractvalue { ptr, i32 } %484, 1
  store i32 %486, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %55) #8
  br label %548

487:                                              ; preds = %474, %458
  %488 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 8
  %489 = load i8, ptr %488, align 1, !tbaa !51, !range !35, !noundef !36
  %490 = trunc i8 %489 to i1
  br i1 %490, label %496, label %491

491:                                              ; preds = %487
  %492 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 6
  %493 = load i8, ptr %492, align 1, !tbaa !34, !range !35, !noundef !36
  %494 = trunc i8 %493 to i1
  %495 = xor i1 %494, true
  br label %496

496:                                              ; preds = %491, %487
  %497 = phi i1 [ true, %487 ], [ %495, %491 ]
  br i1 %497, label %498, label %499

498:                                              ; preds = %496
  br label %501

499:                                              ; preds = %496
  call void @__assert_fail(ptr noundef @.str.43, ptr noundef @.str.41, i32 noundef 238, ptr noundef @__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE) #10
  unreachable

500:                                              ; No predecessors!
  br label %501

501:                                              ; preds = %500, %498
  %502 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 25
  %503 = load i32, ptr %45, align 4, !tbaa !29
  %504 = sext i32 %503 to i64
  %505 = call noundef nonnull align 8 dereferenceable(96) ptr @_ZNSt6vectorIN4dali12ResizeParamsESaIS1_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %502, i64 noundef %504) #8
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %56, ptr noundef nonnull align 8 dereferenceable(24) %42)
          to label %506 unwind label %525

506:                                              ; preds = %501
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %57, ptr noundef nonnull align 8 dereferenceable(24) %43)
          to label %507 unwind label %529

507:                                              ; preds = %506
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %58, ptr noundef nonnull align 8 dereferenceable(24) %44)
          to label %508 unwind label %533

508:                                              ; preds = %507
  %509 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 8
  %510 = load i8, ptr %509, align 1, !tbaa !51, !range !35, !noundef !36
  %511 = trunc i8 %510 to i1
  %512 = load i8, ptr %50, align 1, !tbaa !49, !range !35, !noundef !36
  %513 = trunc i8 %512 to i1
  %514 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 23
  %515 = load i32, ptr %514, align 8, !tbaa !28
  %516 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 9
  %517 = load i32, ptr %516, align 8, !tbaa !52
  %518 = load ptr, ptr %34, align 8, !tbaa !5
  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %59, ptr align 8 %54, i64 16, i1 false), !tbaa.struct !50
  %519 = getelementptr inbounds %"class.dali::TensorResizeAttr", ptr %61, i32 0, i32 22
  invoke void @_ZNSt8functionIFifEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %60, ptr noundef nonnull align 8 dereferenceable(32) %519)
          to label %520 unwind label %537

520:                                              ; preds = %508
  invoke void @_ZN4dali21CalculateSampleParamsISt8functionIFifEEEEvRNS_12ResizeParamsENS_11SmallVectorIfLm3ESaIfEEES8_S8_bbiNS_10ResizeModeEPKfNS_4spanISA_Lln1EEET_(ptr noundef nonnull align 8 dereferenceable(96) %505, ptr noundef %56, ptr noundef %57, ptr noundef %58, i1 noundef zeroext %511, i1 noundef zeroext %513, i32 noundef %515, i32 noundef %517, ptr noundef %518, ptr noundef byval(%"class.dali::span.90") align 8 %59, ptr noundef %60)
          to label %521 unwind label %541

521:                                              ; preds = %520
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %58) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %54) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %50) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %47) #8
  br label %522

522:                                              ; preds = %521
  %523 = load i32, ptr %45, align 4, !tbaa !29
  %524 = add nsw i32 %523, 1
  store i32 %524, ptr %45, align 4, !tbaa !29
  br label %320, !llvm.loop !53

525:                                              ; preds = %501
  %526 = landingpad { ptr, i32 }
          cleanup
  %527 = extractvalue { ptr, i32 } %526, 0
  store ptr %527, ptr %11, align 8
  %528 = extractvalue { ptr, i32 } %526, 1
  store i32 %528, ptr %12, align 4
  br label %548

529:                                              ; preds = %506
  %530 = landingpad { ptr, i32 }
          cleanup
  %531 = extractvalue { ptr, i32 } %530, 0
  store ptr %531, ptr %11, align 8
  %532 = extractvalue { ptr, i32 } %530, 1
  store i32 %532, ptr %12, align 4
  br label %547

533:                                              ; preds = %507
  %534 = landingpad { ptr, i32 }
          cleanup
  %535 = extractvalue { ptr, i32 } %534, 0
  store ptr %535, ptr %11, align 8
  %536 = extractvalue { ptr, i32 } %534, 1
  store i32 %536, ptr %12, align 4
  br label %546

537:                                              ; preds = %508
  %538 = landingpad { ptr, i32 }
          cleanup
  %539 = extractvalue { ptr, i32 } %538, 0
  store ptr %539, ptr %11, align 8
  %540 = extractvalue { ptr, i32 } %538, 1
  store i32 %540, ptr %12, align 4
  br label %545

541:                                              ; preds = %520
  %542 = landingpad { ptr, i32 }
          cleanup
  %543 = extractvalue { ptr, i32 } %542, 0
  store ptr %543, ptr %11, align 8
  %544 = extractvalue { ptr, i32 } %542, 1
  store i32 %544, ptr %12, align 4
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #8
  br label %545

545:                                              ; preds = %541, %537
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %58) #8
  br label %546

546:                                              ; preds = %545, %533
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #8
  br label %547

547:                                              ; preds = %546, %529
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #8
  br label %548

548:                                              ; preds = %547, %525, %483
  call void @llvm.lifetime.end.p0(i64 16, ptr %54) #8
  br label %549

549:                                              ; preds = %548, %479, %475
  call void @llvm.lifetime.end.p0(i64 1, ptr %50) #8
  br label %550

550:                                              ; preds = %549, %423, %379, %357
  call void @llvm.lifetime.end.p0(i64 16, ptr %47) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %45) #8
  br label %552

551:                                              ; preds = %324
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %44) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %44) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %43) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %43) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %42) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %42) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %41) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %40) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %16) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %13) #8
  ret void

552:                                              ; preds = %550, %333
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %44) #8
  br label %553

553:                                              ; preds = %552, %329
  call void @llvm.lifetime.end.p0(i64 24, ptr %44) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %43) #8
  br label %554

554:                                              ; preds = %553, %325
  call void @llvm.lifetime.end.p0(i64 24, ptr %43) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %42) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %42) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %41) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %40) #8
  br label %555

555:                                              ; preds = %554, %269
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #8
  br label %556

556:                                              ; preds = %555, %233, %224, %186, %162, %124
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr %16) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr %13) #8
  br label %557

557:                                              ; preds = %556, %72
  %558 = load ptr, ptr %11, align 8
  %559 = load i32, ptr %12, align 4
  %560 = insertvalue { ptr, i32 } poison, ptr %558, 0
  %561 = insertvalue { ptr, i32 } %560, i32 %559, 1
  resume { ptr, i32 } %561
}

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

declare void @_ZNSt13runtime_errorC1EPKc(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef) unnamed_addr #3

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN4dali10AxesHelper11PrepareAxesERKNS_12TensorLayoutEi(ptr noundef nonnull align 8 dereferenceable(56), ptr noundef nonnull align 1 dereferenceable(16), i32 noundef) #5 align 2

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i64 } @_ZN4dali10AxesHelper4AxesEv(ptr noundef nonnull align 8 dereferenceable(56)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11num_samplesEv(ptr noundef nonnull align 8 dereferenceable(28)) #1 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(328), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(256), i32 noundef, i32 noundef) #2

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24), float noundef) #5 align 2

; Function Attrs: noreturn nounwind
declare void @__assert_fail(ptr noundef, ptr noundef, i32 noundef, ptr noundef) #6

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_2clERSt6vectorIfSaIfEERKSH_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #5 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef float @_ZSt9nextafterff(float noundef, float noundef) #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNSt14numeric_limitsIiE3maxEv() #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN4dali22GetSingleOrRepeatedArgIfEEvRKNS_6OpSpecERSt6vectorIT_SaIS5_EERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEm(ptr noundef nonnull align 8 dereferenceable(328), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) #5

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i64 } @_ZN4dali10make_cspanISt6vectorIfSaIfEEEEDaRT_(ptr noundef nonnull align 8 dereferenceable(24)) #2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i64 } @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE17tensor_shape_spanEl(ptr noundef nonnull align 8 dereferenceable(28), i64 noundef) #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIfLm3ESaIfEEixEl(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #5 align 2

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef i64 @_ZN4dali6volumeINS_4spanIKlLln1EEEEEDTcl6volumeclsr4daliE5beginfp_Eclsr4daliE3endfp_EEERKT_(ptr noundef nonnull align 8 dereferenceable(16)) #5

declare void @_ZN4dali17CalculateInputRoIERNS_11SmallVectorIfLm3ESaIfEEES3_bbNS_4spanIKfLln1EEES6_RKNS_15TensorListShapeILin1EEEiii(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24), i1 noundef zeroext, i1 noundef zeroext, ptr, i64, ptr noundef byval(%"class.dali::span.90") align 8, ptr noundef nonnull align 8 dereferenceable(32), i32 noundef, i32 noundef, i32 noundef) #3

; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #7

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali21CalculateSampleParamsISt8functionIFifEEEEvRNS_12ResizeParamsENS_11SmallVectorIfLm3ESaIfEEES8_S8_bbiNS_10ResizeModeEPKfNS_4spanISA_Lln1EEET_(ptr noundef nonnull align 8 dereferenceable(96), ptr noundef, ptr noundef, ptr noundef, i1 noundef zeroext, i1 noundef zeroext, i32 noundef, i32 noundef, ptr noundef, ptr noundef byval(%"class.dali::span.90") align 8, ptr noundef) #2

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

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !23, i64 396}
!10 = !{!"_ZTSN4dali16TensorResizeAttrE", !11, i64 0, !12, i64 56, !12, i64 57, !12, i64 58, !12, i64 59, !12, i64 60, !12, i64 61, !12, i64 62, !12, i64 63, !16, i64 64, !17, i64 72, !17, i64 96, !17, i64 120, !17, i64 144, !17, i64 168, !17, i64 192, !17, i64 216, !17, i64 240, !17, i64 264, !17, i64 288, !17, i64 312, !17, i64 336, !21, i64 360, !23, i64 392, !23, i64 396, !24, i64 400}
!11 = !{!"_ZTSN4dali10AxesHelperE", !12, i64 0, !12, i64 1, !12, i64 2, !13, i64 8, !15, i64 40}
!12 = !{!"bool", !7, i64 0}
!13 = !{!"_ZTSN4dali11SmallVectorIiLm6ESaIiEEE", !7, i64 0, !14, i64 24}
!14 = !{!"long", !7, i64 0}
!15 = !{!"_ZTSN4dali12TensorLayoutE", !7, i64 0}
!16 = !{!"_ZTSN4dali10ResizeModeE", !7, i64 0}
!17 = !{!"_ZTSSt6vectorIfSaIfEE", !18, i64 0}
!18 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !19, i64 0}
!19 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !20, i64 0}
!20 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!21 = !{!"_ZTSSt8functionIFifEE", !22, i64 0, !6, i64 24}
!22 = !{!"_ZTSSt14_Function_base", !7, i64 0, !6, i64 16}
!23 = !{!"int", !7, i64 0}
!24 = !{!"_ZTSSt6vectorIN4dali12ResizeParamsESaIS1_EE", !25, i64 0}
!25 = !{!"_ZTSSt12_Vector_baseIN4dali12ResizeParamsESaIS1_EE", !26, i64 0}
!26 = !{!"_ZTSNSt12_Vector_baseIN4dali12ResizeParamsESaIS1_EE12_Vector_implE", !27, i64 0}
!27 = !{!"_ZTSNSt12_Vector_baseIN4dali12ResizeParamsESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!28 = !{!10, !23, i64 392}
!29 = !{!23, !23, i64 0}
!30 = !{!31, !6, i64 8}
!31 = !{!"_ZTSZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEE3$_1", !6, i64 0, !6, i64 8, !6, i64 16}
!32 = !{!33, !6, i64 8}
!33 = !{!"_ZTSZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEE3$_2", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!34 = !{!10, !12, i64 61}
!35 = !{i8 0, i8 2}
!36 = !{}
!37 = !{!10, !12, i64 56}
!38 = !{!10, !12, i64 57}
!39 = !{!10, !12, i64 60}
!40 = !{!10, !12, i64 62}
!41 = !{!10, !12, i64 58}
!42 = !{!43, !43, i64 0}
!43 = !{!"float", !7, i64 0}
!44 = distinct !{!44, !45}
!45 = !{!"llvm.loop.mustprogress"}
!46 = distinct !{!46, !45}
!47 = !{!14, !14, i64 0}
!48 = distinct !{!48, !45}
!49 = !{!12, !12, i64 0}
!50 = !{i64 0, i64 8, !5, i64 8, i64 8, !47}
!51 = !{!10, !12, i64 63}
!52 = !{!10, !16, i64 64}
!53 = distinct !{!53, !45}


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

%"class.dali::span" = type { ptr, i64 }
%class.anon.82 = type { ptr, ptr, ptr }
%class.anon.83 = type { ptr, ptr, ptr }
%class.anon.84 = type { ptr, ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"class.dali::SmallVector.91" = type { %union.anon.94, i64 }
%union.anon.94 = type { %struct.anon.95 }
%struct.anon.95 = type { ptr, i64 }
%"class.dali::span.96" = type { ptr, i64 }
%"class.dali::span.90" = type { ptr, i64 }
%"class.std::function.34" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }

@.str.2 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [9 x i8], align 1
@_ZTISt13runtime_error = external constant ptr
@.str.25 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [95 x i8], align 1
@__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE = external hidden unnamed_addr constant [141 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [35 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

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

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

declare i32 @__gxx_personality_v0(...)

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

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

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

declare ptr @__cxa_allocate_exception(i64) local_unnamed_addr

declare void @__cxa_throw(ptr, ptr, ptr) local_unnamed_addr

declare void @__cxa_free_exception(ptr) local_unnamed_addr

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE(ptr noundef nonnull align 8 dereferenceable(424) %0, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(256) %2, ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull align 1 dereferenceable(16) %4) local_unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %6 = alloca %"class.dali::span", align 8
  %7 = alloca i32, align 4
  %8 = alloca i32, align 4
  %9 = alloca %class.anon.82, align 8
  %10 = alloca %class.anon.83, align 8
  %11 = alloca %class.anon.84, align 8
  %12 = alloca %"class.std::__cxx11::basic_string", align 8
  %13 = alloca %"class.std::allocator", align 1
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca %"class.std::allocator", align 1
  %16 = alloca %"class.std::__cxx11::basic_string", align 8
  %17 = alloca %"class.std::allocator", align 1
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::allocator", align 1
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca %"class.std::allocator", align 1
  %22 = alloca float, align 4
  %23 = alloca %"class.std::__cxx11::basic_string", align 8
  %24 = alloca %"class.std::allocator", align 1
  %25 = alloca %"class.dali::SmallVector.91", align 8
  %26 = alloca %"class.dali::SmallVector.91", align 8
  %27 = alloca %"class.dali::SmallVector.91", align 8
  %28 = alloca %"class.dali::span.96", align 8
  %29 = alloca %"class.dali::span.96", align 8
  %30 = alloca %"class.dali::span.90", align 8
  %31 = alloca %"class.dali::span.90", align 8
  %32 = alloca %"class.dali::span.90", align 8
  %33 = alloca %"class.dali::SmallVector.91", align 8
  %34 = alloca %"class.dali::SmallVector.91", align 8
  %35 = alloca %"class.dali::SmallVector.91", align 8
  %36 = alloca %"class.dali::span.90", align 8
  %37 = alloca %"class.std::function.34", align 8
  %38 = getelementptr inbounds i8, ptr %0, i64 396
  store i32 0, ptr %38, align 4, !tbaa !5
  %39 = tail call noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32) %3)
  %40 = getelementptr inbounds i8, ptr %0, i64 392
  store i32 %39, ptr %40, align 8, !tbaa !27
  %41 = icmp slt i32 %39, 1
  br i1 %41, label %42, label %47

42:                                               ; preds = %5
  %43 = tail call ptr @__cxa_allocate_exception(i64 16) #8
  invoke void @_ZNSt13runtime_errorC1EPKc(ptr noundef nonnull align 8 dereferenceable(16) %43, ptr noundef nonnull @.str.39)
          to label %44 unwind label %45

44:                                               ; preds = %42
  tail call void @__cxa_throw(ptr nonnull %43, ptr nonnull @_ZTISt13runtime_error, ptr nonnull @_ZNSt13runtime_errorD1Ev) #9
  unreachable

45:                                               ; preds = %42
  %46 = landingpad { ptr, i32 }
          cleanup
  tail call void @__cxa_free_exception(ptr %43) #8
  br label %332

47:                                               ; preds = %5
  tail call void @_ZN4dali10AxesHelper11PrepareAxesERKNS_12TensorLayoutEi(ptr noundef nonnull align 8 dereferenceable(56) %0, ptr noundef nonnull align 1 dereferenceable(16) %4, i32 noundef %39)
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %6) #8
  %48 = tail call { ptr, i64 } @_ZN4dali10AxesHelper4AxesEv(ptr noundef nonnull align 8 dereferenceable(56) %0)
  %49 = extractvalue { ptr, i64 } %48, 0
  store ptr %49, ptr %6, align 8
  %50 = getelementptr inbounds i8, ptr %6, i64 8
  %51 = extractvalue { ptr, i64 } %48, 1
  store i64 %51, ptr %50, align 8
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %7) #8
  %52 = tail call noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11num_samplesEv(ptr noundef nonnull align 8 dereferenceable(28) %3)
  store i32 %52, ptr %7, align 4, !tbaa !28
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %8) #8
  %53 = call noundef i64 @_ZNK4dali4spanIiLln1EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(16) %6) #8
  %54 = trunc i64 %53 to i32
  store i32 %54, ptr %8, align 4, !tbaa !28
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %9) #8
  store ptr %7, ptr %9, align 8, !tbaa !29
  %55 = getelementptr inbounds i8, ptr %9, i64 8
  store ptr %8, ptr %55, align 8, !tbaa !29
  %56 = getelementptr inbounds i8, ptr %9, i64 16
  store ptr %6, ptr %56, align 8, !tbaa !29
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %10) #8
  store ptr %7, ptr %10, align 8, !tbaa !29
  %57 = getelementptr inbounds i8, ptr %10, i64 8
  store ptr %0, ptr %57, align 8, !tbaa !30
  %58 = getelementptr inbounds i8, ptr %10, i64 16
  store ptr %9, ptr %58, align 8, !tbaa !29
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %11) #8
  store ptr %7, ptr %11, align 8, !tbaa !29
  %59 = getelementptr inbounds i8, ptr %11, i64 8
  store ptr %0, ptr %59, align 8, !tbaa !32
  %60 = getelementptr inbounds i8, ptr %11, i64 16
  store ptr %3, ptr %60, align 8, !tbaa !29
  %61 = getelementptr inbounds i8, ptr %11, i64 24
  store ptr %9, ptr %61, align 8, !tbaa !29
  %62 = getelementptr inbounds i8, ptr %0, i64 61
  %63 = load i8, ptr %62, align 1, !tbaa !34, !range !35, !noundef !36
  %64 = trunc nuw i8 %63 to i1
  br i1 %64, label %65, label %78

65:                                               ; preds = %47
  %66 = getelementptr inbounds i8, ptr %0, i64 288
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %12) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %13) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %13) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull @.str.6, ptr noundef nonnull align 1 dereferenceable(1) %13)
          to label %67 unwind label %73

67:                                               ; preds = %65
  %68 = load i32, ptr %7, align 4, !tbaa !28
  %69 = load i32, ptr %8, align 4, !tbaa !28
  %70 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %66, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull align 8 dereferenceable(256) %2, i32 noundef %68, i32 noundef %69)
          to label %71 unwind label %75

71:                                               ; preds = %67
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %13) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %13) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #8
  %72 = getelementptr inbounds i8, ptr %0, i64 264
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(24) %72, ptr noundef nonnull align 8 dereferenceable(24) %66, float noundef 0.000000e+00)
  br label %78

73:                                               ; preds = %65
  %74 = landingpad { ptr, i32 }
          cleanup
  br label %77

75:                                               ; preds = %67
  %76 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #8
  br label %77

77:                                               ; preds = %75, %73
  %.pn = phi { ptr, i32 } [ %76, %75 ], [ %74, %73 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %13) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %13) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #8
  br label %331

78:                                               ; preds = %71, %47
  %79 = getelementptr inbounds i8, ptr %0, i64 56
  %80 = load i8, ptr %79, align 8, !tbaa !37, !range !35, !noundef !36
  %81 = getelementptr inbounds i8, ptr %0, i64 57
  %82 = load i8, ptr %81, align 1, !tbaa !38, !range !35, !noundef !36
  %narrow = add nuw nsw i8 %82, %80
  %83 = icmp eq i8 %narrow, 1
  br i1 %83, label %85, label %84

84:                                               ; preds = %78
  call void @__assert_fail(ptr noundef nonnull @.str.40, ptr noundef nonnull @.str.41, i32 noundef 174, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE) #10
  unreachable

85:                                               ; preds = %78
  %86 = trunc nuw i8 %80 to i1
  br i1 %86, label %87, label %100

87:                                               ; preds = %85
  %88 = getelementptr inbounds i8, ptr %0, i64 96
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %14) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %15) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %15)
          to label %89 unwind label %95

89:                                               ; preds = %87
  %90 = load i32, ptr %7, align 4, !tbaa !28
  %91 = load i32, ptr %8, align 4, !tbaa !28
  %92 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %88, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef nonnull align 8 dereferenceable(256) %2, i32 noundef %90, i32 noundef %91)
          to label %93 unwind label %97

93:                                               ; preds = %89
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %15) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #8
  %94 = getelementptr inbounds i8, ptr %0, i64 72
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_2clERSt6vectorIfSaIfEERKSH_"(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull align 8 dereferenceable(24) %94, ptr noundef nonnull align 8 dereferenceable(24) %88)
  %.pre = load i8, ptr %81, align 1, !tbaa !38, !range !35
  br label %100

95:                                               ; preds = %87
  %96 = landingpad { ptr, i32 }
          cleanup
  br label %99

97:                                               ; preds = %89
  %98 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #8
  br label %99

99:                                               ; preds = %97, %95
  %.pn78 = phi { ptr, i32 } [ %98, %97 ], [ %96, %95 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %15) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #8
  br label %331

100:                                              ; preds = %93, %85
  %101 = phi i8 [ %.pre, %93 ], [ %82, %85 ]
  %102 = trunc nuw i8 %101 to i1
  br i1 %102, label %103, label %116

103:                                              ; preds = %100
  %104 = getelementptr inbounds i8, ptr %0, i64 144
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %16) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %17) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %17) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %16, ptr noundef nonnull @.str.4, ptr noundef nonnull align 1 dereferenceable(1) %17)
          to label %105 unwind label %111

105:                                              ; preds = %103
  %106 = load i32, ptr %7, align 4, !tbaa !28
  %107 = load i32, ptr %8, align 4, !tbaa !28
  %108 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %104, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(32) %16, ptr noundef nonnull align 8 dereferenceable(256) %2, i32 noundef %106, i32 noundef %107)
          to label %109 unwind label %113

109:                                              ; preds = %105
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %17) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %17) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #8
  %110 = getelementptr inbounds i8, ptr %0, i64 120
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(24) %110, ptr noundef nonnull align 8 dereferenceable(24) %104, float noundef 1.000000e+00)
  br label %116

111:                                              ; preds = %103
  %112 = landingpad { ptr, i32 }
          cleanup
  br label %115

113:                                              ; preds = %105
  %114 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #8
  br label %115

115:                                              ; preds = %113, %111
  %.pn80 = phi { ptr, i32 } [ %114, %113 ], [ %112, %111 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %17) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %17) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #8
  br label %331

116:                                              ; preds = %109, %100
  %117 = getelementptr inbounds i8, ptr %0, i64 60
  %118 = load i8, ptr %117, align 4, !tbaa !39, !range !35, !noundef !36
  %119 = trunc nuw i8 %118 to i1
  br i1 %119, label %120, label %150

120:                                              ; preds = %116
  %121 = getelementptr inbounds i8, ptr %0, i64 192
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %18) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %19) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %19) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull @.str.25, ptr noundef nonnull align 1 dereferenceable(1) %19)
          to label %122 unwind label %139

122:                                              ; preds = %120
  %123 = load i32, ptr %7, align 4, !tbaa !28
  %124 = load i32, ptr %8, align 4, !tbaa !28
  %125 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %121, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull align 8 dereferenceable(256) %2, i32 noundef %123, i32 noundef %124)
          to label %126 unwind label %141

126:                                              ; preds = %122
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %19) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %19) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #8
  %127 = getelementptr inbounds i8, ptr %0, i64 168
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(24) %127, ptr noundef nonnull align 8 dereferenceable(24) %121, float noundef 0.000000e+00)
  %128 = getelementptr inbounds i8, ptr %0, i64 240
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %20) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %21) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull @.str.26, ptr noundef nonnull align 1 dereferenceable(1) %21)
          to label %129 unwind label %144

129:                                              ; preds = %126
  %130 = load i32, ptr %7, align 4, !tbaa !28
  %131 = load i32, ptr %8, align 4, !tbaa !28
  %132 = invoke i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24) %128, ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull align 8 dereferenceable(256) %2, i32 noundef %130, i32 noundef %131)
          to label %133 unwind label %146

133:                                              ; preds = %129
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %21) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #8
  %134 = getelementptr inbounds i8, ptr %0, i64 62
  %135 = load i8, ptr %134, align 2, !tbaa !40, !range !35, !noundef !36
  %136 = trunc nuw i8 %135 to i1
  %137 = getelementptr inbounds i8, ptr %0, i64 216
  br i1 %136, label %138, label %149

138:                                              ; preds = %133
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(24) %137, ptr noundef nonnull align 8 dereferenceable(24) %128, float noundef 1.000000e+00)
  br label %150

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

141:                                              ; preds = %122
  %142 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #8
  br label %143

143:                                              ; preds = %141, %139
  %.pn82 = phi { ptr, i32 } [ %142, %141 ], [ %140, %139 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %19) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %19) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #8
  br label %331

144:                                              ; preds = %126
  %145 = landingpad { ptr, i32 }
          cleanup
  br label %148

146:                                              ; preds = %129
  %147 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #8
  br label %148

148:                                              ; preds = %146, %144
  %.pn84 = phi { ptr, i32 } [ %147, %146 ], [ %145, %144 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %21) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #8
  br label %331

149:                                              ; preds = %133
  call void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_2clERSt6vectorIfSaIfEERKSH_"(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull align 8 dereferenceable(24) %137, ptr noundef nonnull align 8 dereferenceable(24) %128)
  br label %150

150:                                              ; preds = %138, %149, %116
  %151 = getelementptr inbounds i8, ptr %0, i64 58
  %152 = load i8, ptr %151, align 2, !tbaa !41, !range !35, !noundef !36
  %153 = trunc nuw i8 %152 to i1
  br i1 %153, label %154, label %183

154:                                              ; preds = %150
  %155 = getelementptr inbounds i8, ptr %0, i64 312
  %156 = load i32, ptr %40, align 8, !tbaa !27
  %157 = sext i32 %156 to i64
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %22) #8
  %158 = call noundef i32 @_ZNSt14numeric_limitsIiE3maxEv() #8
  %159 = sitofp i32 %158 to float
  %160 = call noundef float @_ZSt9nextafterff(float noundef %159, float noundef 0.000000e+00)
  store float %160, ptr %22, align 4, !tbaa !42
  call void @_ZNSt6vectorIfSaIfEE6resizeEmRKf(ptr noundef nonnull align 8 dereferenceable(24) %155, i64 noundef %157, ptr noundef nonnull align 4 dereferenceable(4) %22)
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %22) #8
  %161 = getelementptr inbounds i8, ptr %0, i64 336
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %23) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %24) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull @.str.16, ptr noundef nonnull align 1 dereferenceable(1) %24)
          to label %162 unwind label %169

162:                                              ; preds = %154
  %163 = load i32, ptr %8, align 4, !tbaa !28
  %164 = sext i32 %163 to i64
  invoke void @_ZN4dali22GetSingleOrRepeatedArgIfEEvRKNS_6OpSpecERSt6vectorIT_SaIS5_EERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEm(ptr noundef nonnull align 8 dereferenceable(328) %1, ptr noundef nonnull align 8 dereferenceable(24) %161, ptr noundef nonnull align 8 dereferenceable(32) %23, i64 noundef %164)
          to label %165 unwind label %171

165:                                              ; preds = %162
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %24) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #8
  %166 = load i32, ptr %8, align 4, !tbaa !28
  %167 = icmp sgt i32 %166, 0
  br i1 %167, label %.lr.ph, label %._crit_edge

._crit_edge:                                      ; preds = %.lr.ph, %165
  %168 = call noundef ptr @_ZNSt6vectorIfSaIfEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %155) #8
  br label %183

169:                                              ; preds = %154
  %170 = landingpad { ptr, i32 }
          cleanup
  br label %173

171:                                              ; preds = %162
  %172 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #8
  br label %173

173:                                              ; preds = %171, %169
  %.pn86 = phi { ptr, i32 } [ %172, %171 ], [ %170, %169 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %24) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #8
  br label %331

.lr.ph:                                           ; preds = %165, %.lr.ph
  %indvars.iv = phi i64 [ %indvars.iv.next, %.lr.ph ], [ 0, %165 ]
  %174 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNK4dali4spanIiLln1EEixEl(ptr noundef nonnull align 8 dereferenceable(16) %6, i64 noundef %indvars.iv)
  %175 = load i32, ptr %174, align 4, !tbaa !28
  %176 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %161, i64 noundef %indvars.iv) #8
  %177 = load float, ptr %176, align 4, !tbaa !42
  %178 = sext i32 %175 to i64
  %179 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %155, i64 noundef %178) #8
  store float %177, ptr %179, align 4, !tbaa !42
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %180 = load i32, ptr %8, align 4, !tbaa !28
  %181 = sext i32 %180 to i64
  %182 = icmp slt i64 %indvars.iv.next, %181
  br i1 %182, label %.lr.ph, label %._crit_edge, !llvm.loop !44

183:                                              ; preds = %._crit_edge, %150
  %.069 = phi ptr [ %168, %._crit_edge ], [ null, %150 ]
  %184 = getelementptr inbounds i8, ptr %0, i64 400
  %185 = load i32, ptr %7, align 4, !tbaa !28
  %186 = sext i32 %185 to i64
  call void @_ZNSt6vectorIN4dali12ResizeParamsESaIS1_EE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %184, i64 noundef %186)
  %187 = getelementptr inbounds i8, ptr %0, i64 168
  %188 = call { ptr, i64 } @_ZN4dali10make_cspanISt6vectorIfSaIfEEEEDaRT_(ptr noundef nonnull align 8 dereferenceable(24) %187)
  %189 = extractvalue { ptr, i64 } %188, 0
  %190 = extractvalue { ptr, i64 } %188, 1
  %191 = getelementptr inbounds i8, ptr %0, i64 216
  %192 = call { ptr, i64 } @_ZN4dali10make_cspanISt6vectorIfSaIfEEEEDaRT_(ptr noundef nonnull align 8 dereferenceable(24) %191)
  %193 = extractvalue { ptr, i64 } %192, 0
  %194 = extractvalue { ptr, i64 } %192, 1
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %25) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %26) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %27) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27)
  %195 = load i32, ptr %40, align 8, !tbaa !27
  %196 = sext i32 %195 to i64
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %196)
          to label %197 unwind label %214

197:                                              ; preds = %183
  %198 = load i32, ptr %40, align 8, !tbaa !27
  %199 = sext i32 %198 to i64
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %199)
          to label %200 unwind label %214

200:                                              ; preds = %197
  %201 = load i32, ptr %40, align 8, !tbaa !27
  %202 = sext i32 %201 to i64
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %202)
          to label %.preheader103 unwind label %214

.preheader103:                                    ; preds = %200
  %203 = load i32, ptr %7, align 4, !tbaa !28
  %204 = icmp sgt i32 %203, 0
  br i1 %204, label %.lr.ph111, label %._crit_edge112

.lr.ph111:                                        ; preds = %.preheader103
  %205 = getelementptr inbounds i8, ptr %28, i64 8
  %206 = getelementptr inbounds i8, ptr %0, i64 120
  %207 = getelementptr inbounds i8, ptr %0, i64 72
  %208 = getelementptr inbounds i8, ptr %29, i64 8
  %209 = getelementptr inbounds i8, ptr %0, i64 62
  %.sroa.5.0..sroa_idx = getelementptr inbounds i8, ptr %30, i64 8
  %210 = getelementptr inbounds i8, ptr %0, i64 288
  %211 = getelementptr inbounds i8, ptr %0, i64 63
  %212 = getelementptr inbounds i8, ptr %0, i64 64
  %213 = getelementptr inbounds i8, ptr %0, i64 360
  br label %216

._crit_edge112:                                   ; preds = %311, %.preheader103
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %27) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %25) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %10) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %9) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %8) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %7) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %6) #8
  ret void

214:                                              ; preds = %200, %197, %183
  %215 = landingpad { ptr, i32 }
          cleanup
  br label %330

216:                                              ; preds = %.lr.ph111, %311
  %indvars.iv121 = phi i64 [ 0, %.lr.ph111 ], [ %indvars.iv.next122, %311 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %28) #8
  %217 = invoke { ptr, i64 } @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE17tensor_shape_spanEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv121)
          to label %218 unwind label %226

218:                                              ; preds = %216
  %219 = extractvalue { ptr, i64 } %217, 0
  store ptr %219, ptr %28, align 8
  %220 = extractvalue { ptr, i64 } %217, 1
  store i64 %220, ptr %205, align 8
  %221 = load i8, ptr %79, align 8, !tbaa !37, !range !35, !noundef !36
  %222 = trunc nuw i8 %221 to i1
  br i1 %222, label %.preheader, label %242

.preheader:                                       ; preds = %218
  %223 = load i32, ptr %40, align 8, !tbaa !27
  %224 = icmp sgt i32 %223, 0
  br i1 %224, label %.lr.ph108.preheader, label %.loopexit

.lr.ph108.preheader:                              ; preds = %.preheader
  %225 = trunc nuw nsw i64 %indvars.iv121 to i32
  br label %.lr.ph108

226:                                              ; preds = %216
  %227 = landingpad { ptr, i32 }
          cleanup
  br label %329

.lr.ph108:                                        ; preds = %.lr.ph108.preheader, %236
  %indvars.iv118 = phi i64 [ 0, %.lr.ph108.preheader ], [ %indvars.iv.next119, %236 ]
  %228 = phi i32 [ %223, %.lr.ph108.preheader ], [ %237, %236 ]
  %229 = mul nsw i32 %228, %225
  %230 = trunc nuw nsw i64 %indvars.iv118 to i32
  %231 = add nsw i32 %229, %230
  %232 = sext i32 %231 to i64
  %233 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %207, i64 noundef %232) #8
  %234 = load float, ptr %233, align 4, !tbaa !42
  %235 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIfLm3ESaIfEEixEl(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %indvars.iv118)
          to label %236 unwind label %240

236:                                              ; preds = %.lr.ph108
  store float %234, ptr %235, align 4, !tbaa !42
  %indvars.iv.next119 = add nuw nsw i64 %indvars.iv118, 1
  %237 = load i32, ptr %40, align 8, !tbaa !27
  %238 = sext i32 %237 to i64
  %239 = icmp slt i64 %indvars.iv.next119, %238
  br i1 %239, label %.lr.ph108, label %.loopexit, !llvm.loop !46

240:                                              ; preds = %.lr.ph108
  %241 = landingpad { ptr, i32 }
          cleanup
  br label %329

242:                                              ; preds = %218
  %243 = load i8, ptr %81, align 1, !tbaa !38, !range !35, !noundef !36
  %244 = trunc nuw i8 %243 to i1
  br i1 %244, label %.preheader101, label %248

.preheader101:                                    ; preds = %242
  %245 = load i32, ptr %40, align 8, !tbaa !27
  %246 = icmp sgt i32 %245, 0
  br i1 %246, label %.lr.ph106.preheader, label %.loopexit

.lr.ph106.preheader:                              ; preds = %.preheader101
  %247 = trunc nuw nsw i64 %indvars.iv121 to i32
  br label %.lr.ph106

248:                                              ; preds = %242
  call void @__assert_fail(ptr noundef nonnull @.str.42, ptr noundef nonnull @.str.41, i32 noundef 225, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE) #10
  unreachable

.lr.ph106:                                        ; preds = %.lr.ph106.preheader, %259
  %indvars.iv115 = phi i64 [ 0, %.lr.ph106.preheader ], [ %indvars.iv.next116, %259 ]
  %249 = phi i32 [ %245, %.lr.ph106.preheader ], [ %262, %259 ]
  %250 = mul nsw i32 %249, %247
  %251 = trunc nuw nsw i64 %indvars.iv115 to i32
  %252 = add nsw i32 %250, %251
  %253 = sext i32 %252 to i64
  %254 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNSt6vectorIfSaIfEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %206, i64 noundef %253) #8
  %255 = load float, ptr %254, align 4, !tbaa !42
  %256 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK4dali4spanIKlLln1EEixEl(ptr noundef nonnull align 8 dereferenceable(16) %28, i64 noundef %indvars.iv115)
  %257 = load i64, ptr %256, align 8, !tbaa !47
  %258 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZN4dali11SmallVectorIfLm3ESaIfEEixEl(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %indvars.iv115)
          to label %259 unwind label %265

259:                                              ; preds = %.lr.ph106
  %260 = sitofp i64 %257 to float
  %261 = fmul float %255, %260
  store float %261, ptr %258, align 4, !tbaa !42
  %indvars.iv.next116 = add nuw nsw i64 %indvars.iv115, 1
  %262 = load i32, ptr %40, align 8, !tbaa !27
  %263 = sext i32 %262 to i64
  %264 = icmp slt i64 %indvars.iv.next116, %263
  br i1 %264, label %.lr.ph106, label %.loopexit, !llvm.loop !48

265:                                              ; preds = %.lr.ph106
  %266 = landingpad { ptr, i32 }
          cleanup
  br label %329

.loopexit:                                        ; preds = %259, %236, %.preheader101, %.preheader
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %29) #8
  %267 = invoke { ptr, i64 } @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE17tensor_shape_spanEl(ptr noundef nonnull align 8 dereferenceable(28) %3, i64 noundef %indvars.iv121)
          to label %268 unwind label %291

268:                                              ; preds = %.loopexit
  %269 = extractvalue { ptr, i64 } %267, 0
  store ptr %269, ptr %29, align 8
  %270 = extractvalue { ptr, i64 } %267, 1
  store i64 %270, ptr %208, align 8
  %271 = invoke noundef i64 @_ZN4dali6volumeINS_4spanIKlLln1EEEEEDTcl6volumeclsr4daliE5beginfp_Eclsr4daliE3endfp_EEERKT_(ptr noundef nonnull align 8 dereferenceable(16) %29)
          to label %272 unwind label %291

272:                                              ; preds = %268
  %273 = icmp eq i64 %271, 0
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %29) #8
  %274 = load i8, ptr %117, align 4, !tbaa !39, !range !35, !noundef !36
  %275 = trunc nuw i8 %274 to i1
  %276 = load i8, ptr %209, align 2, !tbaa !40, !range !35, !noundef !36
  %277 = trunc nuw i8 %276 to i1
  store ptr %193, ptr %30, align 8, !tbaa !29
  store i64 %194, ptr %.sroa.5.0..sroa_idx, align 8, !tbaa !47
  %278 = load i32, ptr %40, align 8, !tbaa !27
  %279 = load i32, ptr %38, align 4, !tbaa !5
  %280 = trunc nuw nsw i64 %indvars.iv121 to i32
  invoke void @_ZN4dali17CalculateInputRoIERNS_11SmallVectorIfLm3ESaIfEEES3_bbNS_4spanIKfLln1EEES6_RKNS_15TensorListShapeILin1EEEiii(ptr noundef nonnull align 8 dereferenceable(24) %26, ptr noundef nonnull align 8 dereferenceable(24) %27, i1 noundef zeroext %275, i1 noundef zeroext %277, ptr %189, i64 %190, ptr noundef nonnull byval(%"class.dali::span.90") align 8 %30, ptr noundef nonnull align 8 dereferenceable(32) %3, i32 noundef %280, i32 noundef %278, i32 noundef %279)
          to label %281 unwind label %293

281:                                              ; preds = %272
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #8
  call void @_ZN4dali4spanIKfLln1EEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %31) #8
  %282 = load i8, ptr %62, align 1, !tbaa !34, !range !35, !noundef !36
  %283 = trunc nuw i8 %282 to i1
  br i1 %283, label %284, label %295

284:                                              ; preds = %281
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %32) #8
  %285 = call noundef ptr @_ZNSt6vectorIfSaIfEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %210) #8
  %286 = load i32, ptr %40, align 8, !tbaa !27
  %287 = mul nsw i32 %286, %280
  %288 = sext i32 %287 to i64
  %289 = getelementptr inbounds float, ptr %285, i64 %288
  %290 = sext i32 %286 to i64
  call void @_ZN4dali4spanIKfLln1EEC2EPS1_l(ptr noundef nonnull align 8 dereferenceable(16) %32, ptr noundef %289, i64 noundef %290)
  call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(16) %31, ptr noundef nonnull align 8 dereferenceable(16) %32, i64 16, i1 false), !tbaa.struct !49
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #8
  br label %295

291:                                              ; preds = %268, %.loopexit
  %292 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %29) #8
  br label %329

293:                                              ; preds = %272
  %294 = landingpad { ptr, i32 }
          cleanup
  br label %329

295:                                              ; preds = %284, %281
  %296 = load i8, ptr %211, align 1, !tbaa !50, !range !35, !noundef !36
  %297 = trunc nuw i8 %296 to i1
  br i1 %297, label %.critedge, label %298

298:                                              ; preds = %295
  %299 = load i8, ptr %62, align 1, !tbaa !34, !range !35, !noundef !36
  %300 = trunc nuw i8 %299 to i1
  br i1 %300, label %301, label %.critedge

301:                                              ; preds = %298
  call void @__assert_fail(ptr noundef nonnull @.str.43, ptr noundef nonnull @.str.41, i32 noundef 238, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutE) #10
  unreachable

.critedge:                                        ; preds = %295, %298
  %302 = call noundef nonnull align 8 dereferenceable(96) ptr @_ZNSt6vectorIN4dali12ResizeParamsESaIS1_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %184, i64 noundef %indvars.iv121) #8
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %25)
          to label %303 unwind label %315

303:                                              ; preds = %.critedge
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %34, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %304 unwind label %317

304:                                              ; preds = %303
  invoke void @_ZN4dali11SmallVectorIfLm3ESaIfEEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %35, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %305 unwind label %319

305:                                              ; preds = %304
  %306 = load i8, ptr %211, align 1, !tbaa !50, !range !35, !noundef !36
  %307 = load i32, ptr %40, align 8, !tbaa !27
  %308 = load i32, ptr %212, align 8, !tbaa !51
  call void @llvm.memcpy.p0.p0.i64(ptr noundef nonnull align 8 dereferenceable(16) %36, ptr noundef nonnull align 8 dereferenceable(16) %31, i64 16, i1 false), !tbaa.struct !49
  invoke void @_ZNSt8functionIFifEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef nonnull align 8 dereferenceable(32) %213)
          to label %309 unwind label %321

309:                                              ; preds = %305
  %310 = trunc nuw i8 %306 to i1
  invoke void @_ZN4dali21CalculateSampleParamsISt8functionIFifEEEEvRNS_12ResizeParamsENS_11SmallVectorIfLm3ESaIfEEES8_S8_bbiNS_10ResizeModeEPKfNS_4spanISA_Lln1EEET_(ptr noundef nonnull align 8 dereferenceable(96) %302, ptr noundef nonnull %33, ptr noundef nonnull %34, ptr noundef nonnull %35, i1 noundef zeroext %310, i1 noundef zeroext %273, i32 noundef %307, i32 noundef %308, ptr noundef %.069, ptr noundef nonnull byval(%"class.dali::span.90") align 8 %36, ptr noundef nonnull %37)
          to label %311 unwind label %323

311:                                              ; preds = %309
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %34) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %28) #8
  %indvars.iv.next122 = add nuw nsw i64 %indvars.iv121, 1
  %312 = load i32, ptr %7, align 4, !tbaa !28
  %313 = sext i32 %312 to i64
  %314 = icmp slt i64 %indvars.iv.next122, %313
  br i1 %314, label %216, label %._crit_edge112, !llvm.loop !52

315:                                              ; preds = %.critedge
  %316 = landingpad { ptr, i32 }
          cleanup
  br label %328

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

319:                                              ; preds = %304
  %320 = landingpad { ptr, i32 }
          cleanup
  br label %326

321:                                              ; preds = %305
  %322 = landingpad { ptr, i32 }
          cleanup
  br label %325

323:                                              ; preds = %309
  %324 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt14_Function_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #8
  br label %325

325:                                              ; preds = %323, %321
  %.pn88 = phi { ptr, i32 } [ %324, %323 ], [ %322, %321 ]
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #8
  br label %326

326:                                              ; preds = %325, %319
  %.pn88.pn = phi { ptr, i32 } [ %.pn88, %325 ], [ %320, %319 ]
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %34) #8
  br label %327

327:                                              ; preds = %326, %317
  %.pn88.pn.pn = phi { ptr, i32 } [ %.pn88.pn, %326 ], [ %318, %317 ]
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #8
  br label %328

328:                                              ; preds = %327, %315
  %.pn88.pn.pn.pn = phi { ptr, i32 } [ %.pn88.pn.pn, %327 ], [ %316, %315 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #8
  br label %329

329:                                              ; preds = %291, %293, %328, %265, %240, %226
  %.pn94 = phi { ptr, i32 } [ %241, %240 ], [ %266, %265 ], [ %227, %226 ], [ %.pn88.pn.pn.pn, %328 ], [ %294, %293 ], [ %292, %291 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %28) #8
  br label %330

330:                                              ; preds = %329, %214
  %.pn94.pn = phi { ptr, i32 } [ %.pn94, %329 ], [ %215, %214 ]
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %27) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #8
  call void @_ZN4dali11SmallVectorIfLm3ESaIfEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %25) #8
  br label %331

331:                                              ; preds = %173, %330, %148, %143, %115, %99, %77
  %.pn94.pn.pn.pn = phi { ptr, i32 } [ %.pn84, %148 ], [ %.pn82, %143 ], [ %.pn80, %115 ], [ %.pn78, %99 ], [ %.pn, %77 ], [ %.pn94.pn, %330 ], [ %.pn86, %173 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %10) #8
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %9) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %8) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %7) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %6) #8
  br label %332

332:                                              ; preds = %331, %45
  %.pn99 = phi { ptr, i32 } [ %46, %45 ], [ %.pn94.pn.pn.pn, %331 ]
  resume { ptr, i32 } %.pn99
}

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNK4dali15TensorListShapeILin1EE10sample_dimEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #1 align 2

declare void @_ZNSt13runtime_errorC1EPKc(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef) unnamed_addr #3

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN4dali10AxesHelper11PrepareAxesERKNS_12TensorLayoutEi(ptr noundef nonnull align 8 dereferenceable(56), ptr noundef nonnull align 1 dereferenceable(16), i32 noundef) local_unnamed_addr #5 align 2

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i64 } @_ZN4dali10AxesHelper4AxesEv(ptr noundef nonnull align 8 dereferenceable(56)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE11num_samplesEv(ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #1 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local i64 @_ZN4dali20GetShapeLikeArgumentIffEESt4pairIiiERSt6vectorIT0_SaIS4_EERKNS_6OpSpecERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_17ArgumentWorkspaceEii(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(328), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(256), i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_1clERSt6vectorIfSaIfEERKSH_f"(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24), float noundef) local_unnamed_addr #5 align 2

; Function Attrs: noreturn nounwind
declare void @__assert_fail(ptr noundef, ptr noundef, i32 noundef, ptr noundef) local_unnamed_addr #6

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_ZZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEENK3$_2clERSt6vectorIfSaIfEERKSH_"(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef float @_ZSt9nextafterff(float noundef, float noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNSt14numeric_limitsIiE3maxEv() local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN4dali22GetSingleOrRepeatedArgIfEEvRKNS_6OpSpecERSt6vectorIT_SaIS5_EERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEm(ptr noundef nonnull align 8 dereferenceable(328), ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) local_unnamed_addr #5

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i64 } @_ZN4dali10make_cspanISt6vectorIfSaIfEEEEDaRT_(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i64 } @_ZNK4dali19TensorListShapeBaseINS_15TensorListShapeILin1EEELin1EE17tensor_shape_spanEl(ptr noundef nonnull align 8 dereferenceable(28), i64 noundef) local_unnamed_addr #2 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef i64 @_ZN4dali6volumeINS_4spanIKlLln1EEEEEDTcl6volumeclsr4daliE5beginfp_Eclsr4daliE3endfp_EEERKT_(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #5

declare void @_ZN4dali17CalculateInputRoIERNS_11SmallVectorIfLm3ESaIfEEES3_bbNS_4spanIKfLln1EEES6_RKNS_15TensorListShapeILin1EEEiii(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24), i1 noundef zeroext, i1 noundef zeroext, ptr, i64, ptr noundef byval(%"class.dali::span.90") align 8, ptr noundef nonnull align 8 dereferenceable(32), i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #7

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

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4dali21CalculateSampleParamsISt8functionIFifEEEEvRNS_12ResizeParamsENS_11SmallVectorIfLm3ESaIfEEES8_S8_bbiNS_10ResizeModeEPKfNS_4spanISA_Lln1EEET_(ptr noundef nonnull align 8 dereferenceable(96), ptr noundef, ptr noundef, ptr noundef, i1 noundef zeroext, i1 noundef zeroext, i32 noundef, i32 noundef, ptr noundef, ptr noundef byval(%"class.dali::span.90") align 8, ptr noundef) local_unnamed_addr #2

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

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

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

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

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { 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 #6 = { noreturn nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #7 = { mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite) }
attributes #8 = { nounwind }
attributes #9 = { noreturn }
attributes #10 = { noreturn 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, !22, i64 396}
!6 = !{!"_ZTSN4dali16TensorResizeAttrE", !7, i64 0, !8, i64 56, !8, i64 57, !8, i64 58, !8, i64 59, !8, i64 60, !8, i64 61, !8, i64 62, !8, i64 63, !14, i64 64, !15, i64 72, !15, i64 96, !15, i64 120, !15, i64 144, !15, i64 168, !15, i64 192, !15, i64 216, !15, i64 240, !15, i64 264, !15, i64 288, !15, i64 312, !15, i64 336, !20, i64 360, !22, i64 392, !22, i64 396, !23, i64 400}
!7 = !{!"_ZTSN4dali10AxesHelperE", !8, i64 0, !8, i64 1, !8, i64 2, !11, i64 8, !13, i64 40}
!8 = !{!"bool", !9, i64 0}
!9 = !{!"omnipotent char", !10, i64 0}
!10 = !{!"Simple C++ TBAA"}
!11 = !{!"_ZTSN4dali11SmallVectorIiLm6ESaIiEEE", !9, i64 0, !12, i64 24}
!12 = !{!"long", !9, i64 0}
!13 = !{!"_ZTSN4dali12TensorLayoutE", !9, i64 0}
!14 = !{!"_ZTSN4dali10ResizeModeE", !9, i64 0}
!15 = !{!"_ZTSSt6vectorIfSaIfEE", !16, i64 0}
!16 = !{!"_ZTSSt12_Vector_baseIfSaIfEE", !17, i64 0}
!17 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE12_Vector_implE", !18, i64 0}
!18 = !{!"_ZTSNSt12_Vector_baseIfSaIfEE17_Vector_impl_dataE", !19, i64 0, !19, i64 8, !19, i64 16}
!19 = !{!"any pointer", !9, i64 0}
!20 = !{!"_ZTSSt8functionIFifEE", !21, i64 0, !19, i64 24}
!21 = !{!"_ZTSSt14_Function_base", !9, i64 0, !19, i64 16}
!22 = !{!"int", !9, i64 0}
!23 = !{!"_ZTSSt6vectorIN4dali12ResizeParamsESaIS1_EE", !24, i64 0}
!24 = !{!"_ZTSSt12_Vector_baseIN4dali12ResizeParamsESaIS1_EE", !25, i64 0}
!25 = !{!"_ZTSNSt12_Vector_baseIN4dali12ResizeParamsESaIS1_EE12_Vector_implE", !26, i64 0}
!26 = !{!"_ZTSNSt12_Vector_baseIN4dali12ResizeParamsESaIS1_EE17_Vector_impl_dataE", !19, i64 0, !19, i64 8, !19, i64 16}
!27 = !{!6, !22, i64 392}
!28 = !{!22, !22, i64 0}
!29 = !{!19, !19, i64 0}
!30 = !{!31, !19, i64 8}
!31 = !{!"_ZTSZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEE3$_1", !19, i64 0, !19, i64 8, !19, i64 16}
!32 = !{!33, !19, i64 8}
!33 = !{!"_ZTSZN4dali16TensorResizeAttr19PrepareResizeParamsERKNS_6OpSpecERKNS_17ArgumentWorkspaceERKNS_15TensorListShapeILin1EEERKNS_12TensorLayoutEE3$_2", !19, i64 0, !19, i64 8, !19, i64 16, !19, i64 24}
!34 = !{!6, !8, i64 61}
!35 = !{i8 0, i8 2}
!36 = !{}
!37 = !{!6, !8, i64 56}
!38 = !{!6, !8, i64 57}
!39 = !{!6, !8, i64 60}
!40 = !{!6, !8, i64 62}
!41 = !{!6, !8, i64 58}
!42 = !{!43, !43, i64 0}
!43 = !{!"float", !9, i64 0}
!44 = distinct !{!44, !45}
!45 = !{!"llvm.loop.mustprogress"}
!46 = distinct !{!46, !45}
!47 = !{!12, !12, i64 0}
!48 = distinct !{!48, !45}
!49 = !{i64 0, i64 8, !29, i64 8, i64 8, !47}
!50 = !{!6, !8, i64 63}
!51 = !{!6, !14, i64 64}
!52 = distinct !{!52, !45}


; Effective O3 passes: EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LICMPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass